Mozilla Foundation Security Advisory 2006-16
Accessing XBL compilation scope via valueOf.call()
- Announced
- April 13, 2006
- Reporter
- moz_bug_r_a4
- Impact
- Critical
- Products
- Firefox, Mozilla Suite, SeaMonkey, Thunderbird
- Fixed in
-
- Firefox 1.0.8
- Firefox 1.5
- Mozilla Suite 1.7.13
- SeaMonkey 1
- Thunderbird 1.0.8
- Thunderbird 1.5
Description
moz_bug_r_a4 discovered that the compilation scope of privileged built-in XBL bindings was not fully protected from web content and could be accessed by calling valueOf.call() and valueOf.apply() on a method of that binding. This could then be used to compile and run attacker-supplied JavaScript, giving it the privileges of the binding which would allow an attacker to install malware such as viruses and password sniffers.
shutdown reported an alternate way to get to XBL compilation scope by inserting an XBL method into the DOM's document.body prototype chain.
Thunderbird shares the JavaScript engine with Firefox and could be vulnerable if JavaScript were to be enabled in mail. This is not the default setting and we strongly discourage users from running JavaScript in mail.
Workaround
Disable JavaScript until you can upgrade to a fixed version.
References
Exploit code and details embargoed during the active update period.