Ethical Hacking

Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package.
Computer Forensics Training at InfoSec Institute

Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors.




Network Security Bugtraq
[Top] [All Lists]

[waraxe-2007-SA#059] - XSS in WordPress 2.3

Subject: [waraxe-2007-SA#059] - XSS in WordPress 2.3
Date: 27 Oct 2007 19:18:51 -0000

[waraxe-2007-SA#059] - XSS in WordPress 2.3
====================================================================

Author: Janek Vind "waraxe"
Date: 27. October 2007
Location: Estonia, Tartu
Web: http://www.waraxe.us/advisory-59.html


Target software description:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

WordPress is a state-of-the-art semantic personal publishing platform
with a focus on aesthetics, web standards, and usability.

To run WordPress your host just needs a couple of things:

PHP version 4.2 or greater 
MySQL version 4.0 or greater 

Vulnerabilities: Cross-Site Scripting (XSS) in "edit-post-rows.php"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Let's have a look inside "/wp-admin/edit-post-rows.php":

------------>[source code]<------------
<?php foreach($posts_columns as $column_display_name) { ?>
        <th scope="col"><?php echo $column_display_name; ?></th>
<?php } ?>
------------>[/source code]<-----------

As we can see, array "posts_columns" is uninitialized and if we execute
this php script directly, then arbitrary value for that variable can be
delivered. This means, that reflective XSS exists here. And of course,
"register_globals" must be "on" for this exploit to be successful.
 
Proof of concept:

http://victim.com/wp-admin/edit-post-rows.php?posts_columns[]=<script>alert(123);</script>


//-----> See ya soon and have a nice day ;) <-----//

How to fix:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Get latest WordPress version 2.3.1:

http://wordpress.org/latest.zip

... and update ASAP :)


Greetings:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Greets to ToXiC, LINUX, y3dips, Sm0ke, Heintz, slimjim100, Chb
and anyone else who know me!
Greetings to Raido Kerna.
Tervitusi Torufoorumi rahvale!

Contact:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

come2waraxe@yahoo.com
Janek Vind "waraxe"

Homepage: http://www.waraxe.us/


Shameless advertise:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

SHA Hash Calculator - http://sha1-hash-online.waraxe.us/
Biography Database - http://www.biosaxe.com/

---------------------------------- [ EOF ] ----------------------------

<Prev in Thread] Current Thread [Next in Thread>
  • [waraxe-2007-SA#059] - XSS in WordPress 2.3, come2waraxe <=