Cisco’s Talos threat intelligence and research group has released information on a recently addressed vulnerability in Firefox that could be exploited
Cisco’s Talos threat intelligence and research group has released information on a recently addressed vulnerability in Firefox that could be exploited for code execution.
Tracked as CVE-2020-12405 and featuring a CVSS score of 8.8, the issue was one of five high-severity bugs that were patched earlier this month with the release of Firefox 77. Tor Browser 9.5, which is based on Firefox ESR 68.9, fixes the flaw as well.
Identified by Marcin ‘Icewall’ Noga of Cisco Talos, the vulnerability is a use-after-free in SharedWorkerService and it can be triggered when the user navigates to a malicious page.
“When browsing a malicious page, a race condition in our SharedWorkerService could occur and lead to a potentially exploitable crash,” Mozilla explained in an advisory last week.
Cisco Talos on Wednesday published technical details on the security flaw, explaining that successful exploitation could lead to remote code execution.
The issue was identified in Firefox 76.0a1 x64 and resides in “the SharedWorker component and objects internally related with it.”
For a SharedWorkerService object, an allocation is made inside a thread, and a deallocation occurs as a result of handling the next event inside another thread, Cisco’s security researchers explain.
However, they also discovered that, simultaneously, execution of the thread continues, thus leading to a use-after-free of the SharedWorkerService object.
The root cause of this vulnerability is the lack of a Mutex object in the GetOrCreateWorkerManager method. Thus, the same SharedWorkerService object is both passed as an argument to the GetOrCreateWorkerManagerRunnable method, and destroyed via the ~SharedWorkerManagerHolder() destructor.
“Proper heap grooming can give an attacker full control of this use-after-free vulnerability and as a result could allow it to be turned into arbitrary code execution,” Cisco’s security researchers explain.
To exploit the vulnerability, an attacker needs to set up an HTML web page that was designed in such a manner that it would cause a race condition, thus leading to the use-after-free flaw and then remote code execution.