Mozilla Foundation Security Advisory 2008-50

Crash and remote code execution via __proto__ tampering

Announced
November 12, 2008
Reporter
Jesse Ruderman
Impact
Critical
Products
Firefox, SeaMonkey, Thunderbird
Fixed in
  • Firefox 2.0.0.18
  • Firefox 3.0.2
  • SeaMonkey 1.1.13
  • Thunderbird 2.0.0.18

Description

Mozilla developer Jesse Ruderman demonstrated that by tampering with the window.__proto__.__proto__ object, one can cause the browser to place a lock on a non-native object, leading to a crash. Although we have not demonstrated such control, a determined attacker might be able to exploit this crash to run arbitrary code on a victim's computer.

Thunderbird shares the browser 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 a version containing these fixes can be installed.

References