Google 同步通行密鑰俾惡意程式盯上:電腦中招後,私密金鑰都有機會失守
Tech News

Google 同步通行密鑰俾惡意程式盯上:電腦中招後,私密金鑰都有機會失守

圖片:via iThome — https://www.ithome.com.tw/news/177859
TechLab 編輯部(譯)·

研究集中測試 Windows、Chrome 同 Google Password Manager 嘅組合

iThome 報道,Palo Alto Networks 旗下 Unit 42 示範咗三種攻擊 Google 同步通行密鑰嘅手法。最嚴重嗰種可以抽走保護整個同步金鑰庫嘅主金鑰,再解開用戶現有同日後新增嘅通行密鑰。呢個結果聽落幾大鑊,不過要先講清楚研究範圍:測試集中喺設有 TPM、用 Chrome 同 Google Password Manager 嘅 Windows 電腦,而且三種攻擊都假設惡意程式已經入咗部機。Unit 42 呢次展示係研究結果,報告冇話相關手法已經俾人用作大規模實際攻擊。

通行密鑰防到釣魚,唔包保成部電腦安全

通行密鑰會為每個網站產生一對金鑰,網站只保存公開金鑰,私密金鑰就留喺用戶裝置或者密碼管理器。因為金鑰同指定網站綁定,假網站攞唔到真正網站要求嘅簽署,傳統釣魚同撞密碼自然難搞好多。Google Password Manager 仲會先加密通行密鑰,先至喺 Android 同 Chrome 之間同步,方便用戶轉機。

不過登入流程始終要相信 Chrome、Windows 同雲端驗證服務傳返嚟嘅訊號。惡意程式一旦可以用普通用戶權限讀取 Chrome 本機資料、操作系統加密 API,甚至翻查瀏覽器記憶體,攻擊面就由「估唔估到密碼」轉到「可唔可以冒認一部已獲信任嘅裝置」。Unit 42 今次搵到嘅正正係呢堆實作同復原流程之間嘅空位,未有推翻 WebAuthn 或公開金鑰加密本身。

藍色數碼鎖同電路組成嘅通行密鑰安全研究主圖

圖片:Palo Alto Networks Unit 42

三種手法,由借部機簽名去到搬走整個金鑰庫

第一種 Pass-ta-key 會讀取 Chrome 同步資料,搵出受害人邊啲戶口設有通行密鑰,再借用部機嘅硬件裝置金鑰向 Google Cloud Authenticator 簽署要求。過程唔使管理員權限,亦可以避開 Windows Hello。呢招主要影響冇強制檢查 User Verified 標記嘅服務;Unit 42 測試 GitHub 時,因為 GitHub 有檢查呢個標記,登入就失敗,但研究員亦搵到會錯誤放行嘅其他服務。

Silver Pass-ta-key 再行多一步:先迫 Chrome 重新登記裝置,再趁驗證金鑰仲未完成啟用,將攻擊者控制嘅金鑰登記到 Google Cloud Authenticator。成功後,攻擊者可以喺自己部機產生帶有已驗證標記嘅登入回應,受害人部電腦亦唔使保持在線。呢度暴露嘅係裝置重新登記流程過分相信客戶端提交嘅金鑰,而唔係指紋或者面容資料俾人偷走。

Golden Pass-ta-key 就最麻煩。研究員迫 Chrome 再跑一次登記流程,趁保護所有同步通行密鑰嘅 Security Domain Secret 短暫出現喺 Chrome 記憶體時抽走佢,再解密本機同步資料入面嘅私密金鑰。Google 收到報告後,已經刪走 Chrome 裝置記錄入面以明文保存嘅主金鑰。不過 Unit 42 話,份研究公開嗰陣,主金鑰仍然會傳到客戶端,亦可以喺記憶體搵到。報告冇列明一個已全面封住三條路線嘅 Chrome 版本,亦話暫時冇機制輪替或撤銷呢條主金鑰,所以唔宜當件事已經完全修好。

一般用戶可以做咩

繼續用通行密鑰仍然合理,佢對釣魚、重用密碼同網站資料庫外洩嘅防護,依然好過傳統密碼。實際要補嘅係裝置安全:保持 Windows、Chrome 同防毒軟件更新,唔好亂開不明附件或者安裝來歷不明嘅破解軟件。如果平時使用通行密鑰時突然再彈 Google Password Manager 復原 PIN,尤其短時間內重複出現,先停一停,檢查 Chrome 同 Google 帳戶有冇陌生裝置或異常登入。

如果懷疑電腦已經中招,單靠改 Google 密碼未必處理到俾人抽走嘅通行密鑰。較穩陣做法係先隔離電腦,喺另一部乾淨裝置終止可疑登入、移除相關戶口嘅通行密鑰,再按事故程度清機重裝。公司管理員仲要翻查端點警報同 Chrome 狀態檔案有冇異常變動。高風險戶口可以考慮用獨立硬件保安匙,減少把所有登入憑證集中喺同一個同步金鑰庫。

AsyncAPI 開發者亦要檢查依賴套件

同一篇 iThome 資安摘要亦提到 AsyncAPI 供應鏈事故。AsyncAPI 官方事後報告確認,攻擊者利用錯誤設定嘅 GitHub Actions pull_request_target 流程,偷走權限過大嘅自動化帳戶憑證,再發佈五個帶惡意程式嘅 npm 版本:@asyncapi/[email protected]@asyncapi/[email protected]@asyncapi/[email protected]@asyncapi/[email protected]6.11.2-alpha.1。套件只要俾程式匯入就會執行惡意碼,唔使等安裝 script。

用過上述版本嘅團隊要檢查 lockfile、npm cache、開發者電腦同 CI runner,亦要追查 %LOCALAPPDATA%\NodeJS\sync.js~/Library/Application Support/NodeJS/sync.js~/.local/share/NodeJS/sync.js。因為惡意程式會針對瀏覽器資料、SSH key、npm、GitHub 同雲端憑證,如果確認曾經載入過呢啲套件,就要更換相關憑證,唔好只係退返安全版本就算。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook