Mozilla Foundation Security Advisory 2006-10

JavaScript garbage-collection hazard audit

Announced
April 13, 2006
Reporter
Igor Bukanov
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

Igor Bukanov has audited the JavaScript engine for routines that use temporary variables not protected against garbage-collection. If malicious content could cause garbage-collection to run during the lifetime of these temporaries then the original routine would end up operating on freed memory.

The risk appears remote, but this type of memory corruption could potentially be used by an attacker to run arbitrary code including the installation of malware.

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.

Update (29 July 2006)
Added reference to bug 313500 which was part of this audit.

Workaround

Upgrade to the fixed versions. Do not enable JavaScript in Thunderbird or Mozilla Suite mail.

References