textfileBB Input Validation Holes in BBCode Permit Cross-Site Scripting Attacks
SecurityTracker Alert ID: 1016013|
SecurityTracker URL: http://securitytracker.com/id/1016013
(Links to External Site)
Updated: Aug 15 2009|
Original Entry Date: May 1 2006
Disclosure of authentication information, Disclosure of user information, Execution of arbitrary code via network, Modification of user information|
Exploit Included: Yes |
Version(s): 1.0.16; possibly other versions|
A vulnerability was reported in textfileBB. A remote user can conduct cross-site scripting attacks.|
Several scripts do not properly filter HTML code from user-supplied input in BBCode tags before displaying the input. A remote user can submit specially crafted BBCode that, when viewed by a target user, will cause arbitrary scripting code to be executed by the target user's browser. The code will originate from the site running the textfileBB 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.
The '[color]', '[size]', and '[url]' tags are affected.
r0xes.ratm at gmail.com reported this vulnerability.
A remote user can access the target user's cookies (including authentication cookies), if any, associated with the site running the textfileBB 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.|
No solution was available at the time of this entry.|
Vendor URL: tfbb.jcink.com/ (Links to External Site)
Input validation error|
|Underlying OS: Linux (Any), UNIX (Any), Windows (Any)|
Source Message Contents
Subject: TextFileBB 1.0.16 Multiple XSS|
TextFileBB is a flat-file based bulletin board system written in PHP.
There are 3 different XSS vulnerabilities in this software at the moment, which I found about half an hour ago =D
Anyway, the XSS lies in these tags:
Firstly, we'll explain [color].
[code][.color=#00'">0FFF] """xss [/color][/code]
Would give us:
[code]<font >0fff="" color="#000000"> """xss </font>[/code]
Therefore we can see that we actually are breaking the tag and that our last part (0FFF) is stripped (funnily enough I found this
So, we need to do:
As this would give us:
[code]<font onmouseover="alert(/xss/)" x="" color="#000000">h0n0</font>[/code]
We use the #00F to start the color (so that it IS parsed [attempted to be] by the parser), and break out of that with our quote -
it'll be replaced with a space. The color will be left as #000000. I added the x="" attribute because I noticed it wouldn't render
in IE for some wierd reason.
This is basically the same as [color], but tad different.
[code][.size=7" OnMouseOver="alert(/xss/)]Clicky Here [/size][/code]
We break out of the size with the first quote, and then use our MouseOver - we do not close the MouseOver ourselves because the parser
will enclose everything in "".
Turns into: (something like)
[code]<font size="7" onMouseOver="alert(/xss/)">Clicky Here</font>[/code]
I don't think the parser cares whether or not you include the http://, but I added it just as an example.
Same as with [size], we break out of the href and then do not add a " to the end because the parser will do it for us.
TextFileBB stores user information in cookies, so you could steal the administrator's cookies and take over the board.
Credits: me =D
Shouts: digi7al64 - PrOtOn - Lockdown - WhiteAcid
Video @ http://dynxss.whiteacid.org/videos/TextFileBB_1.0.16-final.rar]http://dynxss.whiteacid.org/videos/TextFil....0.16-final.rar