CVE-2019-13720:Chrome 0-day 漏洞利用

2021-02-25 嘶吼專業版

Kaspersky研究人員近日發現一個Google Chrome瀏覽器的新的未知漏洞利用。經Google研究人員確認,是一個0 day漏洞,CVE編號為CVE-2019-13720。

研究人員將相關攻擊活動命名為Operation WizardOpium。目前還無法將該攻擊活動與已知的攻擊者聯繫在一起。但研究人員發現部分代碼與Lazarus攻擊中的代碼很相似。從被攻擊的站點來看,與早期DarkHotel攻擊活動類似。

技術細節

攻擊活動使用了一種對韓語新聞門戶的水坑形式的注入。攻擊者會把惡意JS代碼插入到主頁中,惡意JS代碼會從遠程站點加載一個分析腳本。

 重定向到漏洞利用加載頁面

一個主頁index頁面會從hxxp://code.jquery.cdn.behindcorona[.]com/處加載一個標記為JS tag的遠程腳本。

該腳本會加載一個名為.charlie.XXXXXXXX.js的腳本。JS代碼會通過比較瀏覽器的用戶代理來檢查受害者的系統是否感染,用戶代理會在64位的Windows版本上運行,而非WOW64進程,並嘗試獲取瀏覽器的用戶名和版本。

該漏洞會嘗試利用Google Chrome瀏覽器的bug,腳本會檢查瀏覽器版本是否大於65(當前Chrome版本為78):

profiling 腳本(.charlie.XXXXXXXX.js)中的chrome版本檢查

在瀏覽器版本檢查後,腳本會執行一些到攻擊者控制的伺服器(behindcorona[.]com)的AJAX請求,伺服器中的路徑名會指向傳遞給腳本(xxxxxxx.php)的參數。第一個請求對於獲取一些重要信息是非常必要的。這些信息包括一些十六進位編碼的字符串來告訴腳本那些真實漏洞利用代碼塊會從伺服器下載,一些到圖像文件的URL,圖像文件嵌入了到final payload的key和解密漏洞利用代碼的部分塊。

漏洞利用鏈–到xxxxxxx.php的AJAX請求

下載了所有塊後,RC4腳本會解密和連接所有的塊,這樣攻擊者就有了含有所有瀏覽器漏洞利用的新的JS代碼。為了解密這些部分,需要使用之前提取的RC4 key。

版本檢查

瀏覽器漏洞利用腳本是經過混淆的,在反混淆後,研究人員發現了針對用戶代理字符串的另一個檢查,這次檢查的瀏覽器版本是76或77。也就是說漏洞利用開發者只在這些版本上工作,或其他漏洞利用已經用於之前的Chrome版本中了。

混淆的漏洞利用代碼

在瀏覽器內置的BigInt 類中,有一些函數運行的函數。BigInt 類的作用是在JS代碼中進行64位的算術運算。漏洞利用開發者通過與32位數來進行實現這些函數。BigInt 類的作用在瀏覽器代碼中實現的速度更快。漏洞利用開發者並不都使用64位,而是在小範圍的數上進行運算。

對64位數字進行處理的代碼段

在真實代碼中有很多的函數和變量並沒有使用。也就是說這些代碼應該是用來調試的,或還沒有用於生產中。

代碼的大部分使用了一些有特定瀏覽器組件相關的類。因為該漏洞還沒有被修復,本文為未介紹該有漏洞的組件的細節。

該漏洞利用使用了2個線程之間的一個競爭條件漏洞,漏洞的原因是由於錯失了適當的同步。漏洞給了攻擊者一個UAF條件,因為UAF會導致漏洞執行的場景。

漏洞利用首先會嘗試觸發UAF來執行關於重要64位地址的信息洩露。這會引發:

1、如果地址成功洩露,就說明漏洞利用正常工作。

2、洩露的地址會用來了解堆或棧的地址,用來處理ASLR技術。

3、提供過搜索附近地址來尋找其他漏洞利用的有用指針。

然後會嘗試用遞歸函數來創建一個大對象的部分。這是通過一些確定性的堆布局來實現的,這對成功的漏洞利用來說是非常重要的。同時會嘗試使用堆噴射技術來使用之前UAF部分的指針。該技術會用來引發混淆,使攻擊者可以在兩個位於相同內存區域的不同的對象之間操作。

漏洞利用會嘗試執行大量的操作來分配或釋放內存,以給攻擊者任意的讀寫原語。這是用來偽造特殊的對象的,該對象可以與WebAssembly 和FileReader一起來執行嵌入shellcode payload的代碼執行。

 第一階段shellcode

Payload分析

Final payload是以加密的二進位文件(worst.jpg)下載的,同時也是shellcode解密的。

加密的payload – worst.jpg

