這項評估檢視了 Dockerized Android 的優勢與限制:模擬器支援自動化 ADB 功能(SMS 注入、GPS 模擬、容器 IP)但缺少藍牙等硬體,迫使像 BlueBorne 這樣的攻擊向量需要使用實體裝置測試。本論文重現了攻擊(CVE-2018-7661 PoC 和 BlueBorne 殺傷鏈),強調跨平台相容性問題(WSL 巢狀虛擬化、macOS USB 共享),並對平台需求的完全/部分滿足情況進行了映射。這項評估檢視了 Dockerized Android 的優勢與限制:模擬器支援自動化 ADB 功能(SMS 注入、GPS 模擬、容器 IP)但缺少藍牙等硬體,迫使像 BlueBorne 這樣的攻擊向量需要使用實體裝置測試。本論文重現了攻擊(CVE-2018-7661 PoC 和 BlueBorne 殺傷鏈),強調跨平台相容性問題(WSL 巢狀虛擬化、macOS USB 共享),並對平台需求的完全/部分滿足情況進行了映射。

不同作業系統下 Dockerized Android 的效能表現

2025/10/16 06:00

:::info 作者:

(1) Daniele Capone, SecSI srl, 那不勒斯, 義大利 (daniele.capone@secsi.io);

(2) Francesco Caturano, 那不勒斯費德里科二世大學電機工程與資訊技術系, 那不勒斯, 義大利 (francesco.caturano@unina.i)

(3) Angelo Delicato, SecSI srl, 那不勒斯, 義大利 (angelo.delicato@secsi.io);

(4) Gaetano Perrone, 那不勒斯費德里科二世大學電機工程與資訊技術系, 那不勒斯, 義大利 (gaetano.perrone@unina.it)

(5) Simon Pietro Romano, 那不勒斯費德里科二世大學電機工程與資訊技術系, 那不勒斯, 義大利 (spromano@unina.it).

:::

摘要與第一章 簡介

第二章 相關研究

第三章 Docker化Android:設計

第四章 Docker化Android架構

第五章 評估

第六章 結論與未來發展,以及參考文獻

第五章 評估

本章節通過檢視多個方面來評估Docker化Android平台。首先,我們強調模擬器核心與實體裝置核心組件在功能方面的差異,並突顯與三種最常用作業系統的相容性。然後,我們提供Docker化Android的實際使用範例,並討論第三章中定義的需求覆蓋情況。

\ 圖3. Docker化Android使用者介面

\ A. 模擬器核心與實體裝置核心的差異

\ 即使我們已投入大量努力創建一個對兩種裝置類型具有相同功能的系統,但使用模擬時仍存在一些限制:

\ • SMS ADB發送/接收功能:在模擬裝置中,可以通過ADB軟體自動化發送和接收SMS訊息。顯然,這在實體裝置上原生並不可行。因此,使用者必須手動發送和接收SMS訊息以實現SMS攻擊場景。解決此問題的方法可能是開發一個自定義Android應用程式,安裝在實體裝置上並進行設置以自動發送和接收訊息。

\ • 網路:模擬器和實體裝置版本之間的網路配置相當不同。在模擬器版本中,AVD是在Docker容器內創建的,因此它共享容器的IP地址。相反,實體裝置實際連接到運行容器的機器,並保持其自身的IP地址。

\ • 硬體虛擬化:對於硬體組件,情況也相當不同:某些硬體設備如GPS和麥克風可以被模擬。特別是,可以通過ADB設置裝置的GPS位置,並且主機的麥克風可以與模擬器共享。但有些硬體組件目前無法模擬,例如藍牙。

\ B. 跨平台相容性的主機評估

\ 非功能性需求NF04(跨平台相容性)指出,最終系統應該可以在任何主機作業系統中使用。這指的是運行Docker容器的機器的作業系統。表III提供了與Linux、Windows和OS X相容性的摘要。

\ 表III 主機作業系統相容性比較

\ Windows的問題在於,目前使用Docker的最佳方式是通過Windows Subsystem for Linux (WSL)框架。不幸的是,WSL尚不支持嵌套虛擬化,而這一功能是在Docker容器內運行Android模擬器所必需的。然而,此功能將在即將發布的WSL版本中提供。可能可以通過使用虛擬機在Windows上運行模擬器核心版本,但這會失去與容器化相關的所有性能優勢。OS X也存在類似問題,目前無法運行模擬器核心。此外,OS X不允許與Docker容器共享USB裝置。因此,使用實體裝置核心版本的唯一方法是通過Wi-Fi運行ADB,或從Docker容器內連接到主機ADB。

