DEF CON 33 - 7 Vulns in 7 Days - Breaking Bloatware Faster Than It’s Built - Leon 'leonjza' Jacobs
三句話摘要
安全研究員通過逆向工程破解四款OEM臃腫軟件中的RPC漏洞,實現本地權限提升與遠程代碼執行。 預裝OEM臃腫軟件普遍存在RPC實現缺陷,檢查特權服務的身份驗證與驗證邏輯是發現本地權限提升或遠程代碼執行漏洞的高效方法。 RPC機制成為通用漏洞來源:華碩、微星、宏碁、雷蛇都使用本地RPC機制(TCP套接字、命名管道、COM對象)與客戶端通信,普遍缺乏身份驗證與驗證機制,成為特權提升的入口點。
重點整理
重點- 1
RPC機制成為通用漏洞來源:華碩、微星、宏碁、雷蛇都使用本地RPC機制(TCP套接字、命名管道、COM對象)與客戶端通信,普遍缺乏身份驗證與驗證機制,成為特權提升的入口點。
- 2
驗證邏輯的設計缺陷:華碩使用字符串包含檢查驗證源頭,導致任何包含「.asis.com」的域名都能繞過;微星在複製與驗證之間存在時間窗口導致競態條件;雷蛇將簽名驗證邏輯放在客戶端可控的DLL中,形同虛設。
- 3
權限提升的多層技術:通過計劃任務、UAC繞過(並行程序集清單)、令牌級別參數操控等技術實現系統權限執行,單個漏洞在某些情況下可簡化為數行代碼。
- 4
供應商信息披露的問題:華碩使用WAF阻止PoC上報造成溝通困難;雷蛇通過漏洞賞金計劃隱藏安全團隊導致工作流程繁瑣;微星的反應最迅速和專業。
實用技巧與重點
乾貨- 工具與平台:
- Process Explorer、Binary Ninja、Burp Suite、Wireshark、WinVerifyTrust、empty.exe(Visual Studio)、OleView、asar
- CVE 數量:
- 華碩驅動中心:2個CVE
- 微星中心:2個CVE
- 宏碁控制中心:1-2個CVE
- 雷蛇Synapse 4:1個CVE
- 關鍵技術細節:
- 華碩漏洞路徑:Burp修改驗證 → 字符串包含繞過 → 下載惡意EXE → 複製有效簽名 → 系統權限執行
- 微星漏洞:UpdateSDK命令的複製→驗證→執行之間存在競態窗口,同時啟動簽名正常與惡意程序
- 宏碁管道權限:命名管道設為「FILE_ALL_ACCESS」,參數114指定系統權限令牌
- 雷蛇FFI調用:Node.js外部函數接口調用本地DLL,DLL簽名驗證邏輯客戶端可直接修補;COM對象LaunchProcess方法無驗證
- UAC繞過方法:
- 並行程序集清單XML格式含requestedExecutionLevel字段
- empty.exe工具嵌入清單至EXE,產生黃藍盾牌提示
結論
結論“預裝OEM臃腫軟件普遍存在RPC實現缺陷,檢查特權服務的身份驗證與驗證邏輯是發現本地權限提升或遠程代碼執行漏洞的高效方法。”
完整解析
詳細演講者Leon Jacobs是Orange Cyber Defense公司Sensost團隊的安全研究員。他在南非度假期間因遊戲後發現系統異常重啟而開始了這項研究。通過開發者工具發現本地運行著Web服務器與驅動中心網站通信,激發了對OEM臃腫軟件的安全審計。
華碩驅動中心採用本地TCP服務與瀏覽器通信。第一個漏洞源於源頭驗證——系統檢查HTTP請求的origin頭是否包含「.asis.com」。這個看似安全的字符串包含檢查實際上允許任何域名如attacker.asis.com通過驗證。第二個漏洞在於代碼簽名驗證的實現:軟件聲稱檢查簽名,但只驗證簽名屬性是否存在,而非實際有效性。攻擊者可複製現有簽名到惡意文件。通過結合這兩個漏洞,攻擊者在網站上添加JavaScript發送GET請求至本地服務的重啟或更新端點,觸發文件下載執行。若用戶是管理員,通過添加並行程序集清單可繞過UAC提示,直接以系統權限執行代碼。
微星中心使用不同架構——以系統權限運行的本地服務定期掃描插件文件夾加載DLL。研究中發現UpdateSDK命令存在兩個問題。其一是競態條件:複製可執行文件、驗證簽名、調度任務執行三步驟之間存在時間窗口。攻擊者同時啟動兩個線程,一個複製微星官方簽名程序作誘餌,一個複製惡意程序。驗證通過後,惡意程序已覆蓋誘餌文件,最終執行惡意程序卻通過了簽名驗證。其二是另一組件實現了相同功能卻完全跳過簽名驗證步驟,漏洞利用簡化至四行代碼。
宏碁控制中心的C#客戶端與本地C++服務通過命名管道通信。該服務以提升權限運行,命名管道卻被配置為FILE_ALL_ACCESS權限——任何用戶可連接並發送命令。該漏洞具有遠程可達性。通過逆向分析發現服務支持多命令,參數值113表示普通用戶執行,114表示系統權限執行。修改參數值即可實現權限提升。
雷蛇Synapse 4採用Electron框架,通過Node.js FFI調用本地C++ DLL。漏洞在於簽名驗證邏輯完全位於客戶端可控的DLL中——攻擊者直接修補驗證函數即可繞過。此外,其COM對象暴露LaunchProcess方法,通過PowerShell可直接調用該方法執行指定路徑程序且無驗證,實現一行命令權限提升。
信息披露過程暴露行業問題:華碩漏洞上報頁面使用WAF阻止PoC代碼導致溝通困難;雷蛇通過漏洞賞金計劃隱藏安全團隊,產生大量內部工單和溝通延遲;微星反應最為迅速和專業。所有漏洞已修復,相關代碼已發布至GitHub。研究還嘗試了惠普支持、技嘉控制中心、聯想Vantage等產品但未發現同級漏洞。
關鍵時刻
Pipeline v2帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。
事實查核
Pipeline v2說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

