思科的Talos威脅情報(bào)和研究小組發(fā)布了有關(guān)Firefox中最近已解決的漏洞的信息,該漏洞可被利用來(lái)執(zhí)行代碼。
該漏洞的跟蹤記錄為CVE-2020-12405,CVSS評(píng)分為8.8,是本月早些時(shí)候發(fā)布的Firefox 77修復(fù)的五個(gè)高嚴(yán)重度漏洞之一。基于Firefox ESR 68.9的Tor瀏覽器9.5也修復(fù)了該缺陷。
由Cisco Talos的Marcin'Icewall'Noga識(shí)別,該漏洞在SharedWorkerService中是一個(gè)先用后用,并且當(dāng)用戶(hù)導(dǎo)航到惡意頁(yè)面時(shí)可以觸發(fā)此漏洞。
“在瀏覽惡意頁(yè)面時(shí),我們的SharedWorkerService中的競(jìng)爭(zhēng)狀況可能會(huì)發(fā)生,并可能導(dǎo)致可利用的崩潰,” Mozilla在上周的一份咨詢(xún)中解釋道。
思科Talos周三發(fā)布了有關(guān)安全漏洞的技術(shù)細(xì)節(jié),解釋說(shuō)成功利用漏洞可能導(dǎo)致遠(yuǎn)程執(zhí)行代碼。
該問(wèn)題已在Firefox 76.0a1 x64中找到,并且位于“ SharedWorker組件和與其內(nèi)部相關(guān)的對(duì)象”中。
思科安全研究人員解釋說(shuō),對(duì)于一個(gè)SharedWorkerService對(duì)象,在一個(gè)線(xiàn)程內(nèi)進(jìn)行分配,并且由于處理另一個(gè)線(xiàn)程內(nèi)的下一個(gè)事件而發(fā)生重新分配。
但是,他們還發(fā)現(xiàn),同時(shí),線(xiàn)程的執(zhí)行繼續(xù)進(jìn)行,因此導(dǎo)致了SharedWorkerService對(duì)象的釋放后使用。
此漏洞的根本原因是GetOrCreateWorkerManager方法中缺少互斥對(duì)象。因此,相同的SharedWorkerService對(duì)象既作為參數(shù)傳遞給GetOrCreateWorkerManagerRunnable方法,又通過(guò)〜SharedWorkerManagerHolder()析構(gòu)函數(shù)銷(xiāo)毀。
思科的安全研究人員解釋說(shuō):“適當(dāng)?shù)亩颜砜梢允构粽咄耆刂拼藷o(wú)用后使用漏洞,從而可以將其轉(zhuǎn)變?yōu)槿我獯a執(zhí)行!
要利用此漏洞,攻擊者需要設(shè)置一個(gè)HTML網(wǎng)頁(yè),該網(wǎng)頁(yè)的設(shè)計(jì)方式將導(dǎo)致競(jìng)態(tài)條件,從而導(dǎo)致“售后使用”缺陷,然后導(dǎo)致遠(yuǎn)程執(zhí)行代碼。