COMMENTS (0)
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
구글 광고로 유포된 가짜 PDF 편집기 TamperedChef가 56일 잠복 후 1만 2천 대를 동시 감염시킨 사건. 81개 페이퍼컴퍼니와 인증서 위조, DPAPI 자격증명 탈취 전략을 분석합니다.
댓글은 익명으로 작성되며, 삭제 비밀번호를 설정하면 본인만 삭제할 수 있습니다. 비밀번호를 설정하지 않은 댓글은 누구나 삭제할 수 있습니다.
2025년 8월 21일 오전, 100개가 넘는 기업 네트워크에서 거의 동시에 이상 신호가 터졌다. PDF 편집기라며 설치된 프로그램이 갑자기 Chrome과 Edge 프로세스를 강제 종료하기 시작했다. 브라우저가 멈추는 그 순간, 저장된 비밀번호·쿠키·인증 토큰이 XOR 암호화 채널을 타고 빠져나갔다. 두 달 전 설치된 프로그램이 스스로 깨어난 것이었다.
이것이 TamperedChef 캠페인의 절정이었다.
| 항목 | 수치 |
|---|---|
| 활성화 일시 | 2025년 8월 21일 (설치 56일 후) |
| 확인된 감염 인스턴스 | 1만 2천 건 이상 |
| 식별된 악성 샘플 | 4,000개 이상 (100개 이상 변종) |
| 코드 서명 위장 법인 | 81개 |
| 피해 국가 | 19개국 (미국 약 80%) |
| 주요 표적 업종 | 의료, 건설, 제조, 법률 등 |
TamperedChef(테인퍼드셰프)는 2024년 하반기부터 활동을 시작한 금전 목적의 위협 집단이다. Palo Alto Networks Unit 42가 추적한 결과 세 개의 독립 클러스터, 즉 CL-CRI-1089, CL-UNK-1090, CL-UNK-1110이 동일한 전술 뼈대를 공유하며 병행 운용되고 있었다.
이들이 초기에 집중한 것은 코드 서명 인증서 확보였다. Windows는 서명된 실행 파일에 사용자 경고를 띄우지 않는다. 공격자들은 이 신뢰를 사기 위해 81개의 페이퍼컴퍼니를 설립했다. 말레이시아, 이스라엘, 미국의 주소를 사용했는데, 복수의 법인이 동일한 말레이시아 주소를 공유하는 사례도 있었다. "디지털 트랜스포메이션" 사업을 한다고 신고한 이 법인들은 DigiCert 같은 정규 인증기관으로부터 Extended Validation(EV) 인증서를 발급받았다. Unit 42 추산 한 클러스터당 인증서 비용만 1만 달러를 넘겼다.
인증서를 손에 넣은 공격자들은 AppSuite PDF Editor, DocuFlex, CrystalPDF, Calendaromatic 등 수십 개의 가짜 생산성 소프트웨어 브랜드를 만들었다. 각 앱은 실제로 PDF 편집 기능을 제공했다. 샌드박스가 설치 직후 수 분 안에 악성 행위를 탐지하기 어려운 이유는 바로 여기에 있었다.
인증서가 보안 벤더의 블록리스트에 오르면 공격자들은 새 페이퍼컴퍼니를 등록하고 새 인증서를 발급받아 같은 코드베이스에 다시 서명했다. Unit 42는 동일 코드에 두 개의 서로 다른 인증서가 붙어 있는 패턴을 발견해 클러스터들을 연결했다. Calendaromatic 캠페인을 이 방식으로 분석하자 추가 서명 법인 7개가 더 드러났다.
사용자 여정은 구글이나 빙 검색에서 시작했다. "free PDF editor", "free calendar prints" 같은 키워드를 검색하면 맨 위에 TamperedChef의 유료 광고가 등장했다. CL-UNK-1090 클러스터 하나만으로 2만 건 이상의 광고를 집행했다.
광고를 클릭한 사용자는 그럴듯한 사이트로 이동해 AppSuite-PDF.msi 설치 파일을 내려받았다. 파일에는 유효한 코드 서명 인증서가 붙어 있었고, 관리자 권한조차 요구하지 않았다. WithSecure Labs 분석에 따르면 설치 과정에서 EULA 대화 상자를 표시해 자동화 샌드박스의 추가 분석도 차단했다.
설치 완료 후 앱은 정상 동작했다. 실제로 PDF 변환이 됐고, 의심스러운 네트워크 통신도 일어나지 않았다. 내부에서는 레지스트리 자동 실행 항목이 등록됐다. HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\PDFEditorUpdater 키가 생성됐고, 실행 값으로 PDF Editor.exe --cm=--fullupdate가 설정됐다. 예약 작업(PDFEditorScheduledTask)도 생성됐는데, 난독화된 task.xml을 통해 스크립트를 주기적으로 실행하며 C2 서버에 접속해 명령을 확인하는 역할을 담당했다. Utilityaddon.node라는 네이티브 DLL 모듈이 이 레지스트리와 예약 작업 조작을 맡았다.
잠복 기간인 56일이 끝나는 2025년 8월 21일, 예약 작업이 C2 서버에서 --fullupdate 명령을 수신했다. Sophos MDR 분석에 따르면 이 명령을 받은 앱은 내장된 pdfeditor.js 백도어를 깨웠다. 이 JavaScript 파일은 Obfuscator.io와 맞춤 방식으로 이중 난독화된 상태였다.
백도어가 실행한 첫 단계는 브라우저 프로세스 강제 종료였다. Chrome, Edge, Firefox가 실행 중인 상태에서는 자격증명 데이터베이스 파일이 잠겨 있어 접근할 수 없기 때문이다. 잠금이 풀린 파일에 Windows DPAPI(Data Protection API)를 통해 접근해 저장된 비밀번호·쿠키·자동 완성 데이터를 추출했다. 수집한 데이터는 XOR 암호화된 상태로 C2 서버에 전송됐다. 백도어는 C2에서 추가 스크립트를 수신해 동적으로 실행하는 구조여서, 임의 원격 명령 실행 기능까지 갖추고 있었다.
56일이라는 숫자는 우연이 아니었다. HivePro 분석에 따르면 이는 구글 유료 광고 캠페인의 전형적인 운영 주기인 30~60일에 맞춘 것이다. 광고 캠페인이 자연 종료되는 시점까지 최대한 많은 감염 호스트를 확보한 뒤, 한 번에 활성화하는 전략이었다.
Unit 42가 추적한 감염 인스턴스는 1만 2천 건 이상이었다. 전체 감염의 약 80%가 미국에 집중됐고, 그 외 이스라엘·독일·스페인 등 여러 국가에서 비교적 낮은 비율로 피해가 관측됐다.
Sophos가 직접 대응한 사례에서는 19개국 100개 이상 고객사 300개 이상 호스트가 침해된 것으로 확인됐다. 이 호스트들에서 탈취된 것은 Chrome과 Edge에 저장된 업무용 계정 비밀번호, 로그인 세션 쿠키, 자동 완성 데이터였다. 피해 업종은 의료, 건설, 제조, 법률, 비영리, 유통, 교통, 교육, 에너지, 정부 기관까지 광범위했다. 이 업종들이 표적이 된 이유는 업무용 매뉴얼이나 기술 문서를 온라인으로 자주 검색하기 때문이라고 Sophos는 분석했다.
TamperedChef가 보여 준 가장 불편한 사실은 코드 서명 인증서가 신뢰의 기준이 되기 어렵다는 점이다. 81개 페이퍼컴퍼니와 클러스터당 1만 달러 이상의 비용을 감수하며 합법적인 인증서를 대량 확보하는 행위가 실제로 이뤄졌다. 인증기관의 EV 검증 절차가 조직적인 서류 공작 앞에 뚫렸다.
56일 잠복 전략은 탐지 회피에서 효과적이었다. 대부분의 샌드박스 분석은 설치 직후 수 분 또는 몇 시간 안에 판정을 내린다. 두 달간 정상 기능을 제공하며 잠복하는 악성코드는 이 창을 훌쩍 벗어난다.
광고 플랫폼 인프라가 악성코드 배포 채널로 산업화된 점도 주목할 필요가 있다. 2만 건의 광고와 100개 이상의 앱 브랜드를 운영하는 것은 개인이나 소규모 그룹의 행위가 아니다. Unit 42는 CL-UNK-1090 클러스터에서 전문적인 애드테크 인프라 운영 역량을 발견했고, 이스라엘 법인들과 광고 대행사 FireArc 간의 연관성을 추적했다. 사이버 범죄가 합법적인 사업 인프라에 침투해 운영되는 방식을 이 캠페인이 단적으로 보여 준다. 2025년 8월 21일 아침, 브라우저가 멈추는 그 순간은 두 달 전 광고 클릭 한 번의 결과였다.
AI 활용 안내 이 글은 AI(Claude)의 도움을 받아 작성되었습니다. 인용된 통계와 사례는 참고 자료에 명시된 출처에 근거하며, 설명을 위한 일부 표현은 각색되었습니다.
면책 조항 본 글은 보안 인식 제고를 위한 교육 목적으로 작성되었습니다. 언급된 공격 기법을 실제로 시도하는 행위는 「정보통신망법」, 「형법」 등에 따라 처벌받을 수 있으며, 본 블로그는 이에 대한 법적 책임을 지지 않습니다.