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.