解密後,惡意軟體模塊會以updata.exe的形式釋放到磁碟中並執行。為了實現駐留,惡意軟體會在Windows任務計劃器中安裝任務。

Payload installer是一個RAR SFX文件,含有以下信息:

· 文件大小: 293,403
· MD5: 8f3cd9299b2f241daf1f5057ba0b9054
· SHA256: 35373d07c2e408838812ff210aa28d90e97e38f2d0132a86085b0d54256cc1cd

壓縮文件中含有2個文件:

· 文件名: iohelper.exe

MD5: 27e941683d09a7405a9e806cc7d156c9
SHA256: 8fb2558765cf648305493e1dfea7a2b26f4fc8f44ff72c95e9165a904a9a6a48

· 文件名: msdisp64.exe
MD5: f614909fbd57ece81d00b01958338ec2
SHA256: cafe8f704095b1f5e0a885f75b1b41a7395a1c62fd893ef44348f9702b3a0deb

這兩個文件的編譯時間是相同的,時間戳為 2019年10月8日01:49:31。
主模塊msdisp64.exe會嘗試從硬編碼的C2伺服器集下載下一階段。下一階段位於C2伺服器的文件夾名為受害者計算機名的文件夾中,所以攻擊者就有了哪些計算機受感染了,並將下一階段模塊放在C2伺服器的特定文件夾中。

註:本文翻譯自:https://securelist.com/chrome-0-day-exploit-cve-2019-13720-used-in-operation-wizardopium/94866/

