原文作者:23pds@慢霧安全團隊

背景

2024 年 6 月 3 日,推特用戶@CryptoNakamao 發文講述其因下載惡意的 Chrome 擴展 Aggr 導致 100 萬美金被盜的經過,引起廣大加密社區用戶對擴展風險的關注和自己加密資產安全性的擔憂。在 5 月 31 日,慢霧安全團隊發佈了披着羊皮的狼|虛假 Chrome 擴展盜竊分析一文,對惡意的 Aggr 擴展的作惡方式輸出了詳細分析。鑑於廣大用戶缺乏瀏覽器擴展的背景知識,慢霧首席信息安全官 23 pds 在本文通過六問六答,講解擴展的基礎知識和潛在風險,提供應對擴展風險的建議,希望能幫助個人用戶和交易平臺提高保護賬戶和資產安全的能力。

(https://x.com/im 23 pds/status/1797528115897626708)

答疑

1. 什麼是 Chrome 擴展?

Chrome 擴展(Chrome Extension) 是爲谷歌瀏覽器(Google Chrome) 設計的插件,能夠擴展瀏覽器的功能和行爲。它們可以自定義用戶的瀏覽體驗,添加新的特性或內容,或者與網站交互。Chrome 擴展通常由 HTML、CSS、JavaScript 以及其他網頁技術構建。

Chrome 擴展的結構通常包括以下幾個部分:

  • manifest.json:擴展的配置文件,定義了擴展的基本信息(如名稱、版本、權限等)。

  • 背景腳本(Background Scripts):運行在瀏覽器後臺,處理事件和長期任務。

  • 內容腳本(Content Scripts):運行在網頁上下文中,能夠直接與網頁進行交互。

  • 用戶界面(UI):如瀏覽器工具欄按鈕、彈出窗口、選項頁等。

2. Chrome 擴展有什麼作用?

  • 廣告攔截:擴展可以攔截和阻止網頁上的廣告,從而提高網頁加載速度和用戶體驗。例如,AdBlock 和 uBlock Origin。

  • 隱私和安全:一些擴展可以增強用戶的隱私和安全性,如防止跟蹤、加密通信、管理密碼等。例如,Privacy Badger 和 LastPass。

  • 生產力工具:擴展可以幫助用戶提高生產力,如管理任務、記筆記、時間跟蹤等。例如,Todoist 和 Evernote Web Clipper。

  • 開發者工具:爲網頁開發者提供調試和開發工具,如查看網頁結構、調試代碼、分析網絡請求等。例如,React Developer Tools 和 Postman。

  • 社交媒體和通訊:擴展可以集成社交媒體和通訊工具,方便用戶在瀏覽網頁時處理社交媒體通知、消息等。例如,Grammarly 和 Facebook Messenger。

  • 網頁定製:用戶可以通過擴展自定義網頁的外觀和行爲,如更改主題、重新排列頁面元素、添加額外功能等。例如,Stylish 和 Tampermonkey。

  • 自動化任務:擴展可以幫助用戶自動化重複性任務,如自動填寫表單、批量下載文件等。例如,iMacros 和 DownThemAll。

  • 語言翻譯:一些擴展可以實時翻譯網頁內容,幫助用戶理解不同語言的網頁,如 Google 翻譯。

  • 加密貨幣輔助:擴展可以幫助用戶在加密貨幣交易時更加方便,如 MetaMask 等。

Chrome 擴展的靈活性和多樣性使得它們幾乎可以應用於任何瀏覽場景,幫助用戶更高效地完成各種任務。

3. Chrome 擴展安裝後有哪些權限?

Chrome 擴展在安裝後可能會請求一系列權限,以便執行特定的功能。這些權限在擴展的 manifest.json 文件中聲明,並在安裝時提示用戶進行確認。常見的權限包括:

  • : 允許擴展訪問所有網站的內容。這是一個廣泛的權限,允許擴展讀取和修改所有網站的數據。

  • tabs:允許擴展訪問瀏覽器的標籤信息,包括獲取當前打開的標籤、創建和關閉標籤等。

  • activeTab:允許擴展暫時訪問當前激活的標籤,通常用於在用戶點擊擴展按鈕時執行特定操作。

  • storage:允許擴展使用 Chrome 的存儲 API 來存儲和檢索數據。這可以用於保存擴展的設置、用戶數據等。

  • cookies:允許擴展訪問和修改瀏覽器中的 cookies。

  • webRequest 和 webRequestBlocking:允許擴展攔截和修改網絡請求。這些權限通常用於廣告攔截和隱私保護擴展。

  • bookmarks:允許擴展訪問和修改瀏覽器的書籤。

  • history:允許擴展訪問和修改瀏覽器的歷史記錄。

  • notifications:允許擴展顯示桌面通知。

  • contextMenus:允許擴展在瀏覽器的上下文菜單(右鍵菜單)中添加自定義菜單項。

  • geolocation:允許擴展訪問用戶的地理位置信息。

  • clipboardRead 和 clipboardWrite:允許擴展讀取和寫入剪貼板內容。

  • downloads:允許擴展管理下載,包括啓動、暫停和取消下載。

  • management:允許擴展管理瀏覽器的其他擴展和應用程序。

  • background:允許擴展在後臺運行長時間任務。

  • notifications:允許擴展顯示系統通知。

  • webNavigation:允許擴展監控和修改瀏覽器的導航行爲。

這些權限使得 Chrome 擴展能夠執行許多強大和多樣的功能,但也意味着它們有可能訪問用戶的敏感數據,如 cookies、認證信息等。

4. 爲什麼惡意的 Chrome 擴展可以盜取用戶權限?

惡意的 Chrome 擴展可以利用所請求的權限盜取用戶的權限和認證信息,因爲這些擴展可以直接訪問和操作用戶的瀏覽器環境和數據。具體原因和方式如下:

  • 廣泛的權限訪問:惡意擴展通常會請求大量的權限,如訪問所有網站( )、讀取和修改瀏覽器標籤(tabs)、訪問瀏覽器的存儲(storage) 等。這些權限使得惡意擴展能夠廣泛地訪問用戶的瀏覽活動和數據。

  • 操作網絡請求:惡意擴展可以使用 webRequest 和 webRequestBlocking 權限攔截和修改網絡請求,從而竊取用戶的認證信息和敏感數據。例如,它們可以在用戶登錄網站時攔截表單數據,獲取用戶名和密碼。

  • 讀取和寫入頁面內容:通過 content scripts,惡意擴展可以嵌入代碼到網頁中,讀取和修改頁面內容。這意味着它們可以竊取用戶在網頁上輸入的任何數據,如表單信息、搜索查詢等。

  • 訪問瀏覽器存儲:惡意擴展可以使用 storage 權限訪問和存儲用戶的本地數據,包括可能包含敏感信息的瀏覽器存儲(如 LocalStorage 和 IndexedDB)。

  • 操作剪貼板:通過 clipboardRead 和 clipboardWrite 權限,惡意擴展可以讀取和寫入用戶的剪貼板內容,從而竊取或篡改用戶複製粘貼的信息。

  • 僞裝成合法網站:惡意擴展可以通過修改瀏覽器的內容或重定向用戶訪問的網頁,僞裝成合法網站,誘導用戶輸入敏感信息。

  • 長期後臺運行:具有 background 權限的惡意擴展可以在後臺持續運行,即使用戶沒有主動使用它們。這使得它們可以長時間監控用戶的活動,收集大量數據。

  • 操作下載:使用 downloads 權限,惡意擴展可以下載和執行惡意文件,進一步危及用戶的系統安全。

5. 爲什麼這次惡意擴展的受害者會被盜取權限和資金受損?

因爲這次惡意的 Aggr 擴展剛好獲得了上面我們聊到的背景信息,以下是這個惡意插件 manifes.json 文件 permissions 內容片段:

  • cookies

  • tabs

  • storage

6.惡意 Chrome 擴展盜取用戶的 cookies 後,能做哪些操作?

  • 訪問賬戶:惡意擴展可以使用盜取的 cookies 模擬用戶登錄交易平臺賬戶,從而訪問用戶的賬戶信息,包括餘額、交易歷史等。

  • 進行交易:盜取的 cookies 可能允許惡意擴展在未經用戶同意的情況下進行交易,購買或出售加密貨幣,甚至將資產轉移到其他賬戶。

  • 提取資金:如果 cookies 包含會話信息和認證令牌,惡意擴展可能繞過二次驗證(2FA),直接發起資金提取,將用戶的加密貨幣轉移到攻擊者控制的錢包中。

  • 訪問敏感信息:惡意擴展可以訪問和收集用戶在交易平臺賬戶中的敏感信息,如身份驗證文件、地址等,可能用於進一步的身份盜竊或詐騙活動。

  • 修改賬戶設置:惡意擴展可以更改用戶的賬戶設置,如綁定的電子郵件地址、手機號碼等,進一步控制賬戶和竊取更多信息。

  • 冒充用戶進行社會工程攻擊:利用用戶賬戶進行社會工程攻擊,如向用戶的聯繫人發送詐騙信息,誘導他們進行不安全的操作或提供更多敏感信息。

應對措施

看到這,廣大用戶可能會想,那怎麼辦,直接斷網不玩了?用單獨的電腦做操作?不用網頁登陸平臺?網絡上出現了很多一棍子打死的說法,但其實我們可以學習如何合理防範這類風險:

個人用戶的應對措施:

  • 增強個人安全意識:第一個防範建議是增強個人安全意識,始終保持懷疑的態度。

  • 僅安裝可信來源的擴展:從 Chrome 網上應用店或其他可信來源安裝擴展,並閱讀用戶評價和權限請求,儘量不授予擴展不必要的訪問權限。

  • 使用安全的瀏覽器環境:避免安裝不明來源的擴展,並定期審查和刪除不必要的擴展,安裝不同的瀏覽器,隔離插件瀏覽器和交易資金瀏覽器。

  • 定期檢查賬戶活動:定期檢查賬戶登錄活動和交易記錄,發現可疑行爲立即採取措施。

  • 記得退出登錄:使用完網頁操作平臺後要記得退出。很多人爲了方便,在登錄平臺完成操作後,不點擊退出登錄,這個習慣存在安全風險。

  • 使用硬件錢包:對於大額資產,使用硬件錢包進行存儲,以提高安全性。

  • 瀏覽器設置和安全工具:使用安全的瀏覽器設置和擴展(如廣告攔截器、隱私保護工具)減少惡意擴展的風險。

  • 使用安全軟件:安裝和使用安全軟件來檢測和防止惡意擴展和其他惡意軟件作惡。

最後是給平臺的風控建議,通過這些措施,交易平臺可以降低惡意 Chrome 擴展給用戶帶來的安全風險:

  • 強制使用二次驗證(2FA):

- 全局啓用 2FA:要求所有用戶在登錄和進行重要操作(如交易、下單、提取資金)時啓用二次驗證(2FA),確保即使用戶的 cookies 被盜,攻擊者也無法輕易訪問賬戶。

- 多種驗證方式:支持多種二次驗證方式,如短信、電子郵件、Google Authenticator 和硬件令牌等。

  • 會話管理和安全:

- 設備管理:提供用戶查看和管理已登錄設備的功能,讓用戶可以隨時註銷不明設備的會話。

- 會話超時:實施會話超時策略,對長時間未活動的會話進行自動註銷,減少會話被盜用的風險。

- IP 地址和地理位置監控:檢測和提醒用戶來自異常 IP 地址或地理位置的登錄嘗試,並在必要時阻止這些登錄。

  • 強化賬戶安全設置:

- 安全通知:即時向用戶發送有關賬戶登錄、密碼更改、資金提取等重要操作的通知,可以通過郵件或短信提醒用戶異常活動。

- 賬戶凍結功能:提供緊急情況下用戶可以快速凍結賬戶的選項,控制受損範圍。

  • 加強監控和風控系統:

- 異常行爲檢測:使用機器學習和大數據分析監控用戶行爲,識別異常交易模式和賬戶活動,及時進行風控干預。

- 風控預警:對頻繁更改賬戶信息、頻繁嘗試登錄失敗等可疑行爲進行預警和限制。

  • 爲用戶提供安全教育和工具:

- 安全教育:通過官方社交賬號、電子郵件、平臺內通知等渠道向用戶普及安全知識,提示用戶注意瀏覽器擴展的風險和如何保護賬戶。

- 安全工具:提供官方的瀏覽器插件或擴展,幫助用戶增強賬戶安全,檢測並提醒用戶可能存在的安全威脅。

結語

坦白說,從技術的角度來看,很多時候把上文提到的風控措施都做了,可能並不是最好的方式。安全和業務需要平衡,安全太重,用戶體驗會不好,比如下單時需要二次認證,很多用戶爲了下單快,索性關掉! 結果是方便了自己也方便了黑客,因爲一旦 cookies 被盜,不能提幣,黑客就可以玩對敲,造成用戶資產受損。所以針對不同的平臺和用戶,採取風控的方式也不相同。至於安全與業務的平衡點在哪,不同的平臺有不同的考量,希望平臺在考慮用戶體驗的同時,也能保護好用戶賬戶和資產的安全。