Kernekoncepter
本文揭露了一種針對檔案系統的新型旁路攻擊,攻擊者可以利用作業系統中的 syncfs 系統呼叫洩漏的時間資訊,推斷出受害者裝置的敏感資訊,例如網站瀏覽紀錄、影片播放內容和應用程式使用情況,甚至可以建立跨容器的隱蔽通道進行通訊。
本研究論文揭露了一種利用作業系統檔案系統中 syncfs 系統呼叫進行攻擊的新方法。syncfs 主要用於將記憶體中的資料同步到儲存裝置,確保資料一致性。然而,研究發現,由於 syncfs 的執行時間會受到其他程序 I/O 操作的影響,攻擊者可以透過監控 syncfs 的延遲時間,推斷出受害者裝置的敏感資訊。
研究貢獻
本論文的主要貢獻包括:
新型攻擊向量: 分析 Linux 和 Android 系統中的 syncfs 系統呼叫,發現其時間洩漏問題,並將其作為一種新型攻擊向量。
隱蔽通道攻擊: 設計並實現了一種基於 syncfs 的快速且穩定的隱蔽通道,並展示了其在 Linux 和 Windows 檔案系統上的有效性。
端到端旁路攻擊: 提出了三種高精度的旁路攻擊,用於推斷受害者瀏覽的網站、觀看的影片和使用的應用程式,準確率、召回率和 F1 分數均超過 90%。
跨容器攻擊: 將基於 syncfs 的攻擊擴展到容器化環境,展示了容器偵測和跨容器隱蔽通道的可行性。
研究方法
研究人員首先分析了不同 I/O 操作對 syncfs 執行時間的影響,發現寫入操作、檔案截斷操作和檔案重新命名操作都會導致 syncfs 延遲增加。接著,他們利用這些洩漏資訊設計了三種攻擊方式:
網站指紋辨識: 透過監控瀏覽器載入網站時產生的寫入模式,推斷出受害者訪問的特定網站。
影片指紋辨識: 利用影片播放過程中緩衝區的寫入模式差異,辨識受害者觀看的影片內容。
應用程式指紋辨識: 監控應用程式啟動時產生的寫入模式,辨識受害者正在使用的應用程式。
研究結果
實驗結果顯示,攻擊者可以利用 syncfs 洩漏的時間資訊,成功地進行網站指紋辨識、影片指紋辨識和應用程式指紋辨識攻擊。此外,研究人員還展示了在容器化環境中,攻擊者可以透過監控 syncfs 延遲時間,偵測容器的啟動和停止,並建立跨容器的隱蔽通道進行通訊。
研究結論
本研究揭示了作業系統檔案系統中存在的一種新型旁路攻擊途徑,攻擊者可以利用 syncfs 系統呼叫洩漏的時間資訊,獲取受害者裝置的敏感資訊。研究結果對於提升作業系統和容器化環境的安全性具有重要意義。
Statistik
在 Linux 系統上,透過 syncfs 建立的隱蔽通道頻寬最高可達 4.98 Kbps,錯誤率為 0.15%。
在 Windows 系統上,透過 syncfs 建立的隱蔽通道頻寬最高可達 7.61 Kbps,錯誤率為 1.9%。
網站指紋辨識攻擊的 F1 分數在封閉環境和開放環境中均超過 93%。
影片指紋辨識攻擊在 YouTube 平台上的 F1 分數超過 95%,在 Bilibili 平台上的 F1 分數超過 89%。
應用程式指紋辨識攻擊的平均 F1 分數超過 93%。