相關焦點

  • 在野攻擊|Chrome瀏覽器 0day漏洞被網軍在野利用(CVE-2019-13720)
    2019年11月4日,HSCERT(山石網科安全應急響應中心)監測到谷歌發布了安全補丁,修復了Chrome瀏覽器中的兩個嚴重漏洞,其中一個早已以「0day」的身份出現在公網上,在近期的網軍黑客攻擊中被多次利用。
  • 網絡戰:利用Chrome 0day的巫師行動(CVE-2019-13720)
    最近Kaspersky Exploit Prevention成功檢測到一系列0-day攻擊,其中攻擊者利用了Google Chrome瀏覽器中的一個未公開漏洞
  • 谷歌被曝已遭利用的Chrome 0day,波及 Windows、Mac 和 Linux 系統
    谷歌工程師在發布新版本 78.0.3904.87 時在博客文章中表示,「谷歌了解到在野存在利用 CVE-2019-13720 漏洞的多份報告」。這個0day 被指是存在 Chrome 音頻組件中的一個釋放後使用漏洞。谷歌感謝卡巴斯基實驗室的兩名惡意軟體研究員 Anton Ivanov 和 Alexey Kulaev提交漏洞報告。
  • 剛剛修復的Windows 0day和Chrome 0day 已被組合用於 WizardOpium 攻擊(詳解)
    微軟在剛剛發布的12月「補丁星期二」中共修復36個漏洞,其中含一個已遭利用的 Windows 0day (CVE-2019-1458)。卡巴斯基實驗室指出,該漏洞和一個 Chrome 0day  (CVE-2019-13720) 同時被用於Operation  WizardOpium 攻擊活動中。
  • Chrome 在野零日漏洞
    原文:https://securelist.com/chrome-0-day-exploit-cve-2019-13720-used-in-operation-wizardopium
  • 谷歌修復chrome在野0-day利用,Microsoft Edge受影響
    【背景】2020年2月25日,Chrome修復3個重要的安全漏洞。利用這些漏洞可導致任意代碼執行。
  • Chrome新版本修復CVE-2020-15999 0 day漏洞
    10月20日,谷歌發布新版本的Chrome 86.0.4240.111,新版本中共修復了5個安全漏洞,其中一個是0 day 漏洞CVE-2020-15999。CVE-2020-15999 0 day漏洞利用谷歌Project Zero 研究團隊發現並報告了freetype中的一個0 day漏洞——CVE-2020-15999,以及該漏洞的在野利用,攻擊者利用該漏洞來攻擊Chrome 瀏覽器
  • CVE-2019-5786 漏洞原理分析及利用
    -5786漏洞的資料:High CVE-2019-5786: Use-after-free in FileReader[1],得知是FileReader上的UAF漏洞。通過分配給一個worker來釋放其中一個result指針就可以使另一個為懸掛指針,從而導致UAF漏洞。我選擇的32位win7環境的Chrome72.0.3626.81版本,可以通過申請1GB的ArrayBuffer,使Chrome釋放512MB保留內存,通過異常處理使OOM不會導致crash,然後在這512MB的內存上分配空間。
  • CVE-2019-5786和Windows 0day漏洞組合在野利用預警
    -5786與另一未公布的Windows平臺0day漏洞的組合利用樣本。要利用此漏洞,黑客僅需要通過文件誘導用戶打開特定網頁。第二個漏洞目前僅觀察到在Windows7 x86系統的主動利用。這是一枚存在於Windows 內核驅動程序win32k.sys中的本地提權漏洞,成功利用可實現沙箱逃逸。該漏洞是在特殊情況下使用NtUserMNDragOver()系統調用時造成的win32k!MNGetpItemFromIndex中的空指針引用。
  • 研究員改進了安卓 0day CVE-2019-2215 的 PoC 代碼
    一名美國安全研究員在 GitHub上為最近發現的安卓 0day 漏洞 CVE-2019-2215 發布了更具入侵性的 PoC 本月初,谷歌  Project Zero 團隊的研究員 Maddie Stone發現了這個 0day。當時谷歌表示該 0day 正遭在野利用。當時 Maddie Stone還發布了 PoC 代碼,不過她的代碼僅提供對內核的讀/寫訪問權限。要將這個 PoC 武器化,攻擊者仍然需要找到繞過安卓內核級別可用的很多其它安全保護措施。
  • 谷歌修復已遭利用的 Chrome 0day
    編譯:奇安信代碼衛士團隊 谷歌修復了 Chrome 88.0.4324.150版本中一個已遭利用的 0day 漏洞,影響 Windows、Mac 和 Linux 用戶的穩定桌面信道。谷歌在公布 Chrome 88.0.4324.150時指出,「谷歌注意到關於 CVE-2021-21148 在野 exploit 的存在。」
  • 安卓kernel 0 day漏洞正被惡意利用 請及時升級系統
    谷歌Project Zero研究人員Maddie Stone發現了安卓kernel的一個0 day漏洞,漏洞CVE編號為CVE-2019-2215,是,之後研究人員發現了該0day漏洞的在野利用,與以色列監控廠商NSO有關,NSO公司以出售0 day漏洞利用給政府及其他客戶以控制目標的安卓設備而著名。
  • 谷歌修復又一枚遭在野利用的 Chrome 0day
    編譯:奇安信代碼衛士團隊谷歌修復了 Chrome 89.0.4389.72 版本中已遭活躍利用的 0day (CVE-2021-21166)。該版本已向所有用戶推出。用戶可到 Settings -> Help -> About Google Chrome 修復該漏洞。Chrome Web 瀏覽器之後會自動檢查新的更新並適時安裝。谷歌將該 0day 評級為「高危「,稱其為」音頻中的 Object 生命周期問題「。該漏洞是由微軟瀏覽器漏洞研究團隊的研究員 Alison Huffman 在2021年2月11日提交的。
  • CVE-2019-5786:chrome在野利用0day漏洞預警
    0x00 漏洞背景北京時間3月6日,360CERT監控到chrome瀏覽器發布版本更新(72.0.3626.119->72.0.3626.121
  • Chrome在野0day(cve-2020-16009)Type Confusion漏洞分析
    該 0day在 googl project bug list(https://bugs.chromium.org/p/project-zero/issues/list)上由saelo前輩(https://twitter.com/5aelo)進行了相應的分析(https://bugs.chromium.org/p/project-zero/issues/detail?
  • Windows IE MSHTML 0 day漏洞利用
    CVE-2021-40444 0day漏洞利用。
  • CVE-2019-0708 漏洞分析及相關測試
    漏洞背景CVE-2019-0708 | 遠程桌面服務遠程執行代碼漏洞安全漏洞發布時間: 2019-05-14MITRE CVE-2019-0708當未經身份驗證的攻擊者使用 RDP 連接到目標系統並發送經特殊設計的請求時,遠程桌面服務(以前稱為「終端服務」)中存在遠程執行代碼漏洞。此漏洞是預身份驗證,無需用戶交互。
  • Google發布Chrome安全更新,修復已被利用的0day;GravityRAT新變種可感染Android和macOS設備
    【漏洞補丁】Google發布Chrome安全更新,修復已被利用的0day【威脅情報】NCSC稱俄羅斯黑客正在準備針對東京奧運會的攻擊活動GravityRAT新變種可感染Android和macOS設備黑客在可SS7移動攻擊中劫持電報和電子郵件帳戶新惡意軟體Vizom使用遠程覆蓋攻擊來劫持銀行帳戶
  • 谷歌又修復兩個已遭利用的Chrome瀏覽器0day漏洞
    今天,谷歌發布 Chrome 版本 86.0.4240.198,修復了兩個已遭利用的 0day。
  • Firefox緊急修復RCE 0day(CVE-2019-11707);TP-Link Wi-Fi中繼器RCE漏洞
    【漏洞補丁】Firefox緊急修復RCE 0day(CVE-2019-11707)TP-Link Wi-Fi中繼器RCE漏洞,影響多個型號【安全漏洞】Facebook WordPress插件兩個CSRF 0day,PoC已發布【數據洩露】求職平臺Talanton意外洩露近160萬僱主和求職者信息