무슨 일이 있었나
Shai-Hulud/Miasma supply-chain 캠페인의 Hades wave (UNC6780/TeamPCP에 의해 귀속)는 2026년 6월 8일에 26개 이상의 PyPI 패키지를 손상시켰으며, 특히 AI/ML 및 생물정보학 도구를 타겟으로 했습니다. 이 캠페인은 LLM scanner evasion (AI 기반 분류 도구를 타겟하는 payload의 prompt injection)과 credential-wiper deterrent (도용된 자격 증명이 회전될 경우 파괴적 행동을 위협하는 daemon)를 도입했습니다. 이 웜은 MCP server configs, Anthropic/OpenAI API keys, 및 AI coding agent tokens를 포함한 AI 특화 자격 증명을 타겟으로 합니다. langchain-core-mcp typosquat는 악의적 패키지 중 하나이며, LangChain 사용자를 직접 타겟으로 합니다. Zscaler ThreatLabz 분석 (검증된 전체 텍스트)은 V1 (2025년 9월)부터 2026년 6월 IDE 및 PyPI wave까지의 캠페인 진화를 문서화하며, 소스 코드는 2026년 5월 12일에 MIT 라이선스로 공개 공개되어 재사용 가능한 공격 인프라로 전환되었습니다.
왜 중요한가
이 캠페인은 현재까지 관찰된 가장 정교한 AI-ecosystem supply chain 공격입니다. 이는 AI 개발자와 그들의 도구를 직접 타겟으로 하며, frontier 모델에 대한 접근을 제어하는 AI API keys 및 model provider 자격 증명을 탈취합니다. LLM scanner evasion 기법 — 악의적 payload에 prompt injection을 포함하여 AI 기반 보안 분석기를 속이기 — 은 새로운 우려할 만한 escalation이며 AI 보조 보안 도구를 훼손합니다. wiper daemon은 사건 대응 절차를 역전시킵니다. 웜 소스 코드의 공개 MIT 릴리스는 이제 모든 위협 행위자가 이 캠페인을 실행할 수 있음을 의미합니다.
공격 경로
손상된 패키지는 *-setup.pth 파일을 제공하며, 이는 모든 Python 인터프리터 시작 시 (모든 import 이전에) 실행됩니다. hook은 GitHub에서 Bun JavaScript runtime을 다운로드하고 obfuscated _index.js payload를 실행하며, 이는 프로세스 메모리를 읽어 (Linux의 /proc/{pid}/mem, macOS의 Mach API, Windows의 ReadProcessMemory를 통해) 14개의 AI/cloud/DevOps 시스템 전반에서 자격 증명을 수집합니다. 도용된 데이터는 AES-256-GCM + RSA-2048로 암호화되고 attacker-controlled GitHub repos로 유출됩니다. 'gh-token-monitor' persistence daemon은 도용된 토큰이 회전될 경우 파괴적 행동을 위협합니다. Payload는 LLM 기반 보안 스캐너를 회피하기 위한 prompt injection 텍스트를 포함합니다.
영향받는 시스템
생물정보학, graph-ML, 및 deep-learning 도구 전반의 26개 이상의 PyPI 패키지 (langchain-core-mcp typosquat 포함); 모든 OS의 Python 환경; CI/CD pipelines
완화 방안
Python 환경에서 알 수 없는 출처의 *-setup.pth 파일을 감사합니다. 설치된 패키지를 IOC 목록과 비교 확인합니다 (embiggen, ensmallen, gpsea, langchain-core-mcp, rsquests, tlask, rlask, 및 기타). credential 회전을 시도하기 전에 영향을 받은 시스템을 격리하여 wiper daemon 작동을 방지합니다. 패키지를 검증된 해시로 고정합니다. stygian-cerberus-* 및 tartarean-charon-* GitHub 저장소 이름 (C2 exfil repos)을 모니터링합니다.