lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date: 29 Apr 2010 15:20:50 -0000
From: advisories@...ern0t.net
To: bugtraq@...urityfocus.com
Subject: vBulletin - Insecure Custom BBCode Tags

vBulletin - Insecure Custom BBCode Tags


Versions Affected: 3.8.4 PL2 (Most likely all versions)

Info:
Content publishing, search, security, and more—vBulletin has it all. Whether
it’s available features, support, or ease-of-use, vBulletin offers the most for
your money. Learn more about what makes vBulletin the choice for people
who are serious about creating thriving online communities.

External Links:
http://www.vbulletin.com/



-:: The Advisory ::-

A vulnerability exists within vBulletin which makes an attacker able to inject
code such as HTML or Javascript via custom BBCode Tags IF they follow certain
conditions which are described below.

Requirements:
- User-input must be located inside a variable in a HTML-tag.
- Apostrophes or nothing must be used for encapsulation.


Insecure Implementations:

- Example 1 (src is insecure)
<img src='{param}' style='border-width:5px;border-color:red;border-style:outset;' />

- Example 2 (href is insecure)
<a href={option} style=border-width:5px;border-color:red;border-style:outset;>{param}</a>


Exploitation of Above Implementations:

- Example 1 (PoC)
[BadTag]x:x' onerror=alert(0) foo='[/BadTag]

- Example 2 (PoC)
[BadTag2=fail onmouseover=alert(0)]Link[/BadTag2]



-:: Solution ::-

Sanitize BBCode with htmlentities($var, ENT_QUOTES); or htmlspecialchars($var); in the PHP files.
(Jelsoft should fix this, however I may provide a patch if they don't.)

Alternatively don't use BBCode with apostrophes where user-input is inside a variable.

Examples of "Secure Implementation":
<img src="{param}" style='border-width:5px;border-color:red;border-style:outset;' />
[ + ] Note that src's value is encapsulated with quotes.

<a href="{option}" style=border-width:5px;border-color:red;border-style:outset; />{param}</a>
[ + ] Note that href's value is encapsulated with quotes.


Disclosure Information:
- Vulnerability found the 29th April 2010
- Vendor and Buqtraq (SecurityFocus) was contacted the 29th April
- Disclosed on InterN0T the 29th April

Reference:
http://forum.intern0t.net/intern0t-advisories/2528-vbulletin-3-8-4-pl2-insecure-custom-bbcode.html


All of the best,
MaXe 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