← 블로그로 돌아가기
보안 브리핑
14분 읽기
2026년 3월 28일
TeamPCP, Telnyx PyPI 통해 WAV 파일에 스틸러 은닉 — LangChain·LangGraph 결함으로 시크릿 노출, 유럽집행위원회 AWS 침해, 네덜란드 경찰 피싱 피해, GitHub VS Code 악성코드 캠페인
TeamPCP가 오픈소스 공급망을 겨냥한 공세를 확대해 Telnyx Python 패키지를 침해하고, WAV 오디오 파일 안에 자격 증명 탈취 악성코드를 숨겼습니다. LangChain과 LangGraph의 심각한 취약점 3건이 수백만 건의 AI 배포 환경에서 파일시스템 데이터, 환경 변수 시크릿, 대화 데이터베이스를 노출합니다. 유럽집행위원회는 AWS 환경 침해를 조사 중이며 350GB가 유출된 것으로 알려졌습니다. 네덜란드 경찰은 피싱 침해 사실을 공개했습니다 — 18개월 만에 두 번째 사건입니다. 대규모 GitHub 캠페인이 가짜 VS Code 보안 경고를 이용해 개발자들에게 악성코드를 유포하고 있습니다.
1. TeamPCP, Telnyx PyPI 패키지 침해 — WAV 오디오 스테가노그래피로 자격 증명 스틸러 은닉
⚠️ 공급망 공격 — 오디오 스테가노그래피로 탐지 회피
Trivy, KICS, LiteLLM 공급망 공격의 배후인 위협 행위자 TeamPCP가 이번에는 PyPI의 Telnyx Python 패키지를 침해했습니다. 악성 버전 4.87.1 및 4.87.2는 보안 스캐너를 우회하기 위해 WAV 오디오 파일 안에 자격 증명 탈취 악성코드를 숨깁니다.
TeamPCP는 유례없는 오픈소스 공급망 공격 캠페인을 이어가고 있습니다. 2026년 3월 27일, Aikido, Endor Labs, JFrog, Socket, StepSecurity의 연구진은 PyPI의 Telnyx Python 패키지가 PyPI 등록판에서 두 개의 악성 버전으로 침해된 사실을 확인했습니다. 이 공격 기법은 중대한 진화를 보여줍니다: 이제 자격 증명 탈취 페이로드가 WAV 오디오 파일 안에 숨겨져 스테가노그래피 기법으로 전달됩니다.
공격 체인 상세
악성 코드는 telnyx/_client.py에 삽입되어 패키지를 임포트하는 즉시 자동으로 실행됩니다. 3단계 공격 체인은 대상 운영체제에 따라 다르게 작동합니다:
- Windows: 다음을 다운로드합니다:
hangup.wav 파일을 C2에서 내려받아 숨겨진 실행 파일을 추출하고, 재부팅 후에도 살아남도록 시작 프로그램 폴더에 msbuild.exe라는 이름으로 저장해 지속성을 확보합니다
- Linux/macOS: 다음을 가져옵니다:
ringtone.wav 파일을 C2에서 받아 메모리 내에서 실행되는 수집 스크립트를 추출하고, 환경 변수와 .env 파일, 셸 기록에서 자격 증명을 수집합니다
- 모든 플랫폼: 탈취한 데이터를 다음 이름으로 유출합니다:
tpcp.tar.gz로 압축해 HTTP POST로 다음 주소로 전송합니다: 83.142.209[.]203:8080
- Kubernetes: 서비스 계정 토큰을 악용해 모든 노드에 특권 파드를 배포함으로써 측면 이동에 사용합니다
전체 공격 체인은 자동 삭제되는 임시 디렉터리 안에서 실행되어 포렌식 흔적을 거의 남기지 않습니다. 이는 TeamPCP가 이전에 "카미카제(kamikaze)" 와이퍼 악성코드에 사용했던 것과 동일한 WAV 스테가노그래피 기법으로, 이번에는 자격 증명 탈취용으로 개량되었습니다.
TeamPCP는 토큰을 어떻게 손에 넣었나
Endor Labs 연구진은 Telnyx PyPI 토큰이 앞서 발생한 LiteLLM 침해 당시 수집되었다고 보고 있습니다. TeamPCP의 자격 증명 수집기는 환경 변수와 .env 파일, 셸 기록을 LiteLLM을 임포트한 모든 시스템에서 수집했습니다. 만약 개발자나 CI 파이프라인에 LiteLLM이 설치되어 있고 동시에 Telnyx PyPI 토큰에 대한 접근 권한이 있었다면, 그 토큰은 이미 TeamPCP의 손에 넘어갔을 것입니다 — 즉 연쇄적인 공급망 침해.
CRA 및 NIS2 시사점
- CRA 소프트웨어 공급망: 이 공격의 연쇄적 성격 — Trivy에서 LiteLLM, 그리고 Telnyx로 이어진 — 은 사이버복원력법(CRA)이 왜 전체 종속성 그래프에 걸친 취약점 처리 절차와 협조된 공개를 의무화하는지를 정확히 보여줍니다
- NIS2 제21조(2)(d): 이제 공급망 보안은 침해된 하나의 종속성에서 발생한 자격 증명 노출이 무관한 다른 패키지에 대한 공격을 가능하게 하는 상황까지 고려해야 합니다
- SBOM의 시급성: 완전한 소프트웨어 자재명세서(SBOM)가 없는 조직은 이러한 연쇄적 공격 체인에 대한 노출 범위를 파악할 수 없습니다
이것이 귀사에 의미하는 바
- 즉시 다운그레이드하십시오: Telnyx를 4.87.0 버전으로 낮추십시오 — 해당 PyPI 프로젝트는 현재 격리 조치된 상태입니다
- LiteLLM을 임포트한 모든 시스템을 감사해 노출된 PyPI 토큰, API 키, 자격 증명이 있는지 확인하십시오
- Kubernetes 클러스터에서 승인되지 않은 특권 파드가 있는지 점검하십시오 — TeamPCP의 측면 이동 구성 요소는 k8s를 표적으로 삼습니다
- 단순 버전 확인을 넘어 패키지 무결성 검증 체계를 도입하십시오 — 스테가노그래피 페이로드는 기존 스캐너를 우회합니다
2. LangChain 및 LangGraph 취약점 — 파일, 시크릿, 데이터베이스 노출
⚠️ 치명적 취약점 — 세계에서 가장 인기 있는 AI 프레임워크의 독립적인 데이터 유출 경로 3건
LangChain과 LangGraph의 취약점 3건(CVE-2026-34070, CVE-2025-68664, CVE-2025-67644)이 파일시스템 데이터, 환경 변수 시크릿, 대화 기록을 노출합니다. LangChain-Core만 해도 지난주 다운로드 횟수가 2,300만 회에 달했습니다.
Cyera의 보안 연구원 Vladimir Tokarev가 3건의 치명적 취약점을 LangChain과 LangGraph에서 공개했습니다 — 두 프레임워크는 LLM 기반 애플리케이션을 구축하는 데 가장 널리 쓰이는 도구입니다. 각 결함은 민감한 기업 데이터를 유출시키는 독립적인 경로를 제공합니다:
| CVE |
CVSS |
유형 |
영향 |
수정 버전 |
| CVE-2026-34070 |
7.5 |
경로 탐색(Path Traversal) |
프롬프트 로딩 API를 통한 임의 파일 읽기 |
langchain-core ≥1.2.22 |
| CVE-2025-68664 |
9.3 |
역직렬화(Deserialization) |
API 키 및 환경 변수 시크릿 유출 |
langchain-core 0.3.81 / 1.2.5 |
| CVE-2025-67644 |
7.3 |
SQL 인젝션 |
체크포인트 메타데이터를 통한 전체 데이터베이스 접근 |
langgraph-checkpoint-sqlite 3.0.1 |
가장 심각한 결함인 CVE-2025-68664 (CVSS 9.3)는 공격자가 조작된 데이터 구조를 전달해, LangChain이 이를 사용자 입력이 아니라 사전 직렬화된 객체로 해석하도록 만들어 API 키와 환경 변수 시크릿을 유출시킬 수 있게 합니다. 이 취약점은 "LangGrinch"라는 이름으로 불리며, 2025년 12월 이를 최초로 식별한 Cyata가 명명했습니다 — 프롬프트 인젝션을 통해 악용될 수 있습니다.
파급 효과
Cyera는 LangChain이 독립적으로 존재하는 것이 아니라 거대한 종속성 웹의 중심에 있다고 경고합니다. 수백 개의 라이브러리가 LangChain을 감싸거나, 확장하거나, 이에 의존하고 있습니다. LangChain 코어에 취약점이 존재하면 모든 하위 라이브러리, 래퍼, 통합 모듈로 파급됩니다. LangChain 한 가지만 해도 주간 5,200만 회의 다운로드가 발생하므로, LangChain에서 비롯되는 파급 범위는 막대합니다.
EU AI Act 및 CRA 맥락
- EU AI Act 제15조: AI 시스템은 사이버보안 요구사항을 충족해야 합니다 — 세계에서 가장 인기 있는 AI 프레임워크에 존재하는 CVSS 9.3 역직렬화 결함은 LangChain 기반의 고위험 AI 시스템에 구조적 위험을 초래합니다
- CRA 취약점 처리: CVE-2025-68664가 최초 발견된 시점(2025년 12월)과 전면 패치 완료 시점 사이의 간극은 CRA의 "지체 없이" 패치 요구사항에 의문을 제기합니다
- GDPR 제32조: CVE-2025-67644를 통해 노출된 대화 기록에는 개인정보가 포함되어 있을 수 있습니다 — LangGraph를 통해 개인정보를 처리하는 조직은 이제 GDPR 집행 위험에 노출됩니다
이것이 귀사에 의미하는 바
- 즉시 패치: langchain-core를 1.2.22 이상으로, langgraph-checkpoint-sqlite를 3.0.1로 업데이트하십시오
- 모든 LangChain 배포 환경을 감사해 노출된 API 키가 있는지 확인하고, 접근 가능했을 수 있는 키는 모두 교체하십시오
- SQLite 체크포인트에 저장된 대화 기록을 검토해 민감 데이터 노출 여부를 확인하십시오
- LangChain을 감싸는 모든 하위 종속성을 평가하십시오 — 이러한 취약점을 그대로 물려받을 수 있습니다
3. 유럽집행위원회, AWS 침해 조사 — 350GB 유출 주장
🔶 기관 침해 — EU 집행기관 클라우드 환경 침해
EU의 주요 집행기관인 유럽집행위원회가 위협 행위자가 최소 하나의 AWS 계정에 접근한 이후 보안 침해를 조사하고 있습니다. 공격자는 직원 정보와 데이터베이스를 포함해 350GB 이상의 데이터를 유출했다고 주장합니다.
바로 유럽집행위원회가 심각한 침해로 보이는 사건을 조사하고 있습니다. 침해 대상은 Amazon Web Services(AWS) 클라우드 환경입니다. BleepingComputer가 보도한 주요 세부사항은 다음과 같습니다:
- 최소 1개의 AWS 계정이 침해되었습니다
- 공격은 신속히 탐지되었으며 현재 사고 대응팀이 조사를 진행하고 있습니다
- 위협 행위자는 350GB가 넘는 데이터를 탈취했다고 주장하며 여기에는 다수의 데이터베이스가 포함됩니다
- 증거로 제시된 스크린샷은 직원 정보 및 집행위원회 직원들이 사용하는 이메일 서버에 접근했음을 보여줍니다
- 공격자는 몸값을 요구하지는 않겠지만 위원회를 협박하지는 않겠다면서도 데이터를 공개적으로 유출할 의도라고 밝혔습니다
- AWS는 자사 서비스 자체는 침해되지 않았다고 확인했습니다 — 이번 침해는 위원회 측 환경에서 발생했습니다
이번 사건은 위원회가 2개월 만에 겪은 두 번째 침해입니다. 2월에 위원회는 1월 30일 모바일 기기 관리(MDM) 플랫폼이 해킹당했다고 공개한 바 있으며, 이는 네덜란드 개인정보보호청과 핀란드 Valtori에도 영향을 미친 Ivanti EPMM 코드 인젝션 취약점과 관련된 사건이었습니다.
규제 및 정치적 함의
관측통들 사이에서는 아이러니라는 지적이 나옵니다 — 유럽의 사이버보안 법을 직접 입안하는 기관이 정작 스스로 반복적인 침해를 겪고 있다는 것입니다:
- NIS2 컴플라이언스: EU 기관으로서 집행위원회는 연합 기관의 사이버보안에 관한 규정(EU) 2023/2841의 적용을 받습니다 — 반복되는 침해는 위원회 자체의 컴플라이언스 태세에 의문을 제기합니다
- 클라우드 보안: 이번 침해는 정부 기관의 퍼블릭 클라우드 도입에 따른 위험을 부각시킵니다 — EU 자체의 클라우드 행동강령과 EUCS 인증 체계가 바로 이러한 위험을 다루기 위해 마련된 것입니다
- 데이터 보호: 직원 개인정보가 유출되었다면, 유럽개인정보보호감독관(EDPS)이 규정(EU) 2018/1725에 따라 조사에 나설 것입니다
- 신뢰성 격차: 위원회는 2026년 1월 20일 국가 배후 행위자에 대한 방어를 강화하기 위한 새로운 사이버보안 법안을 발의했습니다 — 이제는 스스로의 인프라를 보호할 수 있음을 입증해야 하는 처지입니다
이것이 귀사에 의미하는 바
- AWS IAM 구성을 감사하십시오 — 침해된 자격 증명은 여전히 클라우드 침해의 가장 흔한 원인입니다
- 실시간 경보 기능을 갖춘 클라우드 보안 태세 관리(CSPM)를 도입하십시오
- 귀사가 유럽집행위원회와 데이터를 주고받는 조직이라면, 주장된 350GB 유출로 인한 데이터 노출 여부를 모니터링하십시오
- 자사의 클라우드 사고 대응 체계를 점검하십시오 — 위원회가 주장하는 만큼 신속하게 침해를 탐지하고 봉쇄할 수 있습니까?
4. 네덜란드 경찰, 피싱 침해 공개 — 18개월 만의 두 번째 사건
🔶 법 집행기관 침해 — 신속한 탐지로 영향 최소화
네덜란드 국립경찰(Politie)이 자사 보안운영센터(SOC)가 탐지한 피싱 침해 사실을 공개했습니다. 시민 데이터는 노출되지 않았으며 영향이 제한적이라고 밝혔지만, 이는 2024년 9월 국가 배후 행위자가 경찰관 연락처 데이터를 침해한 이후 18개월 만에 발생한 두 번째 침해입니다.
바로 네덜란드 국립경찰(Politie)이 보안 침해로 이어진 피싱 공격의 표적이 되었다고 밝혔습니다. 3월 25일자 보도자료에 따르면:
- 바로 보안운영센터(SOC)가 신속하게 사건을 탐지하고 즉시 접근을 차단했습니다
- 영향은 제한적인 것으로 보이며 — 시민 데이터와 수사 정보는 노출되거나 접근되지 않았습니다
- 현재 형사 수사가 개시된 상태입니다
- 경찰은 어떤 시스템이나 계정이 영향을 받았는지는 공개하지 않았습니다
앞서 2024년 9월, 네덜란드 경찰은 더 심각한 침해를 겪었습니다. 이는"국가 배후 행위자"로 지목된 세력이 다수 경찰관의 업무 연락처 정보 — 이름, 이메일 주소, 전화번호, 일부 개인정보를 포함 — 를 탈취한 사건과 연관되어 있습니다. 해당 수사는 현재도 진행 중입니다.
NIS2와 법 집행기관 사이버보안
- NIS2 적용 범위: 법 집행기관은 일반적으로 NIS2 적용 범위에서 제외되지만, 여전히 국가 사이버보안 프레임워크의 적용을 받습니다 — 네덜란드 NCSC는 경찰이 따라야 할 지침을 제공합니다
- 표적화 패턴: 동일 조직을 겨냥한 18개월 내 2건의 침해는 지속적인 공격자의 관심을 시사합니다 — 2024년 침해의 배후였던 것과 동일한 국가 배후 행위자일 가능성도 있습니다
- 침해 이후의 개선 조치: 2024년 침해 이후 경찰은 더 강력한 2단계 인증(2FA) 요구사항과 상시 모니터링을 도입했습니다 — 이번에는 SOC가 공격을 신속히 탐지해, 그 투자가 성과를 거두었음을 시사합니다
이것이 귀사에 의미하는 바
- 피싱은 여전히 초기 침입 경로 1위입니다 — 성숙한 SOC를 갖춘 조직도 피싱 공격을 당합니다
- 신속한 탐지는 예방만큼이나 중요합니다 — 네덜란드 경찰의 SOC는 심각한 피해가 발생하기 전에 이를 포착했습니다
- 침해 이후에는 예방과 함께 탐지 역량에도 투자하십시오 — 2024년 대응 이후 강화된 2FA와 모니터링이 이번 사건 봉쇄에 기여했습니다
- 정기적인 피싱 모의훈련을 실시하고, 클릭률뿐 아니라 탐지 소요 시간도 함께 측정하십시오
5. GitHub의 가짜 VS Code 보안 경고 — 개발자 대상 악성코드 유포
⚠️ 개발자 표적 캠페인 — 수천 개 저장소에 가짜 취약점 권고 게시
대규모 협조된 캠페인이 수천 개의 GitHub 저장소 Discussions 섹션에 가짜 VS Code 보안 경고를 게시해, 개발자들이 Google Drive 링크를 통해 악성코드를 다운로드하도록 유도하고 있습니다. 이 캠페인은 저장소 구독자들에게 이메일 알림을 촉발합니다.
애플리케이션 보안 기업 Socket이 GitHub에서 개발자를 표적으로 삼는 정교하고 대규모의 캠페인을 발견했습니다. 공격자들의 수법은 다음과 같습니다:
- 다음을 게시: 가짜 보안 권고를 수천 개의 GitHub 저장소 Discussions 섹션에 게시하며, "심각한 취약점 — 즉시 업데이트 필요"와 같은 제목을 사용합니다
- 다음을 사용: 그럴듯한 가짜 CVE ID와 긴급성을 강조하는 문구를 사용해 허위의 긴박감을 조성합니다
- 다음을 사칭: 실제 코드 관리자나 연구자를 사칭하되, 새로 만들어졌거나 활동이 적은 계정을 이용합니다
- 게시 방식: 자동화되고 조율된 방식으로 수천 개의 저장소에 걸쳐 수 분 내에 게시합니다
- 촉발 효과: GitHub 이메일 알림이 태그된 모든 사용자와 프로젝트 구독자에게 발송되도록 만듭니다
가짜 경고에는 패치되었다고 주장하는 VS Code 확장 프로그램으로 연결되는 링크가 포함되어 있으며, 이 링크는 Google Drive에 호스팅되어 있습니다. 이 링크를 클릭하면 쿠키 기반 리디렉션 체인이 시작되어, 시간대·로케일·사용자 에이전트·운영체제 정보·자동화 탐지 지표를 수집하는 JavaScript 정찰 스크립트로 이어지며, 검증된 피해자에게는 2단계 페이로드가 전달됩니다.
대규모 사회공학 기법
이 캠페인은 신뢰 신호를 악용한다는 점에서 주목할 만합니다:
- GitHub Discussions는 정당한 알림 채널이며, 개발자들은 이곳에서 보안 경고를 받을 것으로 기대합니다
- 이메일 알림은 실제 GitHub 경고와 나란히 수신함에 도착합니다
- Google Drive 링크는 정당성이 있는 것처럼 보이는 겉모습을 제공합니다
- 이 캠페인은 특히 개발자를 표적으로 삼습니다 — 개발자는 보안 권고에 신속히 반응할 가능성이 높기 때문입니다
CRA 개발자 보안 의무
- CRA 보안 개발: 사이버복원력법(CRA)은 제조사에게 보안 개발 관행을 준수하도록 요구합니다 — 이 캠페인에 속는 개발자는 자신도 모르게 침해된 확장 프로그램을 개발 환경에 도입할 수 있습니다
- 공급망 무결성: 침해된 개발자 머신이 패키지 레지스트리나 CI/CD 파이프라인에 접근 권한을 가지고 있다면, 그 파급 범위는 개별 개발자를 훨씬 넘어 확산됩니다
- GitHub의 책임: 디지털서비스법(DSA)에 따라 호스팅 서비스인 GitHub는 불법 콘텐츠와 관련된 의무를 집니다 — 보안 연구자를 사칭하는 자동화된 스팸도 이에 해당할 수 있습니다
이것이 귀사에 의미하는 바
- 개발자에게 조치를 취하기 전 NVD, CISA KEV, CVE.org 등 공식 출처를 통해 취약점 보고를 검증하도록 교육하십시오
- Google Drive와 같은 외부 출처에서 확장 프로그램이나 패치를 절대 다운로드하지 마십시오 — 공식 마켓플레이스만 이용하십시오
- 외부 다운로드 링크가 포함된 GitHub 알림 이메일을 플래그하는 이메일 필터링 규칙을 도입하십시오
- 개발자 워크스테이션을 감사해 마켓플레이스 외부 출처에서 설치된 VS Code 확장 프로그램이 있는지 확인하십시오
오늘의 위협 지형 요약
| 동향 |
규제 |
영향 |
조치 필요 |
| TeamPCP Telnyx WAV 스테가노그래피 |
CRA / NIS2 |
오디오 스테가노그래피를 통한 연쇄적 공급망 침해 |
Telnyx를 4.87.0으로 다운그레이드, LiteLLM 노출 여부 감사 |
| LangChain/LangGraph 결함 |
EU AI Act / CRA / GDPR |
수백만 AI 앱에서 파일, 시크릿, 데이터베이스 노출 |
langchain-core 1.2.22 이상으로 패치, API 키 교체 |
| 유럽집행위원회 AWS 침해 |
NIS2 / EUCS / 규정 2018/1725 |
EU 집행기관에서 350GB 유출 주장 |
AWS IAM 감사, CSPM 도입 |
| 네덜란드 경찰 피싱 침해 |
국가 사이버보안 |
18개월 내 두 번째 침해, 영향은 제한적 |
피싱 방어 강화, SOC 탐지 역량 투자 |
| GitHub VS Code 악성코드 캠페인 |
CRA / DSA |
수천 개 저장소가 가짜 보안 권고의 표적 |
공식 출처로 CVE 검증, 확장 프로그램 감사 |
AI 및 개발자 인프라를 보호하십시오
오디오 파일에 숨은 공급망 공격부터 치명적인 AI 프레임워크 취약점까지 — 귀사의 소프트웨어 공급망은 지금 포위되어 있습니다. KENSAI는 CRA, NIS2, AI Act 컴플라이언스 매핑이 내장된 자동화된 보안 스캐닝을 제공합니다.
무료 보안 스캔 시작하기 →
발행: KENSAI 위협 인텔리전스 팀 · 2026년 3월 28일
최신 정보를 놓치지 마세요. 안전을 지키세요. 더 많은 브리핑 보기 →