TeamPCP는 누구? Trivy 공급망 공격 배후 검거
목차
TeamPCP는 누구이고 무엇을 저질렀나

TeamPCP는 2026년 3월 오픈소스 컨테이너 보안 스캐너 Trivy의 공식 GitHub Action을 변조해 이를 사용하는 기업들의 CI/CD(코드를 자동으로 빌드·배포하는 파이프라인) 환경에서 클라우드 자격증명을 탈취한 공급망 공격의 배후로 지목된 조직입니다. 이 글을 쓰는 2026년 8월 30일 시점에서 가장 중요한 변화는, 이 사건이 더 이상 '배후가 밝혀지지 않은 진행형 위협'이 아니라는 점입니다. 지난 8월 26일 호주연방경찰(AFP)이 FBI·서호주경찰(WAPF)과의 합동수사 끝에 용의자 2명을 검거해 총 14건의 컴퓨터범죄 혐의로 기소했습니다. 공격 수법은 이미 규명됐고, 배후자는 이미 법정에 서 있는 사건이라는 뜻입니다.
Trivy 공급망 공격, 어떻게 이뤄졌나
Trivy는 Aqua Security가 개발한 오픈소스 보안 스캐너로, 컨테이너 이미지의 취약점·설정 오류를 점검하는 용도로 전 세계 수많은 기업이 CI/CD 파이프라인에 통합해 씁니다. 문제는 이 스캐너 자체가 해킹당했다는 데 있습니다.
태그 77개 중 76개가 통째로 바뀌었다
공격자는 aquasecurity/trivy-action 저장소의 버전 태그(예: v0.20.0 같은 릴리즈 표기)를 강제로 덮어써, 사용자가 특정 버전을 지정해 불러와도 실제로는 오염된 코드가 실행되도록 만들었습니다. 전체 77개 태그 중 76개가 악성 커밋으로 강제 덮어쓰기됐고, 관련 도구인 aquasecurity/setup-trivy는 보유한 7개 태그 전부가 영향을 받았습니다. 태그 기반 버전 관리를 신뢰하는 GitHub Actions 생태계의 구조적 약점을 정확히 노린 방식입니다.
보안 스캐너가 자격증명 탈취 도구로 둔갑
변조된 액션은 정상적인 보안 스캔이 실행되기 직전, 사용자 몰래 악성 코드를 먼저 실행해 AWS·Azure·GCP 등 클라우드 환경의 핵심 자격증명(Secrets)을 빼돌렸습니다. CI/CD 파이프라인은 배포 작업을 위해 통상 높은 권한을 갖고 있는데, 공격자는 이 권한 구조 자체를 무기로 삼은 셈입니다. GitHub 저장소에서 해당 액션을 참조하는 워크플로우 파일은 1만 개 이상으로 추정되며, 이는 잠재적으로 노출될 수 있었던 워크플로우 규모를 가리키는 지표입니다.
실제 피해 규모: 조직 1,000곳 이상·자격증명 50만 건 이상