\ 在本節的其餘部分,我們將展示Docker化Android在使用模擬器核心和實體裝置核心重現安全攻擊鏈方面的有效性。

\ C. 在模擬器上重現安全攻擊

\ 我們在此關注與CVE-2018-7661[1]相關的漏洞場景示例。這個CVE與應用程式"Wi-Fi Baby Monitor"的免費版本有關。該應用程式需要安裝在兩個裝置上,以作為所謂的嬰兒監視器(一種用於遠程監聽嬰兒發出聲音的無線系統)。根據國家漏洞數據庫報告,"2.02.2版本之前的Wi-Fi Baby Monitor Free & Lite允許遠程攻擊者通過向TCP端口8258和8257發送特定請求來獲取音頻數據"。

\ 表IV WI-FI嬰兒監視器的需求

\ 此應用程式的高級版本為使用者提供了在配對過程中指定密碼的功能。通過監控網路流量,可以觀察到:

\ • 初始連接發生在端口8257上;

\ • 始終發送相同的序列來啟動配對過程;

\ • 在配對過程結束時,會在端口8258上啟動新連接。此端口用於傳輸音頻數據;

\ • 連接到端口8258後,端口8257上的另一個連接保持開放,用作會話的心跳;

\ • 在心跳連接上,客戶端定期發送十六進制字節0x01(大約每秒一次);

\ 允許攻擊者獲取音頻數據的概念驗證在[21]中給出。這個概念驗證(PoC)可以通過實現由三個服務組成的基礎設施在Docker化Android上輕鬆重現:

\ • core-emulator:預裝了Baby Monitor應用程式作為發送方的核心組件實例;

\ • ui:用於控制進行中情況的UI組件;

\ • attacker:一個自定義版本的Kali Linux,自動安裝執行PoC所需的所有依賴項。

\ 這也是展示用於啟用通信的端口轉發功能的完美示例。

\ D. 在實體裝置上重現安全攻擊

\ 使用實體裝置,我們研究了另一個稱為BlueBorne的漏洞。"BlueBorne"一詞指的是與藍牙實現相關的多個安全漏洞。這些漏洞是由物聯網安全公司Armis Security的一組研究人員於2017年9月發現的。根據Armis的說法,在發現時,大約82億台裝置可能受到BlueBorne攻擊向量的影響,該攻擊向量影響了Android、iOS、Microsoft和Linux中的藍牙實現,因此影響了幾乎所有藍牙裝置類型,如智能手機、筆記本電腦和智能手錶。Ben Seri和Gregor Vishnepolsk在2017年9月12日發表的論文中詳細分析了BlueBorne[22]。攻擊向量中可以使用八種不同的漏洞。

\ 關於Android,所有裝置和版本(因此比2017年12月發布的Android Oreo更早的版本)都受到上述漏洞的影響,除了支持BLE(藍牙低功耗)的裝置。一般來說,利用該漏洞需要滿足兩個條件:(i)目標裝置必須啟用藍牙;(ii)攻擊者必須足夠接近目標裝置。由於模擬器核心中不提供藍牙功能,因此相關攻擊鏈只能在實體裝置上重現。

\ 1) 在Docker化Android上完整重現BlueBorne:為了展示Docker化Android的有效性,我們開發了一個攻擊鏈,利用了影響Android的兩個遠程代碼執行(RCE)漏洞,即CVE-2017-0781和CVE-2017-0782。這些漏洞屬於Armis Security的一組安全研究人員發現的藍牙漏洞集"BlueBorne"[23]。

\ 圖4中的圖表概述了開發的攻擊鏈:

\

  1. 攻擊者通過Gophish(一種釣魚生成軟體)創建釣魚電子郵件。

\ 2) 釣魚電子郵件被發送到受害者的郵箱。

\ 3) 受害者閱讀釣魚電子郵件並錯誤地點擊郵件正文中包含的惡意連結。

\ 4) 惡意連結允許攻擊者觸發攻擊,下載並安裝假應用程式到受害者的移動裝置上。

