Mozilla Foundation Security Advisory 2010-25

Re-use of freed object due to scope confusion

April 1, 2010
Nils (MWR InfoSecurity)
Firefox, SeaMonkey, Thunderbird
Fixed in
  • Firefox 3.5.10
  • Firefox 3.6.3
  • SeaMonkey 2.0.5
  • Thunderbird 3.0.5


A memory corruption flaw leading to code execution was reported by security researcher Nils of MWR InfoSecurity during the 2010 Pwn2Own contest sponsored by TippingPoint's Zero Day Initiative. By moving DOM nodes between documents Nils found a case where the moved node incorrectly retained its old scope. If garbage collection could be triggered at the right time then Firefox would later use this freed object.

The contest winning exploit only affects Firefox 3.6 and not earlier versions.

Updated (June 22, 2010): Firefox 3.5, SeaMonkey 2.0, and Thunderbird 3.0 based on earlier versions of the browser engine were patched just in case there is an alternate way of triggering the underlying flaw.