앞서 언급한 '1만 개 이상의 워크플로우'는 GitHub 상에서 해당 액션을 참조하고 있던 파일 수, 즉 노출 가능성이 있던 규모일 뿐 실제로 침해된 조직 수는 아닙니다. AFP가 공식 발표한 실제 피해 규모는 이보다 더 구체적이고 심각합니다.
AFP 공식 발표 기준 실제 피해 규모: 전 세계 1,000개 이상의 조직이 실제로 침해됐고, 50만 건 이상의 자격증명(로그인 정보·API 키 등)이 탈취됐으며, 최소 300GB의 데이터가 유출됐습니다. 전 세계 복구 비용은 수억 달러 규모로 추정됩니다.
Aqua Security는 사고 인지 직후 오염된 태그를 삭제하고 정상 버전으로 복구하는 작업을 진행했습니다. 하지만 이미 해당 기간(2026년 3월 19일~22일경) 빌드가 실행된 조직이라면, 파이프라인을 거쳐 나간 자격증명이 이미 공격자 손에 넘어갔을 가능성을 배제할 수 없는 상황이었습니다.
배후 검거·기소 — 규명된 사건으로 전환됐다
2026년 8월 26일, AFP는 FBI·WAPF와의 합동수사를 통해 TeamPCP 배후로 지목된 서호주(WA) 거주 남성 2명을 체포해 각각 기소했다고 공식 발표했습니다. Cottesloe에 거주하는 21세 남성과 Mandurah에 거주하는 23세 남성으로, 두 사람에게 적용된 혐의는 합계 14건입니다.
두 사람에게 공통으로 적용된 혐의는 부정한 데이터 수정(허가 없이 시스템 데이터를 변경해 중대 범죄를 저지르려 한 행위)과 컴퓨터범죄 목적의 데이터 소지·공급입니다. 이 중 Cottesloe 남성에게는 여기에 더해 3LA 명령(수사기관이 요구하는 기기 비밀번호 제공 명령) 불이행과 10만 달러 이상 범죄수익 취급 혐의가 추가로 적용됐습니다.
| 구분 | Cottesloe 거주 남성(21세) | Mandurah 거주 남성(23세) |
|---|---|---|
| 혐의 건수 | 8건 | 6건 |
| 부정한 데이터 수정 | 4건 | 4건 |
| 컴퓨터범죄 목적 데이터 소지 | 1건 | 1건 |
| 컴퓨터범죄 목적 데이터 공급 | 1건 | 1건 |
| 3LA 명령(기기 비밀번호 제공) 불이행 | 1건 | 해당 없음 |
| 10만 달러 이상 범죄수익 취급 | 1건 | 해당 없음 |
즉 3LA 명령 불이행과 범죄수익 취급 혐의는 Cottesloe 남성 1인에게만 적용된 것이며, 두 사람이 똑같이 이 두 혐의를 받은 것은 아닙니다. 두 사람 합계 혐의는 정확히 14건(8건+6건)이며, 이보다 적은 숫자로 알려진 정보가 있다면 부정확한 것입니다.
기업·개발자가 지금 해야 할 조치
공급망 공격이 사후적으로 규명·기소됐다고 해서 이미 노출된 자격증명이 저절로 안전해지는 것은 아닙니다. Trivy를 CI/CD 파이프라인에 사용해온 조직이라면 다음 절차를 점검할 필요가 있습니다.
- 2026년 3월 19일~22일경 빌드 로그에서 aquasecurity/trivy-action 또는 aquasecurity/setup-trivy 실행 이력을 확인합니다.
- 해당 기간 파이프라인에서 사용된 클라우드 자격증명(API 키, 시크릿 키, 액세스 토큰)을 모두 교체(rotate)합니다.
- GitHub Action을 태그(v1, latest 등) 대신 커밋 해시로 고정해 향후 동일한 태그 변조 공격을 방지합니다.
- 클라우드 계정의 비정상 접근 로그·권한 변경 이력을 별도로 점검합니다.
이번 사건은 보안 도구 자체도 공급망의 일부로서 공격 대상이 될 수 있음을 보여준 대표 사례로 남았습니다. 유사한 사례로는 npm 관리자 계정 탈취를 통해 다수 패키지에 악성 코드가 심긴 사건이 있으며, 오픈소스 생태계 전반에서 반복되는 패턴이라는 점도 함께 짚어둘 필요가 있습니다.
- 버전 태그를 맹신하지 말고 커밋 해시 고정을 기본값으로 삼을 것
- CI/CD 파이프라인의 시크릿 접근 권한을 최소화(Least Privilege)할 것
- 정기적으로 사용 중인 오픈소스 액션·패키지의 보안 공지를 구독할 것
자주 묻는 질문
Q. TeamPCP는 해커 개인을 가리키는 이름인가요?
TeamPCP는 2026년 3월 Trivy 공급망 공격의 배후로 지목된 조직·활동명이며, 2026년 8월 26일 AFP·FBI·WAPF 합동수사로 서호주 거주 남성 2명(21세, 23세)이 그 배후로 지목돼 체포·기소됐습니다.
Q. 실제로 피해를 입은 조직은 몇 곳인가요?
AFP 공식 발표 기준 전 세계 1,000개 이상의 조직이 실제로 침해됐고, 50만 건 이상의 자격증명이 탈취됐으며, 최소 300GB의 데이터가 유출됐습니다. '1만 개 이상의 워크플로우'는 실제 침해 조직 수가 아니라 GitHub 상에서 해당 액션을 참조하던 워크플로우 파일 수(잠재 노출 규모)입니다.
Q. 두 용의자에게 적용된 혐의는 각각 몇 건인가요?
합계 14건입니다. Cottesloe 거주 21세 남성은 8건(부정한 데이터 수정 4건, 데이터 소지 1건, 데이터 공급 1건, 3LA 명령 불이행 1건, 범죄수익 취급 1건), Mandurah 거주 23세 남성은 6건(부정한 데이터 수정 4건, 데이터 소지 1건, 데이터 공급 1건)입니다.
Q. 3LA 명령 불이행과 범죄수익 취급 혐의는 두 사람 모두에게 적용됐나요?
아닙니다. 이 두 혐의는 Cottesloe 거주 21세 남성 1인에게만 추가로 적용됐으며, Mandurah 거주 23세 남성에게는 해당하지 않습니다.
Q. 지금도 Trivy를 사용하는 것이 안전한가요?
Aqua Security가 오염된 태그를 삭제하고 정상 버전으로 복구했으므로 현재 버전 사용 자체는 문제가 되지 않습니다. 다만 2026년 3월 19일~22일경 빌드 이력이 있는 조직이라면 그 시점에 사용된 자격증명 교체 여부를 반드시 재확인해야 합니다.