🦊GitLab Blog•較早收集於 16h
Shai-Hulud 惡意軟體變種透過 PyPI 鎖定 Python 開發者

💡關鍵供應鏈威脅:惡意 PyPI 套件正利用 .pth 檔案在安裝時靜默執行程式碼。
⚡ 30-Second TL;DR
有什麼變化
識別出五個惡意 PyPI 套件,包含針對 Flask、Requests 和 NumPy 的拼字錯誤套件。
為什麼重要
此攻擊對 CI/CD 環境構成重大風險,因為該蠕蟲旨在竊取各大雲端服務供應商的憑證。開發者必須對模仿熱門函式庫的拼字錯誤套件保持警惕。
下一步行動
審查專案的 requirements.txt 或 pyproject.toml 檔案,確保沒有拼字錯誤的依賴項,並實施嚴格的依賴套件版本鎖定。
誰應關注:Developers & AI Engineers
關鍵要點
- •識別出五個惡意 PyPI 套件,包含針對 Flask、Requests 和 NumPy 的拼字錯誤套件。
- •攻擊者利用 .pth 檔案在安裝時自動執行惡意程式碼,無需顯式導入。
- •惡意負載會下載 Bun JavaScript 執行環境,以執行混淆過的憑證竊取蠕蟲。
- •此活動是開源 Shai-Hulud 惡意軟體工具包的仿冒攻擊。
🧠 深度解析
Web-grounded analysis with 27 cited sources.
🔑 增強重點摘要
- •此次攻擊(被稱為「Hades Campaign」)影響了PyPI上19至26個套件,其中許多是流行的生物資訊學和圖形機器學習工具,累計下載量達數十萬次。
- •惡意軟體旨在竊取廣泛的開發者憑證,包括GitHub令牌、npm、PyPI、RubyGems、JFrog發布令牌、AWS、GCP、Azure、Kubernetes、Vault憑證、SSH金鑰、Docker憑證、.env、.npmrc、.pypirc檔案、Shell歷史記錄以及AI助理配置(如Claude/MCP)。
- •攻擊者將Bun JavaScript執行環境作為獨立的ZIP檔案下載,使其能夠在缺乏Node.js的環境中執行複雜的JavaScript任務,並繞過傳統的套件管理器控制和網路代理日誌。
- •Shai-Hulud惡意軟體最初與「TeamPCP」駭客組織相關聯,其原始碼於2026年5月被洩露並開源,導致「Mini Shai-Hulud」和「Hades」等大量模仿攻擊和變種的出現。
- •惡意軟體透過安裝名為
gh-token-monitor的背景服務來實現持久性,並能利用竊取的令牌和OIDC信任配置,將惡意GitHub Actions工作流程注入儲存庫,甚至後門AI助理和IDE以進行傳播。
🛠️ 技術深入
- Python
.pth檔案機制:自Python 3.5起,.pth檔案中以「import」後跟空格或Tab開頭的行會在Python解釋器啟動時自動執行,這是一種隱蔽的持久化機制。 - Bun JavaScript執行環境:惡意軟體將Bun作為獨立的ZIP檔案下載,並透過
bun run _index.js執行混淆過的JavaScript負載,此方法繞過了Node.js依賴和傳統的網路代理日誌。 - 憑證竊取:惡意軟體會刮取Linux(透過
/proc/{pid}/mem)、macOS(透過Mach核心API)和Windows(透過ReadProcessMemory)上的程序記憶體,以竊取各種敏感憑證。 - 資料外洩:竊取的資料會被上傳到攻擊者控制的GitHub儲存庫(通常在描述中包含「Shai-Hulud」字樣),或透過直接HTTPS請求發送到看似合法但實為偽裝的Anthropic API端點。
- 持久化與傳播:惡意軟體會安裝
gh-token-monitor背景服務以維持存在,並利用竊取的令牌和OpenID Connect (OIDC) 信任配置,將惡意GitHub Actions工作流程注入儲存庫,從而發布被篡改的套件以實現自擴散。 - 規避技術:惡意軟體採用提示注入技術來誤導基於大型語言模型 (LLM) 的安全掃描器。
- 破壞性威脅:某些惡意軟體變種會威脅,如果竊取的令牌被撤銷,將執行破壞性操作(例如
rm -rf ~/)。
🔮 前景展望AI analysis grounded in cited sources
開源軟體供應鏈攻擊將持續增加複雜性和頻率。
攻擊者不斷利用自動化工具、洩露的惡意軟體原始碼和多重感染向量,使得此類攻擊更難以偵測和防範。
AI開發工具和CI/CD環境將成為更頻繁的攻擊目標。
這些環境擁有廣泛的憑證和存取權限,且惡意軟體已展現出針對AI工具配置和CI/CD管道的竊取能力。
軟體包管理器(如PyPI和npm)將被迫實施更嚴格的安全措施。
為了應對持續的供應鏈威脅,強制實施多因素認證、更嚴格的套件驗證和即時威脅檢測將變得不可或缺。
⏳ 時間線
2025-08
PyPI遭受一系列協調且持久的供應鏈攻擊,利用網路釣魚和拼字錯誤套件竊取憑證。
2025-09-14
Shai-Hulud蠕蟲首次在npm生態系統中被發現,感染了第一個npm套件rxnt-authentication,並被認為是首批自擴散蠕蟲之一。
2025-11
Shai-Hulud 2.0活動被報導,範圍更廣,影響數萬個GitHub儲存庫。
2026-03-19
TeamPCP發起廣泛的供應鏈活動,透過Trivy安全掃描器洩露憑證,隨後影響LiteLLM和Telnyx等PyPI套件。
2026-05-13
TeamPCP在GitHub上發布Shai-Hulud惡意軟體的完整原始碼,導致大量模仿攻擊和變種出現。
2026-06-08
「Hades Campaign」被發現,透過PyPI上的19-26個套件部署Shai-Hulud變種,利用`.pth`檔案和Bun執行時竊取憑證。
📎 來源 (27)
Factual claims are grounded in the sources below. Forward-looking analysis is AI-generated interpretation.
- bleepingcomputer.com
- thehackernews.com
- orca.security
- stepsecurity.io
- rescana.com
- stepsecurity.io
- snyk.io
- binance.com
- expel.com
- medium.com
- rescana.com
- herodevs.com
- arcticwolf.com
- microsoft.com
- blackduck.com
- readwise.io
- dfir.ch
- github.com
- reversinglabs.com
- ox.security
- datadoghq.com
- medium.com
- upguard.com
- arcticwolf.com
- paloaltonetworks.com
- gitlab.com
- netenrich.com
📰
AI 週報
閱讀本週精選 AI 大事摘要 →
👉相關動態
AI 策展新聞聚合。所有內容版權歸原始發布者所有。
原始來源: GitLab Blog ↗