\ 5) 惡意信息將相關移動信息發送給攻擊者。這些信息是利用這兩個漏洞所必需的。

\ 6) 攻擊者製作惡意有效載荷以利用漏洞。

\ 7) 攻擊者通過利用藍牙組件的漏洞發送攻擊,並獲得對受害者裝置的遠程訪問權限。

\ 圖4. 攻擊鏈概述

\ 這個複雜場景涵蓋了表I中定義的多個威脅。表V顯示了這些威脅以及允許場景重現的平台功能和組件。

\ 表V 威脅、場景步驟、功能和組件

\ 該場景需要複雜的網路通信(F07)並涉及藍牙的使用。因此,我們必須使用實體裝置(F10)。在提出的場景中,我們必須模擬用戶收到電子郵件時安裝惡意應用程式的情況。這可以手動完成(F02)或通過實現實用的ADB腳本(F03)。為了重現該場景,需要額外的元素:

\ • Gophish:一個允許製作和發送釣魚電子郵件的網頁應用,已有Docker版本。

\ • Ghidra:由美國國家安全局(NSA)創建的用於逆向工程目的的應用程式。在此上下文中,它用於獲取有關目標裝置的有用信息。此應用程式在主機上使用,不使用Docker。

\ • 假Spotify:一個看似良性的應用程式,聲稱為用戶提供知名Spotify Premium應用程式的免費版本,但實際上將被竊取的文件發送到攻擊者的服務器,這些文件在Ghidra上進行逆向工程。此應用程式也是在不使用Docker的情況下創建的。

\

免責聲明:本網站轉載的文章均來源於公開平台,僅供參考。這些文章不代表 MEXC 的觀點或意見。所有版權歸原作者所有。如果您認為任何轉載文章侵犯了第三方權利,請聯絡 service@support.mexc.com 以便將其刪除。MEXC 不對轉載文章的及時性、準確性或完整性作出任何陳述或保證,並且不對基於此類內容所採取的任何行動或決定承擔責任。轉載材料僅供參考,不構成任何商業、金融、法律和/或稅務決策的建議、認可或依據。
分享文章

您可能也會喜歡

以太坊 Fusaka 更新敦促轉向 Cell Proofs

以太坊 Fusaka 更新敦促轉向 Cell Proofs

這篇文章《以太坊 Fusaka 更新敦促轉向單元證明》發表於 BitcoinEthereumNews.com。 Zach Anderson 2025年10月15日 13:17 (UTC +8) 以太坊的 Fusaka 更新促使第 2 層解決方案因 EIP-7549 的變更而從 blob 證明轉向單元證明,確保更順暢的部署。 以太坊最近的 Fusaka 更新已促使第 2 層 (L2) 解決方案從 blob 證明轉向單元證明,這是因應 EIP-7549 引入的變更。根據以太坊部落格,這項於 2025 年 10 月 15 日宣布的發展,已導致 Sepolia 測試網上某些 L2 部署出現中斷。 背景 EIP-7549 的更新,也稱為 PeerDAS,修改了證明的格式,允許通過下載 blob 的特定部分而非整個 blob 來進行有針對性的數據可用性採樣。這一變更需要從 blob 證明轉向單元證明,以確保與新系統的兼容性。以太坊建議開發者更新他們的軟件以適應這些變更。已簽名的交易仍然有效,但它們需要重新計算單元證明。一些以太坊客戶端,如 go-ethereum,將通過 RPC 調用促進這種轉換。從 blob 證明到單元證明的轉換預計需要大約一秒鐘,從而降低了開銷。 可行的變更 Blob 交易發起者,特別是那些參與 L2 解決方案的人,被敦促更新他們的交易代碼以生成單元證明。主要客戶端庫提供 ComputeCellsAndKZGProofs() 函數,各種程式語言都有使用示例。分叉時在 txpool 中的交易可能會被某些實現丟棄,除非它們帶著單元證明重新發送。為了維持網絡穩定,一些系統在分叉後可能仍會短暫接受 blob 證明交易。 展望 展望未來,以太坊旨在加強關於協議變更的溝通,以防止用戶措手不及。鼓勵 L2 和其他利益相關者與社區互動並密切關注以太坊路線圖。Fusaka 更新,...
分享
BitcoinEthereumNews2025/10/16 11:21
分享