研究人員已經展示了威脅行為者如何濫用 GitHub Codespaces 的“端口轉發”功能來託管和分發惡意軟件和惡意腳本。
GitHub Codespaces 允許開發人員在虛擬化容器中部署雲託管的 IDE 平台,以直接在 Web 瀏覽器中編寫、編輯和測試/運行代碼。
自從 2022 年 11 月廣泛可用以來,GitHub Codespaces 已成為開發人員的熱門選擇,他們喜歡它的預配置、基於容器的環境配備了項目所需的所有必要工具和依賴項。
使用 GitHub Codespaces 作為惡意軟件服務器
在 Trend Micro 的一份新報告中,研究人員展示瞭如何輕鬆地將 GitHub Codespaces 配置為充當網絡服務器來分發惡意內容,同時潛在避免檢測,因為流量來自 Microsoft。
GitHub Codespaces 允許開發人員將 TCP 端口轉發給公眾,以便外部用戶可以測試或查看應用程序。
在 Codespace VM 中轉發端口時,GitHub 功能將生成一個 URL 以訪問在該端口上運行的應用程序,該端口可以配置為私有或公共。
私有端口轉發需要令牌或 cookie 形式的身份驗證才能訪問 URL。但是,知道 URL 的任何人都可以訪問公共端口而無需身份驗證。
此 GitHub 功能為開發人員提供了靈活性代碼演示中的 lity,但趨勢科技表示,如今的攻擊者可以輕鬆地濫用它在平台上託管惡意軟件。
理論上,攻擊者可以運行一個簡單的 Python 網絡服務器,將惡意腳本或惡意軟件上傳到他們的代碼空間,在他們的虛擬機上打開一個網絡服務器端口,並為其分配“公共”可見性。
生成的 URL 然後可用於訪問託管文件,無論是用於網絡釣魚活動還是託管由其他惡意軟件下載的惡意可執行文件。
這正是威脅行為者濫用其他值得信賴的服務(例如 Google Cloud、Amazon AWS 和 Microsoft Azure)進行惡意軟件分發活動的方式。
“為了驗證我們對威脅建模濫用場景的假設,我們在端口 8080 上運行了一個基於 Python 的 HTTP 服務器,轉發並公開該端口,”趨勢科技報告。
“在此過程中,我們很容易地找到了 URL 和缺少用於身份驗證的 cookie。”
分析師表示,雖然 Codespaces 端口轉發系統默認使用 HTTP,但開發人員可以將其設置為 HTTPS,從而增加 URL 的安全性。
由於 GitHub 是一個受信任的空間,防病毒工具不太可能發出警報,因此威脅行為者可以以最小的成本逃避檢測。
進一步攻擊
Trend Micro 分析師還探討了濫用 GitHub Codespaces 中的 Dev Containers,以提高其惡意軟件分發操作的效率。
GitHub Codespaces 中的“開發容器”是一個預配置的容器,其中包含特定項目所需的所有依賴項和工具。開發人員可以使用它進行快速部署、與他人共享或通過 VCS 連接。
攻擊者可以使用腳本轉發端口、運行 Python HTTP 服務器並在其代碼空間內下載惡意文件。
接下來,將端口的可見性設置為公開,這會創建一個帶有開放目錄的網絡服務器,該目錄向目標提供惡意文件。
Trend Micro 為此創建了一個概念驗證 (PoC),在刪除 Web 服務器之前訪問 URL 後使用 100 秒延遲。
BleepingComputer 能夠在不到 10 分鐘的時間內使用 Codespaces 複製“惡意”網絡服務器的創建,而該功能的經驗為零。
“使用此類腳本,攻擊者可以通過在其代碼空間環境中公開端口,輕鬆濫用 GitHub 代碼空間來快速提供惡意內容。由於每個創建的代碼空間都有一個唯一的標識符,因此關聯的子域也是唯一的,”解釋說趨勢科技在報告中。
“這為攻擊者提供了足夠的空間來創建打開目錄的不同實例。”
GitHub 的政策是不活躍的代碼空間是自動的在 30 天,因此攻擊者可以在整個月內使用相同的 URL。
雖然目前還沒有已知的 GitHub Codespaces 濫用情況,但該報告強調了一種現實的可能性,因為威脅行為者通常更喜歡以“免費使用”的平台為目標,這些平台也受到安全產品的信任。
BleepingComputer 已聯繫 GitHub 對趨勢科技的報告發表評論,但我們仍在等待回复。
1/18 更新 - GitHub 發言人向 BleepingComputer 發送了以下關於上述內容的評論:
GitHub 致力於調查報告的安全問題。我們知道此報告併計劃向用戶添加提示以驗證他們在連接到代碼空間時是否信任所有者。
我們推薦 GitHub Codespaces 的用戶關注我們的指南維護安全並最大限度地降低開發環境的風險。
如若转载,请注明出处:https://www.ozabc.com/it/534022.html