김정은과 북한 ICBM 이동발사대 — 김수키(Kimsuky) 배후인 정찰총국 국가 지원 사이버 위협의 상징

북한의 해킹 부대인 김수키는 인공지능을 지엽적으로 사용하는 것에서 벗어나서 적극적으로 활용하기 시작했다. 2026년 9월 7일 지니언스 시큐리티센터(GSC)는 김수키가 오픈소스 AI 코딩 에이전트 오픈코드(opencode) 로 제작한 미끼 문서를 실제 공격에 사용한 정황을 공개했다. 이는 해킹 조직이 AI 코딩 에이전트를 실제 공격 파일 제작에 활용한 것이 확인된 최초 사례로 볼 수 있다.

여기서 가장 중요한 점은 AI가 만든 문서를 검수도 없이, 수정도 없이 올린 덕분에 AI가 만들어낸 질 낮은 품질의 문서라는 점을 쉽게 인지할 수 있었다.

북한의 해킹 조직도 AI 딸깍으로 생산성과 품질이라는 두 마리 토끼를 놓치고 내부적인 홍역을 치르고 있는 것이다.

항목 내용
문서 종류 위협 인텔리전스 종합 분석 보고서 (Comprehensive Threat Intelligence Report)
대상 위협 그룹 Kimsuky (김수키) / 북한 정찰총국(RGB) 산하
관련 캠페인 Operation GitPower, FlowerPower 계열, KONNI 연계 활동
분석 대상 기간 2012년 ~ 2026년 9월 (집중 분석: 2025.09 ~ 2026.09)
문서 버전 v2.0 (Full Edition)
작성일 2026년 9월 10일
신뢰도 기술적 사실 — High / 귀속 — Moderate-High / 전망 — Moderate
배포 등급 TLP:CLEAR
작성 Dennis Kim (김호광) / [email protected]

0. 요약 (Executive Summary)

① 김수키는 실험을 끝내고 실전에 진입했다. 2026년 9월 7일 지니언스 시큐리티센터(GSC)는 김수키가 오픈소스 AI 코딩 에이전트 오픈코드(opencode) 로 제작한 미끼 문서를 실제 공격에 사용한 정황을 공개했다. 이는 해킹 조직이 AI 코딩 에이전트를 실제 공격 파일 제작에 활용한 것이 확인된 최초 사례다.

② 세 개의 보안 기업이, 서로 다른 증거로, 같은 결론에 도달했다.

  • 카스퍼스키(2026.05) — 러스트 기반 백도어 HelloDoor 코드 내부의 이모지 주석과 문법 오류 → 악성코드 개발에 LLM 관여
  • 지니언스(2026.08) — C2 인프라에서 로컬 LLM 3종·RAG DB·에이전트 프레임워크·STT 도구 → 자체 AI 연구 환경 구축
  • 지니언스(2026.09) — 미끼 PDF 메타데이터의 opencode 문자열 → 실전 산출물 제작에 코딩 에이전트 사용

여러 건의 독립 관측이 수렴한다는 것은 단일 벤더의 오판 가능성이 낮다는 뜻이다.

③ 그런데 그들은 만들어진 것을 읽지 않았다 — 문서에서도, 코드에서도. 미끼 PDF에는 (임시값)이 최대 9회 잔존했고 메타데이터에 opencode가 그대로 남았다. 29건 중 18건은 파일명만 바꾼 재사용이었고, 4개 PDF의 생성 시각은 초 단위까지 동일했다. 그리고 악성코드 HelloDoor에는 이모지가 들어간 주석과 문법 오류가 컴파일되어 배포됐다. 문서도, 코드도 북한의 해킹팀 김수키는 검토하지 않았다.

④ 이것이 본 보고서의 중심 논지다. 국가 배후 사이버 작전 조직조차 AI 산출물을 검토하지 않고 배포했다. 이는 한국의 기업·기관·공공영역에서 매일 관측되는 것과 정확히 동일한 실패 패턴이다. 공격자와 방어자가 같은 인지적 함정에 빠져 있으며, 원인도 같다 — 생성 비용은 0이 됐지만 검토 비용은 그대로다.

⑤ 이 실수는 탐지 기회지만 반감기가 있다. 플레이스홀더 잔존, 메타데이터 지문, 이모지 주석은 지금 강력한 신호다. 그러나 공격자가 검수 단계 하나를 추가하거나 혹은 그 검수를 수행할 또 다른 AI 에이전트 하나를 붙이면 이런 AI 품질 문제에 대한 실수는 전부 소멸한다. 동시에 어색한 번역체·맞춤법 오류 같은 전통적 피싱 판별 지표는 이미 무력화되고 있다.

⑥ 핵심 결론: 다층 AI 방어. AI는 단일 솔루션이 아니라 사람·문서·실행·지속성·네트워크·페이로드·상관분석·거버넌스 8개 계층 각각에서 다른 역할로 배치되어야 한다. 어떤 계층도 단독으로 이 공격을 막지 못한다는 것을 전제로 설계해야 한다.

⑦ 그리고 AI 방어에도 사람의 검토가 필요하다. AI를 이용한 공격자의 실패를 방어자가 반복하면, AI 탐지의 오탐과 미탐을 아무도 읽지 않는 상태가 된다. LLM은 계산을 위한 엑셀이지 모든 것을 통달한 오라클이 아니다.


1. 위협 행위자 프로파일 - 김수키

1-1. 기본 식별 정보

구분 내용
주 명칭 Kimsuky (김수키 / 킴수키)
활동 개시 최소 2012년 (미 재무부 평가), 2013년 카스퍼스키 최초 공개 분석
소속 북한 정찰총국(RGB, Reconnaissance General Bureau) 산하
하위 조직 평가 MSMT(다국적제재모니터링팀) 자료 기준 63연구소 소속으로 김수키·코니(Konni)가 함께 분류
성격 정보 수집(첩보) 중심 APT. 라자루스와 달리 외화벌이보다 첩보가 주 임무이나, 가상자산 관련 활동도 병행 관측
주요 수법 스피어피싱, 사회공학, 정상 서비스 악용(Living-off-Trusted-Sites), LNK/PowerShell 체인
제재 지정 2023년 11월 30일 미 재무부 OFAC 제재 대상 지정

1-2. 별칭(Alias) 정리 — 그리고 중요한 주의사항

별칭 부여 기관
APT43 Mandiant / Google
TA406 Proofpoint
Velvet Chollima CrowdStrike
Emerald Sleet (구 THALLIUM) Microsoft
Black Banshee PwC
ARCHIPELAGO Google TAG
Nickel Kimball (미 정부 문서 병기)

⚠ 분석적 주의사항

이 별칭들은 완전히 동일한 대상을 가리키지 않는다. 각 벤더는 자체 관측 데이터로 클러스터를 정의하며, 그 경계가 서로 다르다. TA406은 Proofpoint가 관측한 특정 활동 클러스터를 지칭하고, APT43은 Mandiant가 첩보와 자금조달 활동을 묶어 정의한 그룹이다. 부분적으로 겹치되 완전 일치하지 않는다.

Konni(코니) 는 더 복잡하다. 표적 분야와 인프라가 김수키·APT37과 겹쳐 일부 연구자는 동일 조직으로 분류하지만, 별개 클러스터로 보는 견해도 있다. 본 보고서는 Konni 활동을 김수키 연계로 평가되는 활동 으로 표기하며 동일시하지 않는다.

실무적 의미: 위협 인텔리전스 소비 시 "김수키가 X를 했다"는 서술의 원 출처와 클러스터 정의를 확인해야 한다. 이름이 같다고 같은 조직의 같은 팀이 아닐 수 있다.

1-3. 김수키 해킹 타임라인

시기 사건
2012 활동 개시 (미 정부 평가 기준)
2013 카스퍼스키, 최초 공개 분석 — 한국 싱크탱크·통일 관련 기관 표적
2014 한국수력원자력 관련 침해 사건 연계 평가
2018 Operation STOLEN PENCIL — 학술기관 대상
2019 금융·가상자산 정보 수집 기능 추가 악성코드 관측 (ESRC)
2020 UN 관계자 대상 캠페인, AppleSeed 계열 확산
2021 한국원자력연구원(KAERI) 내부망 침투 확인
2022 AppleSeed 2.1에 정부 전자인증서(GPKI) 디렉터리 수집 기능 추가
2023.06 한미 정보기관 공동 보안권고 발표 — 언론인·전문가 사칭 수법 경고
2023.11 미 재무부 OFAC 제재 지정 (군사정찰위성 발사 대응 조치의 일환)
2023 FlowerPower 캠페인 — PowerShell 기반 체계, Git 저장소 활용 (지니언스)
2024.02 오피니언 칼럼 위장 캠페인 — RTF 헤더 변조 + Gzip 복구 기법 (지니언스)
2025.08 HelloDoor — 러스트 기반 DLL 백도어 최초 관측
2025.09~11 KONNI 연계 원격 초기화 캠페인 — 안드로이드 기기 초기화 + 카카오톡 계정 악용
2026.01 VS Code 원격 터널링 악용 분석 공개 (Darktrace)
2026.03~04 Webex 사칭·보안 프로그램 설치 페이지 위장, JSONPing 감염 확인 기법 (ENKI)
2026.04 LNK + GitHub C2 북한 연계 캠페인 공개 (Fortinet)
2026.05 카스퍼스키 — HelloDoor 코드의 LLM 사용 정황, httpMalice, AppleSeed GPKI 수집
2026.08.10 지니언스 — Operation GitPower, 로컬 LLM·RAG·에이전트 프레임워크 축적 확인
2026.09.07 지니언스 — 오픈코드(opencode) 제작 미끼 문서 확인

1-4. 표적 프로파일

지리적 우선순위: 한국 > 미국 > 일본 · 유럽 > 러시아 · UN 기구

분야별 표적

분야 구체적 표적 공격 목적
외교·안보 통일부 관련 기관, 재외공관, 한반도 전문 싱크탱크, 외교 연구자 정책 동향 첩보
국방·방산 군 관계자, 방산업체, 관련 협력사 기술·작전 정보
원자력 원자력 연구기관, 발전 운영사 핵 기술 정보
정부·공공 공무원(GPKI 인증서 탈취), 공공기관 홈페이지 계정 도용, 내부망 확산
학술·언론 대학, 연구소, 기자 (사칭 및 표적 양방향) 접근 경로 확보, 신뢰 획득
금융·가상자산 핀테크 플랫폼 사용자, 가상자산 종사자 자금 확보, 지갑 정보
인권·탈북민 북한인권운동가, 탈북 청소년 상담사 감시 및 직접 피해 유발

마지막 항목은 성격이 다르다. 첩보 수집이 아니라 개인에 대한 직접적 위해를 목적으로 한다. 2025년 KONNI 연계 캠페인에서 확인된 것이 이 유형이다.

1-5. 악성코드 계보

악성코드 성격 특징
AppleSeed 백도어 (장기 주력) 문서·키입력·USB 수집. 2022년부터 C:\GPKI 디렉터리 수집 기능 추가
PebbleDash 백도어 오래된 계열. 이후 변종의 기반
httpMalice 백도어 (신규, 2026) PebbleDash와 AppleSeed 두 클러스터 특성 결합. Dropbox API 버전과 HTTP(S) 버전 존재. CacheDB 윈도우 서비스로 지속성 확보
HelloDoor 백도어 (신규, 2025.08~) 김수키 최초의 러스트(Rust) 기반 DLL 백도어. JSE 드로퍼로 배포, TryCloudflare 임시 터널을 C2로 사용. 코드 내 이모지 주석·문법 오류 → LLM 개발 정황
HTTPSpy 변종 정보 수집 2026년 ENKI 관측. 시스템 정보·화면 캡처·메모리 실행
AsyncRAT (오픈소스) RAT Operation GitPower에서 이미지 위장·RC4 암호화 형태로 배포
JSONPing 감염 확인 기법 실시간 감염 여부 확인

계보에서 읽어야 할 것: 김수키는 도구를 버리지 않고 누적한다. AppleSeed는 10년 가까이 유지되며 기능이 덧붙는다. 동시에 러스트 같은 신규 언어와 오픈소스 RAT을 병행 도입한다. 오래된 IoC를 폐기하지 말아야 하는 이유가 여기 있다.

1-6. 지속적으로 관측되는 TTP 패턴

  1. 정상 서비스 악용(LOTS) — GitHub, GitLab, Pastebin, Dropbox, TryCloudflare, VS Code 원격 터널. 모두 차단할 수 없는 신뢰 서비스다.
  2. 정상 도구 악용(LOLBin/LOTL) — PowerShell, 예약 작업, VS Code, DW에이전트, Google Find Hub.
  3. LNK 중심 초기 실행 — 10년 가까이 유지되는 핵심 기법.
  4. 신뢰 관계 악용 — 지인 사칭, 실제 회의 일정 확보 후 활용, 탈취 계정을 통한 2차 유포.
  5. 문서 위장 — 공문, 사례비 지급 의뢰, 언론 원고, 대사관 서신, 투자 전략 팩, 보험료 납부 안내.

2. 최근 12개월 활동 스펙트럼 (2025.09 ~ 2026.09)

AI 악용 사건 하나만 보면 전체 그림을 놓친다. 같은 기간 김수키(및 연계 클러스터)는 세 개의 축으로 동시 확장하고 있었다.

축 A — 파괴적 전환 - 정보 탈취를 넘어 직접 피해로

KONNI 연계 원격 초기화 캠페인 (2025.09 발생, 2025.11 공개, 지니언스)

단계 내용
초기 침투 국세청 사칭 피싱 메일 → 악성 파일 다운로드
계정 탈취 PC 침투 후 구글·네이버 등 IT 서비스 계정 장악
원격 초기화 구글 Find Hub(도난·분실 기기 관리 기능)를 악용해 피해자 스마트폰·태블릿 원격 초기화 — 사진·문서·연락처 전부 삭제
동시 유포 PC 버전 카카오톡으로 지인에게 '스트레스 해소 프로그램' 위장 악성파일 전송
소통 차단 지인이 진위를 확인하려 전화·문자를 해도 피해자 기기는 이미 초기화 진행 중
복구 방해 원격 초기화를 여러 차례 반복 실행
흔적 삭제 네이버 계정 로그인 후 구글 보안 경고 메일 삭제, 휴지통 기록까지 제거

표적: 탈북 청소년 전문 심리상담사, 북한인권운동가

분석적 의미: 국가 배후 해커가 기기 위치 추적과 원격 초기화를 감행한 사례는 이것이 처음으로 보고됐다. 지니언스는 데이터 삭제·계정 탈취·감시를 결합한 형태가 북한발 해킹에서 전례 없다고 평가했다. 사이버 작전이 정보전 단계를 넘어 개인의 물리적 일상을 직접 타격하는 단계로 이동했다는 신호다.

이 사건은 본 보고서의 AI 논의와 직접 연결되지는 않지만, 김수키 계열의 작전 목표가 확장되고 있다는 맥락을 제공한다. AI로 공격 준비 비용이 떨어지고, 작전 목표는 넓어지고 있다.

축 B — 정상 도구 악용의 심화

도구 악용 방식 출처
VS Code 원격 터널링 마이크로소프트 인프라를 경유하는 통신 → 기존 C2 탐지 무력화 카스퍼스키(2026.05), Darktrace(2026.01)
TryCloudflare 클라우드플레어 임시 터널을 HelloDoor의 C2로 사용 → 인프라 추적 곤란 카스퍼스키(2026.05)
DW에이전트 정상 원격관리 도구 악용 카스퍼스키(2026.05)
Dropbox API httpMalice의 통신 채널 카스퍼스키(2026.05)
GitHub / GitLab Raw Contents API로 페이로드·명령 배포. PAT 하드코딩 지니언스(2026.08), Fortinet(2026.04)
Pastebin GitHub 차단 시 백업 명령 채널 지니언스(2026.09)
Google Find Hub 피해자 기기 원격 초기화 지니언스(2025.11)
카카오톡 PC 탈취 계정으로 지인에게 2차 유포 지니언스(2025.11)
Webex 사칭 실제 회의 일정 확보 후 화상회의 서비스 위장 ENKI(2026.05)
기업 메신저 보안 프로그램 설치 페이지 위장 기업 관리자 표적 ENKI(2026.05)

방어의 면에서 의미: 이 목록에서 차단 가능한 항목은 거의 없다. 전부 업무에 필요한 정상 서비스다. 따라서 방어는 "무엇에 접속했는가?"가 아니라 누가, 어떤 프로세스로, 어떤 주기로 접속했는가? 로 관심 있게 살펴봐야 한다.

축 C — 인증서·자격증명 표적화

AppleSeed의 GPKI 수집 기능 (카스퍼스키, 2026.05)

AppleSeed 2.1 버전에서 2022년부터 C:\GPKI 디렉터리를 수집하는 기능이 추가된 것이 확인됐다. GPKI는 공무원과 공공기관 관계자가 정부 시스템 접속에 사용하는 전자인증서 저장 영역이다.

이것이 왜 심각한가? 단순 정보 탈취가 아니라 정부 시스템 접근 권한의 탈취다. 유출 시 공무원 계정 도용과 내부 시스템 접근으로 이어질 수 있다. 4년 전 추가된 기능이 이제야 공개 분석됐다는 점 또한 시사적이다 — 우리가 아는 것은 항상 지연되어 있다.

김수키 공격 프로파일링 종합

축 A (파괴)     ─── 개인 기기 초기화, 계정 탈취, 지인망 확산
                    → 작전 목표의 확장

축 B (은닉)     ─── 정상 서비스·도구 악용 심화
                    → 네트워크 계층 탐지의 무력화

축 C (권한)     ─── GPKI 등 인증서·자격증명 표적화
                    → 침해 영향 범위의 확대

축 D (자동화)   ─── AI 코딩 에이전트, 로컬 LLM, RAG, STT
   ← 본 보고서     → 공격 준비 비용의 붕괴

네 축은 독립적이지 않다. 축 D(AI)가 축 A·B·C의 실행 속도와 규모를 곱한다. 미끼 문서 제작 시간이 0에 수렴하면, 축 A의 표적 개인화가 쉬워지고, 축 C의 인증서 탈취 시도 횟수가 늘어난다. AI는 별도의 위협이 아니라 기존 모든 위협의 승수(multiplier)다.


3. Operation GitPower 공격 체인 기술 분석

3-1. 이번 변종의 개요

항목 내용
발견 2026년 9월 7일 (GSC 보고서 공개)
분석 대상 2026년 8월 수집 김수키 계열 악성 파일 13종, 미끼 문서 29건
사용 AI 도구 오픈소스 AI 코딩 에이전트 opencode
캠페인 Operation GitPower 변종
유포 이메일 첨부 ZIP 압축파일
위장 주제 보험료 납부 안내, 이자 납부 안내, 정책자금 지원 안내 (업체당 최대 1억 원, 연 2.0% 고정금리 등)

3-2. 전체 실행 흐름

스피어피싱 기반 GitHub 연계 악성코드 감염 및 AsyncRAT 배포 흐름도 — 김수키 Operation GitPower 변종 10단계

[1] 스피어피싱 이메일 (AI 생성 미끼 문서 첨부/연계)
     ↓
[2] ZIP 압축파일 다운로드 → 해제
     ↓
[3] 문서 아이콘·문서 파일명으로 위장한 LNK(바로가기) 실행
     │   · 약 3,800자 길이의 실행 인수
     │   · 앞단에 약 300개 연속 공백 삽입 → 속성창에서 실제 명령 은닉
     │   · LNK 설명란에 허위 메타정보 기입
     │     (Type: Hangul Document / Size: 2.84 KB / 실제는 약 304KB)
     ↓
[4] 사용자 정의 Base64 디코더로 복호화
     │   · [Convert]::FromBase64String() 의도적 회피
     │   · Base64 문자표 + 비트 연산 직접 구현
     ↓
     %TEMP%\poqpwoqwdjoweij.ps1 생성 → 숨김 PowerShell 실행
     ↓
[5] GitHub Raw에서 정상 PDF 다운로드 → 화면 표시 (피해자 인지 차단)
     │   · URL은 "ht" + "t" + "ps" 형태로 분할 결합
     │   · 계정명·저장소명도 조각으로 분산 저장
     │   · 요청 헤더에 GitHub PAT 하드코딩
     │   ↕ 동시에 백그라운드에서 악성 행위 진행
     ↓
[6] %AppData%\irujkdnjhgttrhdkfdu.ps1 생성 (중간 단계 스크립트)
     ↓
[7] 숨김 예약 작업 등록
     │   · 무작위 대문자명 (예: ZHUYHJGTYTFSUHIPOKLKHJHUYGVHGNFH)
     │   · 신규 변종은 BitLocker / MATLAB / .NET 등 정상 명칭 위장
     │   · 등록 후 약 5분 뒤 최초 실행, 이후 30분 주기 반복
     ↓
[8] GitHub Raw Contents API로 추가 명령 수신
     │   · 차단 시 Pastebin / GitLab 백업 채널로 전환
     ↓
[9] 시스템 정보 수집 → C2 업로드
     │   · <IP>-<MMDD_HHMM>-XXX_info.txt 형식
     │   · OS 버전·아키텍처, 시스템 구성, PC 유형,
     │     설치·부팅 이력, 실행 중 프로세스 목록
     ↓
[10] 이미지 확장자 위장 RC4 암호화 .NET 페이로드(AsyncRAT) 배포
     │   · apple.png, fox.png, lion.png, rabbit.png, wolf.png
     │   · 일부는 RTF 헤더로 변조 후 Gzip 헤더로 복구 → 압축 해제 → 로드

LNK 실행 인수가 약 3,800자이고 앞단에 약 300개 연속 공백이 들어가는 이유(7-5 Sigma의 .{1000,}·^\s{100,} 임계치), 그리고 11장 IoC의 %TEMP%\poqpwoqwdjoweij.ps1·%AppData%\irujkdnjhgttrhdkfdu.ps1은 이 체인의 [4]·[6] 단계에서 생성된다. 3-4의 AI 산출물 미검토 흔적(opencode 메타데이터, (임시값))은 5장에서 다룬다.

3-3. 탐지 회피 기능 (신규 변종 강화 사항)

  • 보안 분석 도구 실행 여부 사전 확인 → 탐지 시 즉시 작동 중단
  • 가상화·샌드박스 환경 감지 시 자체 정지
  • 명령어 실행 기록 자동 삭제
  • 정상 소프트웨어 명칭으로 위장한 예약 작업 등록
  • 정적 문자열 분석 회피를 위한 URL·식별자 분할 저장

3-4. OPSEC 실패 흔적

방어자에게 유용한 것은 공격자의 실수다. 이번 해킹 캠페인에서 확인된 것은 다음과 같다.

실수 노출된 정보
테스트 IP 잔존 링크로컬 주소 169.254.33.137이 페이로드 내부에 남음
한국 소재 C2 사용 112.216.9.171
PAT 하드코딩 GitHub 액세스 토큰 노출 (현재 폐기됨)
C2 서버 로그 노출 개발·테스트·AI 연구 환경 전체가 관측됨
테스트 데이터 잔존 내부 IP 172.16.11.141 포함 감염정보 파일 업로드 기록
계정 정보 노출 저장소 소유자명, 커밋 작성자 이메일
AI 산출물 미검토 opencode 메타데이터, (임시값) 잔존 — 5장 참조

4. 김수키의 AI 스택 — 관측된 실체

4-1. 세 개의 독립 관측이 수렴한다

출처 시점 관측 대상 증거 결론
카스퍼스키 2026.05 악성코드 HelloDoor 코드 내 이모지 주석, 비정상 문장 구조, 오타 악성코드 개발에 LLM 관여
지니언스 2026.08 C2 인프라 로그 로컬 LLM 3종 설치·구동 흔적, RAG DB, NuGet 에이전트 패키지, STT 도구, 한국어 학습자료 자체 AI 연구·개발 환경 구축
지니언스 2026.09 미끼 문서 29건 PDF 메타데이터 opencode, (임시값) 잔존, 생성시각 군집 실전 산출물 제작에 코딩 에이전트 사용

카스퍼스키는 코드를 보고, 지니언스는 인프라문서를 봤다. 관측 대상도 방법론도 다른 세 조사가 같은 결론에 수렴한다는 것은, 이것이 단일 벤더의 과잉 해석이 아니라는 강한 근거다.

참고로 카스퍼스키는 과거 블루노로프(BlueNoroff)의 PowerShell 기반 스틸러에서도 유사한 AI 코드 생성 흔적을 확인한 바 있다. 북한 사이버 조직 전반의 경향일 가능성이 있다.

4-2. 관측된 AI 스택 전체

계층 도구 확인 근거 공격적 함의
로컬 LLM 실행 Ollama .ollama\id_ed25519, id_ed25519.pub — 최초 실행 시 자동 생성되는 인증 키 (= 다운로드가 아니라 실제 구동) 외부 AI 서비스에 프롬프트 미전송 → OPSEC 확보
GPT4All LocalDocs-Setup-0.4.2.exe, AppData\Local\nomic.ai\GPT4All\ 오픈 모델 로컬 구동
Msty MstyStudio_x64.exe(Pictures 폴더에 은닉), msty-local-studio.exe 로컬·클라우드 LLM 통합 관리, MCP 연동 지원
RAG GPT4All LocalDocs localdocs_v3.db 생성, cache\models3.json 탈취 문서를 AI 지식베이스로 연결 — 대량 자료의 자동 가치 선별
에이전트 개발 LLaMaSharp (+ CUDA11/12 백엔드) Pictures\zzz\nupkg\ 내 NuGet 패키지 C# 프로그램에 LLM 직접 이식, GPU 추론 가속
Microsoft.SemanticKernel 동일 경로 다단계 계획·도구 호출 구현
Microsoft.Agents.AI 동일 경로 자체 악성 도구에 에이전트 기능 탑재
LangChain.providers.llamasharp 동일 경로 RAG·체이닝
Microsoft.Extensions.AI 동일 경로 다중 모델 공통 인터페이스
OpenAI, Azure.AI.OpenAI 동일 경로 상용 AI 서비스 연동 확보
코딩 에이전트 Cursor AI 설치본 다수, Pumpfun-AI-Attack-Defence-Requirements.md 편집, Test-com1.json에서 GitHub API 응답 클립보드 복사 C2 기능 개발·검증에 직접 사용
opencode 미끼 PDF 메타데이터 Producer/Creator 필드 잔존 실전 산출물 제작
코드 생성(추정) 미상 LLM HelloDoor 코드의 이모지 주석·문법 오류 악성코드 본체 개발
음성 처리 Whisper / faster-whisper whisper.7z, faster-whisper.7z, 한국어 실습자료 .mhtml 통화·회의 녹음 탈취물의 텍스트 전환 및 검색 편입
학습 한국어 ML/AI 기술 블로그 아카이브 Pictures\zzz\ 내 다수 .mhtml (ML.NET, LLaMaSharp, faster-whisper 관련) 습득 단계
문서 자동생성 python-docx / WPS 文字 3월 미끼 PDF 메타데이터 초기 단계 자동화 파이프라인

4-3. 능력 평가 — 과대평가도 과소평가도 경계

확인된 것: 공개 AI 모델과 프레임워크를 자신들의 개발 환경(주로 C#/.NET)에 결합하는 방법을 집중 학습·실험한 흔적. 그리고 그 결과물이 실전에 반영되기 시작한 지점.

확인되지 않은 것: 자체 모델 훈련(training)·파인튜닝의 근거. 대량 학습 데이터셋도, 훈련 산출물 모델 파일도 관측되지 않았다.

평가: 현재 단계는 "AI를 만드는" 단계가 아니라 존재하는 AI를 공격에 접목하기 위해 연구·습득하고, 일부를 실전 적용하는 단계다. 이 구분은 중요하다. 위협을 과장하면 대응 우선순위가 왜곡되고, 과소평가하면 준비 시간을 잃는다.

다만 다음 세 조합은 향후 위협 예측에 결정적이다.

조합 해소되는 병목 예상 효과
RAG × 탈취 문서 "무엇이 가치 있는 자료인가"를 사람이 판단하던 병목 침해 후 정보 활용 리드타임 급감
STT × 통화·회의 녹음 음성 데이터가 검색 불가 자산이던 문제 탈취 자산 범위 확대
에이전트 프레임워크 × C#/.NET 자체 도구에 AI 이식하는 개발 비용 감염 단말 내 자율 판단 가능성

4-4. 귀속(Attribution) 지표

유형 내용 단독 변별력
언어학적 두벌식 자판 키로그 복원 결과 싸이트, 가입리력, 로출되였는지, 리용하는 등 북한식 표기 반복. 백스페이스 교정 후에도 동일 표기 유지 → 오타가 아닌 내재화된 습관 높음
시스템 제조사 필드 Arirang — 국내 미확인, 북한 태블릿·스마트폰 브랜드로 알려진 명칭 중간
도구 Astrill VPN, AnyDesk 병행 실행 — 북한 IT 인력 위장취업 캠페인에서 반복 관측 중간
환경 중국어판 WPS Office 2019 사용, PDF 메타데이터 WPS 文字와 일치 중간
TTP 계보 2023 FlowerPower의 PowerShell 체계 계승, 2024 캠페인의 RTF→Gzip 기법 동일 높음
운영 습관 한글 작성 → Google 번역 → ChatGPT 프롬프트 제출 워크플로우 반복 낮음(단독)
검색 내용 외화벌이 관련 질의, btc를 리용하는 사용자, Doc exploit 공격 기법 질의 중간

종합: 언어학적 지표를 중심으로 시스템·환경·TTP 계보가 중첩되어 Moderate-High 수준의 귀속 신뢰도.

부수적 관찰: 위협 행위자는 Microsoft Defender의 보고 기능 해제 방법을 한글로 작성한 뒤 Google 번역으로 영어화해 ChatGPT에 질의했다. 재현 테스트 결과 번역 출력이 로그의 영문과 정확히 일치했다. 영어 프롬프트가 더 나은 답변을 준다고 믿는 실무자의 습관이 그대로 드러난다. 공격자도 우리와 같은 도구를 같은 방식으로 쓴다.


5. 핵심 분석 — "검토되지 않은 AI"

이 장이 본 보고서의 중심 논지다.

5-1. 북한 김수키, 공격자는 AI 산출물을 읽지 않았다

지니언스가 확보한 AI 사용의 결정적 증거는, 역설적이게도 모두 "검토하지 않았다"는 사실 자체다.

증거 구체적 내용 의미
메타데이터 잔존 PDF 제작자·생성자 필드에 opencode 그대로 기록. 3월 문서군은 python-docx / WPS 文字 산출물 속성을 한 번도 열어보지 않음
플레이스홀더 미치환 납부 주기: 매월 납입일(임시값), 연 2.0% 고정금리(임시값) — 한 문서에 최대 9차례 본문을 끝까지 읽지 않음
본문 중복 제목·용도가 다른데 본문이 80% 이상 동일 비교 검수를 하지 않음
생성 시각 군집 opencode 제작 PDF 4종이 초 단위까지 동일. 3월 문서군도 2주 간격인데 모두 오전 5시대, 40초 차 일괄 배치 생성 후 개별 후처리 없음
재사용 비율 29건 중 내용이 실제로 다른 것은 11종, 나머지 18건은 파일명만 변경 생성량이 검토 역량을 초과
템플릿 흔적 제목 영역의 이모지 다용, 균일한 표 구성·여백 규칙 — 정통 금융투자 자료에서는 매우 드문 문체 AI 문서 생성 서비스 기본 템플릿 그대로

5-2. 그리고 코드에서도 — HelloDoor의 이모지 주석

이것이 이번 리포트에서 가장 강조하고 싶은 교차 증거다.

카스퍼스키는 2026년 5월, 김수키 최초의 러스트 기반 DLL 백도어 HelloDoor를 분석하면서 코드 내부에 이모지가 포함된 주석과 비정상적 문장 구조, 오타를 확인했다. 그리고 이를 LLM으로 코드를 생성했을 가능성이 높은 정황으로 평가했다.

여기서 주목할 점은 두 가지다.

첫째, 이모지 주석은 사람이 쓰지 않는다. 최소한 국가 배후 조직의 백도어 소스에는 쓰지 않는다. 이것은 LLM이 기본 스타일로 붙인 주석이다.

둘째, 그것이 컴파일되어 실전 배포됐다. 누구도 소스를 훑어보지 않았다는 뜻이다. 코드 리뷰가 있었다면 이모지 주석 하나쯤은 지웠을 것이다.

정리하면 — 북한 김수키는 문서도 코드도 읽지 않았다.

산출물 미검토의 증거 발견
미끼 문서(PDF) opencode 메타데이터, (임시값) 9회, 80% 본문 중복 지니언스 2026.09
악성코드(Rust DLL) 이모지 주석, 문법 오류, 오타 카스퍼스키 2026.05

서로 다른 산출물 유형에서, 서로 다른 조사기관이, 같은 종류의 부주의를 발견했다. 이것은 우연한 실수가 아니라 작업 방식(workflow)의 특징이다.

5-3. 한국의 조직도 정확히 같은 실수를 하고 있다

반드시 짚어야 할 것이 있다. 위 실패 패턴은 북한 해킹 조직 특유의 것이 아니다. 한국의 기업·기관·공공영역에서 매일 관측되는 것과 동일하다.

국내 조직의 동형(同型) 사례

김수키의 실수 한국 조직의 동형 사례
미끼 문서에 (임시값) 9회 잔존 제출·결재 문서에 [여기에 수치 삽입], [회사명], TBD 잔존
PDF 메타데이터에 opencode 노출 외부 발송 문서 속성에 AI 도구명·이전 담당자명 잔존
29건 중 18건 파일명만 변경 재사용 서로 다른 사업 제안서인데 구조·문체·소제목이 사실상 동일
4개 문서 생성시각 초 단위 동일 한 번의 프롬프트로 뽑은 보고서 여러 건을 개별 검토 없이 병렬 제출
HelloDoor 이모지 주석 컴파일 배포 AI 생성 코드 리뷰 없이 머지 → 취약점 프로덕션 유입
AI 문서 그대로 발송 LLM이 만든 존재하지 않는 판례·논문·통계를 검증 없이 인용
본문 미확인 AI 요약본만 읽고 원문 미확인 상태에서 의사결정

공격자와 방어자가 같은 인지적 함정에 빠져 있다. 우연이 아니라 구조적 문제다.

5-4. 왜 같은 실수가 반복되는가 — 세 가지 구조적 원인

(1) 생성 비용과 검토 비용의 역전

AI는 생성 비용을 거의 0으로 만들었지만 검토 비용은 전혀 줄이지 못했다. 문서 10건을 만드는 데 30초, 읽는 데 40분이라면, 조직의 어느 지점에서든 검토는 반드시 생략된다. 김수키가 29건 중 18건을 파일명만 바꿔 재사용한 것은 게으름이 아니라 이 비대칭의 필연적 결과다.

(2) 완성도 착시 (Fluency Bias)

LLM 산출물은 틀렸을 때도 잘 쓰여 있다. 인간은 문장의 유창함을 내용 정확성의 신호로 오독하도록 학습되어 있다. 매끄러운 문장은 "이미 검토가 끝난 문장"처럼 보인다. 그래서 (임시값)이 아홉 번 남아 있어도 읽는 사람이 없다. 코드도 마찬가지다 — 잘 구조화된 러스트 코드는 리뷰가 끝난 코드처럼 보인다.

(3) 검증 루프의 부재

전통적 작업 공정에는 초안 → 검토 → 승인의 물리적 단계가 있었다. AI 파이프라인에서 이 단계는 명시적으로 설계하지 않으면 그냥 사라진다. 그리고 사라진 줄도 모르게 사라진다.

LLM은 엑셀이지 오라클이 아니다.

엑셀은 계산을 대신해 주는 도구지, 숫자의 진위를 보증하는 신탁(神託)이 아니다. 아무도 엑셀 수식 결과를 검산 없이 이사회에 올리지 않는다. 그런데 LLM 산출물에 대해서는 그 검산 단계를 통째로 생략한다.

김수키가 (임시값)을 그대로 발송한 것, 이모지 주석이 든 백도어를 컴파일해 배포한 것, 그리고 국내 조직이 AI 초안을 그대로 결재하는 것은 전부 같은 종류의 사고다.

5-5. 방어적 함의 ① — 지금은 기회다

공격자의 미검토는 방어자에게 즉시 활용 가능한 탐지 표면을 제공한다.

  • 메타데이터 지문opencode, python-docx, 특정 렌더러 서명
  • 플레이스홀더 문자열 — 정규식으로 즉시 탐지 가능, 오탐 낮음
  • 생성 시각의 초 단위 군집 — 배치 자동화의 명확한 신호
  • 본문 유사도 80%+ 클러스터 — 임베딩 기반 자동 식별, 캠페인 전체 규모 역산 가능
  • AI 템플릿의 시각적 패턴 — 이모지 다용, 균일한 표·여백 규칙
  • 코드 수준 — 악성코드 분석 시 이모지 주석·부자연스러운 문장 구조를 AI 생성 지표로 태깅

7장에 실무 탐지 로직을 정리했다.

5-6. 방어적 함의 ② — 그러나 반감기가 있다

이 기회는 오래가지 않는다. 위 지표는 전부 "공격자가 한 단계를 빠뜨렸기 때문에" 존재한다. 파이프라인 끝에 검수 단계 하나 — 혹은 그 검수를 수행할 또 다른 AI 에이전트 하나 — 를 붙이는 순간 전부 소멸한다. 메타데이터 제거는 명령어 한 줄이고, 플레이스홀더 검증은 정규식 한 줄이며, 주석 제거는 빌드 옵션 하나다.

동시에 반대 방향의 침식도 진행 중이다. 어색한 번역체, 조악한 서식, 맞춤법 오류 같은 전통적 피싱 판별 지표가 생성형 AI로 급속히 무력화되고 있다. "이상한 한국어면 의심하라"는 20년 된 교육 지침은 이미 유통기한을 지났다.

따라서 콘텐츠 판별을 방어의 중심에 두어서는 안 된다. 값싸고 빠른 1차 필터로 유지하되, 무게중심은 행위 기반 탐지로 옮겨야 한다. AI가 미끼 문서의 완성도와 제작 속도를 아무리 높여도, 엔드포인트에서 발생하는 실행·지속성·통신·페이로드 행위는 숨길 수 없다.

5-7. 방어적 함의 ③ — 역방향 위험: 우리의 미검토가 공격 표면이다

5-3에서 지적한 국내 조직의 미검토 관행은 단순한 품질 문제가 아니라 직접적 보안 취약점이다.

미검토 지점 발생하는 위협
AI 요약본만 읽고 원문 미확인 간접 프롬프트 인젝션 — 문서·메일·웹페이지에 심어진 지시문이 요약 AI를 조작. 사용자는 조작된 요약을 사실로 수용
AI 생성 코드 리뷰 없이 머지 하드코딩 크리덴셜, 취약한 암호화, 검증 누락 로직이 프로덕션 유입 (김수키가 자기 코드에 한 것과 같은 실수를 우리 프로덕션에서)
AI 제안 라이브러리 무검증 도입 슬롭스쿼팅(slopsquatting) — LLM이 환각한 패키지명을 공격자가 선점 등록
AI 보안 경보 분석 무검토 수용 오탐이 자동 종결되어 실제 침해 은폐. AI가 만든 사각지대
사내 LLM에 문서 무분별 연결(RAG) 접근통제 우회 — 권한 없는 문서 내용이 요약 형태로 유출
AI 회의록·전사 도구 무검토 사용 민감 회의 음성이 외부 서비스로 전송·보관

특히 마지막 두 항목은 김수키가 이미 실행 중인 것과 정확히 같은 기술이다. 그들이 탈취 문서를 RAG로 연결해 가치 있는 정보를 자동 선별하고, Whisper로 음성 탈취물을 텍스트화하고 있다면, 그 효율은 피해 조직이 문서와 녹음을 얼마나 무분별하게 축적해 두었는가에 정비례한다.


6. 다층 AI 방어 아키텍처

6-1. 설계 원칙

  1. 단일 계층 실패를 전제한다. 어떤 계층도 단독으로 이 공격을 막지 못한다. LNK 탐지가 뚫려도 예약 작업에서, 거기서 뚫려도 C2 통신에서 잡히도록 설계한다.
  2. AI를 계층마다 다른 역할로 배치한다. "AI 보안 솔루션 하나 도입"은 다층 방어가 아니다. 콘텐츠 계층의 AI, 상관분석 계층의 AI, 대응 자동화 계층의 AI는 서로 다른 문제를 푼다.
  3. 반감기가 짧은 계층에 의존하지 않는다. 콘텐츠 지표는 소모품, 행위 지표는 내구재다.
  4. 계층 간 신호는 결합해 점수화한다. 개별 신호는 오탐이 많다. 결합되어야 의미를 갖는다.
  5. AI 산출물을 사람이 읽는 지점을 반드시 남긴다. 5장의 교훈을 방어 측에 적용하는 방식이다.

6-2. 8계층 구조

AI 기반 사이버 위협 대응을 위한 다층 방어 체계 — 사람·프로세스·기술·거버넌스가 함께하는 L-1부터 L7 보안

┌──────────────────────────────────────────────────────────────┐
│  L7  거버넌스 · 사람의 검토 (AI Risk Governance)             │
│      AI 사용 정책 / HITL 의무화 / 검토 책임자 지정           │
│      AI 도구 오탐·미탐률 정기 측정 / RAG 접근통제 감사       │
├──────────────────────────────────────────────────────────────┤
│  L6  상관분석 · 자동화 (AI SOC / Agentic Triage)             │
│      계층 신호 결합 스코어링 / 알람 트리아지 / 대응 오케스트 │
├──────────────────────────────────────────────────────────────┤
│  L5  자격증명 · 인증서 (Credential Layer)   ★ 신규           │
│      GPKI·인증서 저장소 접근 감시 / 계정 이상 로그인         │
│      2FA 강제 / 브라우저 비밀번호 저장 금지                  │
├──────────────────────────────────────────────────────────────┤
│  L4  페이로드 (RAT / 암호화 바이너리)                        │
│      확장자-시그니처 불일치 / 메모리 스캔 / .NET 로드 감시   │
├──────────────────────────────────────────────────────────────┤
│  L3  네트워크 · C2 (GitHub / GitLab / Pastebin / Dropbox /   │
│      TryCloudflare / VS Code Tunnel)                         │
│      정상 서비스 악용 탐지 / PAT 이상 사용 / 주기성 비콘     │
├──────────────────────────────────────────────────────────────┤
│  L2  지속성 (예약 작업 / 서비스 / 자동실행)                  │
│      정상 명칭 위장 탐지 / 5분 지연·주기 실행 패턴           │
├──────────────────────────────────────────────────────────────┤
│  L1  실행 (LNK → PowerShell)              ★ 핵심 계층        │
│      긴 실행 인수 / 커스텀 디코딩 / 숨김 실행 / 부모-자식    │
├──────────────────────────────────────────────────────────────┤
│  L0  콘텐츠 (미끼 문서 / 첨부파일)         ※ 반감기 짧음     │
│      메타데이터 지문 / 플레이스홀더 / 유사도 클러스터링      │
├──────────────────────────────────────────────────────────────┤
│  L-1 사람 · 프로세스 (교육 / 신고 / 절차)                    │
└──────────────────────────────────────────────────────────────┘

   반감기 짧음 ←── L0 ─── L1 ─── L2 ─── L3 ─── L4 ─── L5 ──→ 반감기 긺
   (공격자 한 단계 추가로 소멸)          (기술적 필연이라 회피 어려움)

하위 계층(L0·L1)은 반감기가 짧고, 자격증명·지속성·C2처럼 기술적 필연에 가까운 상위 계층은 회피가 어렵다. 단일 계층에 의존하지 말고 신호를 결합한다.

6-3. 계층별 대응

L-1 — 사람·프로세스

  • 교육 내용을 갱신한다. "어색한 한국어를 의심하라"는 무효다. → 완성도 높은 문서일수록 출처를 확인하라
  • (임시값), [삽입], TBD플레이스홀더가 보이면 즉시 신고 대상임을 교육. 현재 가장 저렴하고 효과적인 지표다.
  • 지인이 보낸 파일도 확인한다. KONNI 캠페인의 핵심은 탈취 계정을 통한 신뢰 기반 유포였다. 카카오톡으로 온 실행 파일은 지인이 보냈어도 의심 대상이다.
  • 확인 전화가 안 될 때를 의심한다. 상대 기기가 초기화되어 연락이 두절된 상황 자체가 공격의 일부일 수 있다.
  • 압축파일 내부 LNK 실행 금지 원칙 재확립. 문서 아이콘을 신뢰하지 않도록 훈련.
  • 신고 채널의 마찰을 낮춘다. 신고 1건이 EDR 룰 1개보다 빠를 때가 있다.

L0 — 콘텐츠 계층 (AI 활용: 생성물 지문 탐지)

  • 메일 게이트웨이에서 첨부 문서의 메타데이터 자동 추출·검사
  • 플레이스홀더 정규식 스캔 (양방향 — 유입 및 유출)
  • 문서 임베딩 기반 유사도 클러스터링 → 캠페인 단위 묶음
  • 이 계층 단독 차단은 금지. 정상 업무에서도 AI 문서는 대량 유통된다. 스코어 가산 신호로만 사용.

L1 — 실행 계층 (핵심)

  • LNK 실행 인수 길이 임계치, 선행 공백 패턴
  • 표준 Base64 API 미사용 + 비트 연산 기반 커스텀 디코딩 패턴
  • 숨김 PowerShell, explorer.execmd.exe/powershell.exe 부모-자식 체인
  • 스크립트 블록 로깅 및 모듈 로깅 전면 활성화 — 이것이 없으면 나머지 탐지가 의미를 잃는다
  • 이메일 첨부 LNK 확장자 원천 차단
  • JSE·WSF 등 스크립트 드로퍼 차단 (HelloDoor 배포 경로)

L2 — 지속성 계층

  • 예약 작업 신규 생성 이벤트 전수 수집 (이벤트 ID 4698 등)
  • 정상 명칭 위장 탐지 — BitLocker/MATLAB/.NET 명칭이지만 실행 경로가 %AppData%·%TEMP%이거나 PowerShell 호출
  • 무작위 대문자 나열형 작업명
  • 5분 내외 지연 후 30분 주기 반복 패턴
  • 윈도우 서비스 신규 생성 감시 — httpMalice는 CacheDB 서비스로 지속성 확보

L3 — 네트워크·C2 계층

  • GitHub Raw / Contents API 접근을 업무 필요성 기준 화이트리스트화
  • 비업무용 계정·PAT를 통한 저장소 접근 탐지
  • 백업 채널 동시 감시 — Pastebin, GitLab만 막으면 이중화 설계에 무력
  • Dropbox API 이상 사용 감시 (httpMalice)
  • TryCloudflare *.trycloudflare.com 임시 터널 탐지 — 업무상 필요가 거의 없다
  • VS Code 원격 터널링 감시 — 마이크로소프트 인프라를 경유하므로 도메인 차단이 불가. 개발 부서 외 단말의 code tunnel 프로세스 실행 자체를 이상 신호로 처리
  • 주기성 비콘 분석 — 30분 정시성은 인간 트래픽과 구별된다
  • TLS 인스펙션 없이도 SNI·JA3/JA4 핑거프린트로 상당 부분 식별 가능

L4 — 페이로드 계층

  • 확장자-실제 시그니처 불일치 탐지 (.png인데 PNG 매직바이트 부재)
  • RTF 헤더 변조 → Gzip 복구 패턴
  • .NET 어셈블리 메모리 내 리플렉티브 로드 감시
  • AsyncRAT 계열 행위 시그니처
  • 러스트 컴파일 바이너리 증가에 대비 — 기존 .NET/PowerShell 중심 시그니처가 놓칠 수 있다

L5 — 자격증명·인증서 계층 (신규 강조)

  • C:\GPKI 디렉터리 접근·복사 이벤트 감시 — AppleSeed가 4년째 노리는 지점
  • NPKI, 브라우저 저장 비밀번호, 크리덴셜 매니저 접근 감시
  • 2단계 인증(2FA) 전면 강제 — KONNI 캠페인의 계정 탈취 방어 핵심
  • 브라우저 비밀번호 자동 저장 금지 정책
  • 구글·네이버 등 개인 계정의 이상 로그인 알림 활성화 및 경고 메일 삭제 여부 점검
  • 기기 원격 관리 기능(Find Hub 등)의 소유자 재확인 절차 강화 요구

L6 — 상관분석·자동화 계층 (AI 활용의 실질적 승부처)

개별 계층 신호는 전부 오탐이 많다. 결합되어야 의미를 갖는다.

신호 가중치
첨부 문서 메타데이터에 AI 도구 서명 +1
플레이스홀더 문자열 잔존 +2
ZIP 해제 직후 LNK 실행 +3
LNK 실행 인수 길이 > 1,000자 +3
숨김 PowerShell 구동 +3
%AppData%/%TEMP%에 .ps1 생성 +3
예약 작업 신규 등록(정상 명칭 위장) +4
신규 윈도우 서비스 생성 +3
GitHub Raw 접근 (비업무 계정/PAT) +4
*.trycloudflare.com 통신 +4
비개발 단말의 code tunnel 실행 +4
확장자-시그니처 불일치 파일 다운로드 +5
C:\GPKI 접근 +5

→ 누적 임계치 도달 시 자동 격리 및 분석가 에스컬레이션.

AI 에이전트는 이 계층에서 알람 요약, 관련 이벤트 수집, 유사 과거 사례 검색, 초동 조사 계획 수립을 담당한다. 다만 차단·격리·계정 정지 같은 되돌리기 어려운 조치의 최종 판단은 사람이 한다.

L7 — 거버넌스 계층 (5장의 교훈을 방어 측에 적용)

여기를 빠뜨리면 다층 방어가 아니다.

  • AI 산출물 검토 책임자를 명시적으로 지정한다. "누군가 볼 것"은 아무도 보지 않는다는 뜻이다.
  • 되돌릴 수 없는 조치에는 HITL(Human-in-the-Loop)을 의무화한다.
  • AI 보안 도구의 오탐·미탐률을 정기 측정하고 그 결과를 사람이 읽는 회의체에 올린다.
  • 사내 LLM/RAG에 연결되는 문서의 접근통제를 원본 권한과 일치시킨다. RAG는 접근통제를 자동 상속하지 않는다.
  • AI 생성 코드에 대한 리뷰 정책을 명문화한다. HelloDoor의 이모지 주석은 남의 일이 아니다.
  • AI 리스크 총괄 임원(AI Risk Officer) 지정 및 거버넌스 위원회 구성.
  • 직원의 외부 AI 서비스 사용에 대한 실무적 정책 — 전면 금지는 섀도 AI를 만들 뿐이다. 허용 범위와 금지 데이터 유형을 명시하고 승인된 도구를 제공한다.

7. 실무 탐지 로직

아래는 개념 검증용 의사코드다. 실제 배포 전 자사 환경에서 오탐률을 반드시 측정할 것.

7-1. 문서 메타데이터 헌팅

# 메일 게이트웨이 격리 큐 또는 파일서버 대상
exiftool -r -json -Producer -Creator -Author \
         -CreateDate -ModifyDate /path/to/attachments \
  | jq -r '.[] | select(
      (.Producer // "" | test("opencode|python-docx"; "i")) or
      (.Creator  // "" | test("opencode|python-docx|WPS"; "i"))
    ) | "\(.SourceFile)\t\(.Producer)\t\(.Creator)\t\(.CreateDate)"'

추가 신호

  • CreateDate == ModifyDate (편집 이력 부재)
  • 동일 캠페인 내 문서들의 생성 시각이 60초 이내 군집
  • 생성 시각이 업무 시간대를 벗어난 특정 시각에 반복 집중 (관측 사례: 오전 5시대)

7-2. 플레이스홀더 잔존 스캔

(?i)(\(임시값\)|\[임시\]|임시값|삽입\s*필요|여기에\s*\S{0,10}\s*입력|
     \[(회사명|담당자|금액|날짜|기관명|성명)\]|
     \bTBD\b|\bTODO\b|\bXXX\b|\bplaceholder\b|\blorem ipsum\b|
     \{\{[^}]{1,40}\}\}|<insert[^>]{0,30}>)
  • 적용 지점 1 (외부 유입): 첨부 문서 스캔 → 스코어 가산
  • 적용 지점 2 (내부 유출 방지): 외부 발송 문서에 동일 규칙 적용

하나의 룰이 양방향으로 작동한다. 유입 측에서는 공격자의 미검토 AI를 잡고, 유출 측에서는 우리 조직의 미검토 AI를 잡는다. 5장의 논지가 그대로 룰 하나로 구현된다.

7-3. 문서 유사도 클러스터링

# 개념 코드 — 캠페인 단위 미끼 문서군 식별
from sklearn.metrics.pairwise import cosine_similarity

# 1) 최근 N일 격리/의심 문서의 본문 텍스트 추출
# 2) 임베딩 생성 (로컬 임베딩 모델 권장 — 외부 전송 회피)
# 3) 코사인 유사도 행렬 계산
sim = cosine_similarity(embeddings)

# 4) 제목은 다른데 본문 유사도가 임계치를 넘는 쌍 = 동일 생성 파이프라인 의심
THRESHOLD = 0.80
suspects = [(i, j) for i in range(len(docs)) for j in range(i + 1, len(docs))
            if sim[i][j] >= THRESHOLD and title_distance(docs[i], docs[j]) > 0.5]

# 5) 연결 성분(connected component)으로 캠페인 클러스터 도출
#    → 29건 중 18건이 파일명만 바뀐 재사용이었다는 사실을 상기할 것.
#      클러스터 하나로 캠페인 전체 규모를 역산할 수 있다.

7-4. AI 생성 코드 지표 (악성코드 분석용)

# 리버싱·소스 확보 시 AI 생성 정황 태깅 기준
- 주석 내 이모지 존재                        → 강한 신호
- 주석의 문장 구조가 코드 스타일과 불일치     → 중간
- 변수명은 정교한데 주석에 오타·문법 오류     → 중간
- 과도하게 친절한 설명형 주석                 → 약한 신호
- 사용되지 않는 방어적 예외 처리의 과잉       → 약한 신호
- 동일 조직 타 샘플과 코드 스타일 급변        → 중간

※ 단독으로는 귀속 근거가 되지 못한다. 다른 지표와 결합해
   "개발 워크플로우 변화"의 정황으로만 사용할 것.

7-5. LNK 실행 상관 (Sigma 스타일)

title: LNK-Initiated Hidden PowerShell with Oversized Arguments
id: kimsuky-gitpower-lnk-001
status: experimental
description: Operation GitPower 계열 LNK 초기 실행 탐지
logsource:
  category: process_creation
  product: windows
detection:
  parent_explorer:
    ParentImage|endswith: '\explorer.exe'
    Image|endswith:
      - '\powershell.exe'
      - '\cmd.exe'
      - '\wscript.exe'
  hidden_exec:
    CommandLine|contains:
      - '-w hidden'
      - '-WindowStyle Hidden'
      - '-nop'
      - '-ep bypass'
      - '-enc'
  long_cmdline:
    CommandLine|re: '.{1000,}'
  leading_space:
    CommandLine|re: '^\s{100,}'
  custom_b64:
    CommandLine|contains|all:
      - 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
    CommandLine|contains:
      - '-band'
      - '-bor'
      - '-shl'
  condition: parent_explorer and (hidden_exec or long_cmdline or leading_space or custom_b64)
falsepositives:
  - 사내 배포 스크립트
  - 일부 소프트웨어 설치 관리자
level: high

7-6. 위장 예약 작업 및 서비스 탐지

# 예약 작업
EventID = 4698 (Scheduled Task Created)
AND (
    TaskName matches "^[A-Z]{16,}$"                      # 무작위 대문자 나열
    OR (
        TaskName contains ("BitLocker","MATLAB",".NET","Update","Microsoft")
        AND TaskCommand contains ("powershell","cmd","%AppData%","%TEMP%","\\Roaming\\")
    )
    OR (Trigger.Delay between 3m and 10m AND Trigger.Repetition between 15m and 60m)
)

# 윈도우 서비스 (httpMalice 대응)
EventID = 7045 (Service Installed)
AND ServiceName in ("CacheDB", ...)  OR
    ImagePath contains ("%AppData%","%TEMP%","\\Roaming\\")

정상 명칭을 쓰지만 실행 경로가 사용자 프로파일 하위라는 조합이 가장 강한 신호다.

7-7. 정상 서비스 악용 C2 헌팅

# GitHub / GitLab / Pastebin / Dropbox
(dest_host in ("raw.githubusercontent.com","api.github.com",
               "gitlab.com","pastebin.com","paste.ee",
               "api.dropboxapi.com","content.dropboxapi.com"))
AND process NOT in (승인된 개발도구 화이트리스트)
AND (
     process in ("powershell.exe","cmd.exe","wscript.exe","mshta.exe","rundll32.exe")
     OR http.header contains "Authorization: token ghp_"
     OR beacon_interval_stddev < 5s      # 정시성 = 자동화
)

# TryCloudflare 임시 터널 (HelloDoor)
dns.query matches "*.trycloudflare.com"
→ 업무상 필요가 거의 없으므로 단독으로도 조사 가치 높음

# VS Code 원격 터널 (도메인 차단 불가 — 프로세스로 잡는다)
process_name = "code.exe" AND command_line contains "tunnel"
AND host NOT in (개발자 단말 그룹)
→ 비개발 부서 단말의 code tunnel 실행은 그 자체로 이례적

주의: 개발 조직에서는 오탐이 크다. 반드시 프로세스 화이트리스트와 결합하고, 개발자 서브넷과 일반 사무 서브넷의 기준선을 분리한다.

7-8. 위장 페이로드 탐지

# 확장자와 실제 시그니처 불일치
for f in *.png *.jpg *.gif; do
  magic=$(xxd -p -l 8 "$f")
  case "$f" in
    *.png) [[ "$magic" == 89504e47* ]] || echo "MISMATCH: $f ($magic)" ;;
    *.jpg) [[ "$magic" == ffd8ff*    ]] || echo "MISMATCH: $f ($magic)" ;;
    *.gif) [[ "$magic" == 47494638*  ]] || echo "MISMATCH: $f ($magic)" ;;
  esac
done
# 추가: RTF 헤더(7b5c727466) 변조 후 Gzip(1f8b0800) 복구 패턴 감시

7-9. 자격증명·인증서 계층 감시

# GPKI 인증서 디렉터리 접근 (AppleSeed 대응)
FileAccess.Path startswith "C:\\GPKI"
AND process NOT in (승인된 인증서 관리 프로그램)
→ 복사·압축·네트워크 전송 이벤트와 상관분석

# 브라우저 자격증명 저장소 접근
FileAccess.Path contains ("Login Data","Web Data","logins.json","key4.db")
AND process NOT in (해당 브라우저 프로세스)

# 계정 이상 징후 (KONNI 계열 대응)
- 신규 기기 로그인 알림 발생 직후 해당 알림 메일 삭제
- 짧은 시간 내 다수 서비스(구글·네이버 등) 로그인
- 기기 원격 관리 기능(Find Hub 등) 호출 이력

8. 조직별 실행 권고

즉시 (24~72시간)

  • 이메일 게이트웨이에서 LNK 확장자 첨부 차단 (압축파일 내부 포함), JSE·WSF 등 스크립트 드로퍼 병행 차단
  • PowerShell 스크립트 블록 로깅 및 모듈 로깅 활성화 — 미적용 시 이후 모든 탐지가 무력
  • 7-2의 플레이스홀더 정규식을 메일 게이트웨이에 탐지 전용(비차단) 으로 배포
  • IoC(11장) 기반 과거 90일 로그 소급 헌팅
  • 비개발 부서 단말의 GitHub Raw / Pastebin / *.trycloudflare.com 접근 이력 점검
  • C:\GPKI 접근 이벤트 소급 조회 (공공기관·정부 협력 조직 우선)
  • 전 임직원 2FA 적용 여부 확인

30일 내

  • EDR에서 7-5 · 7-6 룰 튜닝 후 운영 전환
  • 예약 작업·서비스 생성 이벤트 전수 수집 파이프라인 구축
  • GitHub/GitLab/Pastebin/Dropbox 접근 화이트리스트 정책 수립 (개발/비개발 분리)
  • VS Code 원격 터널·TryCloudflare 탐지 룰 배포
  • 보안 교육 자료 개정 — "어색한 문장 의심" → "완성도 높은 문서일수록 출처 확인" + 플레이스홀더 신고 지침 + 지인 발신 파일 확인 절차
  • 사내 AI 사용 정책 초안 — 허용 도구, 금지 데이터 유형, 검토 책임자 지정
  • AI 생성 코드 리뷰 정책 명문화

90일 내

  • 계층 신호 결합 스코어링(6-3, L6) 구현 및 임계치 캘리브레이션
  • 문서 유사도 클러스터링 파이프라인 구축 (로컬 임베딩 모델 권장)
  • 사내 LLM/RAG 연결 문서의 접근통제 원본 권한 일치 감사
  • AI 활용 공격 시나리오 기반 모의훈련(TTX) 1회 이상 실시 — KONNI형 계정 탈취·기기 초기화 시나리오 포함
  • AI 보안 도구 오탐/미탐률 정기 측정 체계 및 보고 회의체 신설
  • AI 리스크 총괄 책임 지정 및 거버넌스 위원회 구성
  • 러스트 등 비주류 언어 컴파일 바이너리에 대한 분석 역량 점검

9. 전망 — 세 가지 시나리오

시나리오 내용 관측 지표 확률
기준선 (12개월) 검수 단계 추가로 플레이스홀더·메타데이터·이모지 주석 소멸. 미끼 문서 품질 균질화. 침투 기법은 LNK/PowerShell 유지 메타데이터 정제 흔적, 문서 중복률 하락, 코드 주석 정리 높음
가속 (6~18개월) RAG를 통한 탈취 자료 자동 선별 본격화. 표적별 맞춤 미끼 문서 자동 생성. STT로 음성 탈취물 분석 편입. 침해 후 정보 활용 속도 급상승 탈취-후속공격 리드타임 단축, 개인 맞춤 스피어피싱 증가 중간
비관 (18개월+) 에이전트 프레임워크가 악성코드에 이식되어 감염 단말 내에서 자율 정찰·판단·확산. C2 왕복 최소화로 탐지 난이도 상승 감염 단말 C2 통신량 감소 + 내부 정찰 행위 증가라는 상반 신호 낮음~중간

공통 함의: 세 시나리오 모두에서 콘텐츠 기반 판별의 가치는 하락하고 행위 기반 탐지의 가치는 유지되거나 상승한다. 투자 우선순위는 여기서 결정된다.

추가 관찰 포인트

  • 김수키가 러스트 채택을 확대하는지 (분석 난이도 상승 목적)
  • MCP(Model Context Protocol) 기반 도구 연동이 공격 도구에 나타나는지 — Msty 설치는 그 가능성을 시사한다
  • 자체 모델 파인튜닝 흔적이 최초로 관측되는 시점
  • 축 A(파괴적 공격)와 축 D(AI 자동화)의 결합 — 표적 개인화된 파괴 공격

10. 마무리하며, AI에는 AI가, 그러나 읽는 사람이 있어야 한다

김수키 사건에서 가장 오래 기억해야 할 장면은 로컬 LLM 구축도, 에이전트 프레임워크 수집도 아니다. (임시값)이 아홉 번 남아 있는 문서가 표적의 메일함으로 발송됐다는 사실이다. 그리고 이모지가 들어간 주석이 컴파일되어 백도어로 배포됐다는 사실이다.

국가의 사이버 작전 조직이, 십수 년간 축적한 인프라와 기법을 동원해, AI가 30초 만에 뽑아낸 문서를 한 번도 읽지 않고 보냈다. AI가 써준 코드를 한 줄도 훑어보지 않고 컴파일했다. 그리고 그 부주의 덕분에 우리는 그들이 무엇을 쓰는지 알게 됐다.

여기서 얻어야 할 교훈은 두 개다. 하나는 자명하다. AI로 공격하는 상대는 AI로 막아야 한다. 30초에 문서 10건이 나오는 속도를 사람의 눈으로 따라잡을 수 없다. 탐지, 트리아지, 상관분석, 초동 대응의 1차 방어선은 자동화되어야 한다.

그러나 두 번째 교훈이 훨씬 중요하고, 훨씬 자주 잊힌다. 그들이 실패한 지점에서 우리도 매일 실패하고 있다.

플레이스홀더가 남은 채 결재되는 보고서. 리뷰 없이 머지되는 AI 생성 코드. 원문을 확인하지 않은 요약본 위에서 내려지는 의사결정. 김수키가 미끼 문서를 읽지 않은 것과 우리가 AI 초안을 읽지 않는 것은 원인이 같다. 생성 비용은 0으로 떨어졌는데 검토 비용은 그대로이기 때문이다.

그래서 "AI로 막아야 한다"는 명제는 절반만 맞다. AI 보안 솔루션을 도입하고 그 출력을 아무도 읽지 않으면, 우리는 공격자와 정확히 같은 실수를 더 비싼 도구로 반복하는 것이다. AI가 종결 처리한 오탐 뒤에 실제 침해가 숨어 있어도 알 수 없다. AI가 만든 사각지대는 사람이 만든 사각지대보다 크고, 훨씬 조용하다.

LLM은 엑셀이지 오라클이 아니다. 엑셀은 계산을 대신하지만 숫자의 진위를 보증하지 않는다. 아무도 엑셀 수식 결과를 검산 없이 이사회에 올리지 않는다. LLM에 대해서만 그 검산을 생략할 이유는 없다.

다층 방어가 필요한 진짜 이유가 여기 있다. 어떤 계층도 완벽하지 않고, AI 계층도 예외가 아니기 때문이다. 콘텐츠 계층이 뚫리면 실행 계층이, 실행 계층이 뚫리면 지속성 계층이, 그마저 뚫리면 네트워크와 자격증명 계층이 잡아야 한다. 그리고 그 모든 계층 위에, 결과를 실제로 읽는 사람이 있어야 한다.

김수키가 우리에게 알려준 것은 AI가 얼마나 위험한 무기인가가 아니다. AI를 검토 없이 쓰는 조직이 얼마나 많은 흔적을 남기는가다. 지금은 그 흔적이 그들의 것이지만, 검토를 생략하는 습관이 우리에게 있는 한, 다음 번 흔적은 우리 것이 될 수 있다.

AI는 이미 해킹의 도구가 되었다. 이제 AI는 방어의 도구도 되어야 한다. 다만 그 방어가 작동하는지는, 여전히 사람이 확인해야 한다.


11. 침해지표 (IoC)

출처: 지니언스 시큐리티 센터 (2026.08.10). 조직 환경에서 소급 헌팅에 활용할 것. 주의: IoC는 공표 시점 기준이며 시간 경과에 따라 유효성이 급감한다. 반드시 행위 지표와 병행할 것.

C2 IP

27.102.137[.]126
27.102.137[.]159
27.102.138[.]44
112.216.9[.]171      ← 한국 소재
170.205.29[.]83
170.205.30[.]227
185.27.134[.]140
169.254.33[.]137     ← 공격자 테스트 흔적 (OPSEC Fail, 링크로컬)
172.16.11[.]141      ← 공격자 테스트 환경 내부 IP

도메인

stoks.great-site[.]net
*.trycloudflare[.]com   ← HelloDoor C2 (임시 터널, 와일드카드 모니터링 권장)

연계 이메일 계정

apollo1030109@gmail[.]com          awed33@outlook[.]kr
belendong40@gmail[.]com            brandonleeodd.93@gmail[.]com
contrasde@outlook[.]kr             devlion413@gmail[.]com
eros1030109@gmail[.]com            hera1030109@gmail[.]com
holowin401@gmail[.]com             holowin@gmail[.]com
jecoma@outlook[.]kr                johnstones19850308@gmail[.]com
johnstones8888@outlook[.]com       kkkkk79@outlook[.]kr
tomas3015@outlook[.]kr             trungvo5131993@gmail[.]com
tttsssuuu@outlook[.]kr             whitewolf20000312@gmail[.]com

파일 경로 지표

%TEMP%\poqpwoqwdjoweij.ps1
%AppData%\irujkdnjhgttrhdkfdu.ps1
%AppData%\lpieuysjfgtrja.ps1
%AppData%\ms_update.ps1
%AppData%\<IP>-<MMDD_HHMM>-XXX-kkk.txt
%AppData%\Microsoft\<IP>-<MMDD_HHMM>-0956_info.txt

예약 작업 / 서비스명

ZHUYHJGTYTFSUHIPOKLKHJHUYGVHGNFH   (예약 작업)
CacheDB                             (httpMalice 서비스)

파일 해시 (MD5)

02ebc2356f9f700bbdac444cdefa0da2   0d8ceb7dea7d471afa2f8e753b13d2d6
1f378c0efc13669dada1fe340c6837bd   2669731cb5ff664dfb5fbfc37637876d
2ab3df4762fbde5d86e99a1ad147850e   2e76d5316663a3dc472398b1c01cb9a8
2eb77109cce1e8afca6245c2963e52a6   302725413076d1aeaee2d7f2b3692646
30792a0c0dfad55fb2b19d3e30e9a7d4   30d5f17d5e3f85be18220a7cab0b9fff
37cec428257cd41153cf43d7f1a12652   3b9d40f3d620ec87960b4350d42ccc03
3e2110d233d4543830e14c78d53900f4   422a221851ea6ad15f53cd3aea51c8af
49bdbe7e6cbb88842afcce3a9fe60e9b   4d87fef16790cbe1df72007d99149665
5577fffb5b5acd3771ef9dc696498f1e   5af95590a33b9bc64d95808f1fc71b78
5c5672bb14e1d2f07a8318ffec19b213   6add815cd61d6514f81a23ab8c23405a
73ff669fc282653bd6c42cf87ade9337   7f12fa589f56f6203c692715b3958d30
8406075af0a1e9ec09bafdc0de01f138   8c859a03814443c6f0da341ee594c352
a1c07ac866fb6b388e38c6bb1d4bbe94   a343d8bcf02a0554fa271452a512f3ce
a435292106026e257789036a70ee1a14   a5701848f82c65a55765dc534111899f
aa9d5dd632bb90addca480eaa5ff4382   af3fa7f22f6e97901f20326cc12bdb49
b406ea5b8628cb7801f47c0189b96182   b50dad56d891ef230656b37ce62cdada
b516ec6c6b37618ad65080a063270ea4   ba0238423b5c29667cd760ccd7b000aa
ba8e682a72c6a3e634c070f0fb057bf5   bbf1b0ab9fc27439de4386ed7b8fc151
c410055bfa198937825dfd7e41000e7a   c63d021de798034cbf933e1c99bcb83f
c7723bf166ef08ff3112257a1244f584   ca0b57807f79f26e7f59cab2a2542da0
e0e4aec6d494fe68cdaa52d6878a8366   e22367800e9d39bc865bd50cddd0537d
ead95793528572e7b89679860e2f2116   ed2f8dd9b96d706d833b7aa545b8e621
f4e7ca8c1de252840c1f0e957cd4b717   f73e07efb8707e3561e9cbff74557acb

행위 지표 (Behavioral IoC — IoC보다 수명이 길다)

  • %TEMP%%AppData% 경로의 무의미 문자열 .ps1 파일 생성
  • 무작위 대문자 나열형 예약 작업명
  • 이미지 확장자를 가진 RC4 암호화 .NET 어셈블리
  • 300자 내외 선행 공백을 포함한 LNK 실행 인수
  • 표준 Base64 API 미사용 + 비트 연산 커스텀 디코더
  • PDF 메타데이터의 opencode, python-docx, WPS 文字
  • 문서 본문의 (임시값) 잔존
  • 악성코드 주석 내 이모지 및 문법 오류
  • C:\GPKI 디렉터리 접근·수집
  • 비개발 단말의 code tunnel 실행

12. MITRE ATT&CK 매핑

전술 기법 관측 내용
Resource Development T1588.007 Obtain Capabilities: Artificial Intelligence 로컬 LLM 구축, 코딩 에이전트 사용, 에이전트 프레임워크 수집
Resource Development T1585.002 Establish Accounts: Email Accounts 다수 Gmail/Outlook 계정 운용
Resource Development T1587.001 Develop Capabilities: Malware HelloDoor, httpMalice 자체 개발
Initial Access T1566.001 Spearphishing Attachment ZIP 첨부 스피어피싱
Initial Access T1566.002 Spearphishing Link 보안 프로그램 설치 페이지·Webex 사칭
Initial Access T1199 Trusted Relationship 탈취 계정 통한 지인 대상 유포
Execution T1204.002 User Execution: Malicious File LNK 실행 유도
Execution T1059.001 Command and Scripting Interpreter: PowerShell 난독화 PowerShell 로더
Execution T1059.007 JavaScript JSE 드로퍼 (HelloDoor)
Persistence T1053.005 Scheduled Task/Job 위장 예약 작업 등록
Persistence T1543.003 Create or Modify System Process: Windows Service CacheDB 서비스 (httpMalice)
Defense Evasion T1027 Obfuscated Files or Information 커스텀 Base64, 문자열 분할
Defense Evasion T1140 Deobfuscate/Decode Files or Information 자체 디코딩 루틴
Defense Evasion T1036.005 Masquerading: Match Legitimate Name or Location BitLocker/MATLAB/.NET 명칭 위장
Defense Evasion T1036.008 Masquerade File Type 이미지 확장자 위장, RTF 헤더 변조
Defense Evasion T1497 Virtualization/Sandbox Evasion 분석 환경 감지 시 자체 정지
Defense Evasion T1070.003 Indicator Removal: Clear Command History 실행 기록 삭제
Defense Evasion T1070.008 Clear Mailbox Data 보안 경고 메일 및 휴지통 기록 삭제
Defense Evasion T1218 System Binary Proxy Execution VS Code 등 정상 서명 도구 악용
Credential Access T1555.003 Credentials from Web Browsers 브라우저 저장 비밀번호
Credential Access T1552.004 Unsecured Credentials: Private Keys GPKI 전자인증서 수집
Discovery T1082 System Information Discovery OS·아키텍처·프로세스 목록 수집
Collection T1123 Audio Capture / STT 연계 Whisper 기반 음성 자료 처리
Collection T1113 Screen Capture HTTPSpy 변종
Command & Control T1102.001 Web Service: Dead Drop Resolver GitHub/Pastebin C2
Command & Control T1071.001 Application Layer Protocol: Web Protocols HTTPS 기반 통신
Command & Control T1572 Protocol Tunneling TryCloudflare, VS Code 원격 터널
Exfiltration T1567.002 Exfiltration Over Web Service: Cloud Storage Git 저장소·Dropbox 업로드
Impact T1485 Data Destruction 안드로이드 기기 원격 초기화 (KONNI 연계)

13. 참고 자료

번호는 섹션이 바뀌어도 이어진다. 본문에서 "참고자료 n"은 아래 [n]을 가리킨다.

1차 출처 — 보안 업계 분석 보고서

[1] 지니언스 시큐리티 센터, 「AI를 공격 체계에 접목하는 김수키, 미끼 문서 제작부터 로컬 LLM 구축까지」 (2026.08.10) https://www.genians.co.kr/blog/threat_intelligence/kimsuky_ai_llm [2] 지니언스 시큐리티 센터, 오픈코드(opencode) 활용 미끼 문서 관련 위협 인텔리전스 보고서 (2026.09.07) [3] 지니언스 시큐리티 센터, 「국가 배후 위협 조직의 안드로이드 디바이스 대상 원격 초기화 전술」 (2025.11) https://www.genians.co.kr/blog/threat_intelligence/android [4] 지니언스 시큐리티 센터, 「FlowerPower」 캠페인 보고서 (2023) https://www.genians.co.kr/blog/threat_intelligence/flowerpower [5] 지니언스 시큐리티 센터, 「새해 오피니언 언론 칼럼 위장 해킹 분석」 (2024.02) https://www.genians.co.kr/blog/threat_intelligence/nation-state [6] 지니언스 시큐리티 센터, 「한국내 macOS 이용자를 노린 APT37 공격 등장」 (2023.06) https://www.genians.co.kr/blog/threat_intelligence/_macos [7] 카스퍼스키, 킴수키 최신 공격 캠페인 심층 분석 보고서 — HelloDoor, httpMalice, AppleSeed GPKI (2026.05) [8] ENKI, 「JSONPing, 웹엑스(Webex) 사칭, 새로운 HTTPSpy 변종」 분석 보고서 (2026.05.27) [9] Fortinet, "DPRK-Related Campaigns with LNK and GitHub C2" (2026.04) https://www.fortinet.com/blog/threat-research/dprk-related-campaigns-with-lnk-and-github-c2 [10] Darktrace, VS Code 터널 악용 분석 (2026.01.21) [11] Mandiant, "APT43: North Korean Group Uses Cybercrime to Fund Espionage Operations" (2023) [12] AhnLab ASEC, 「2026년 7월 APT 그룹 동향 보고서」 (2026.08) https://asec.ahnlab.com/ko/95038/

정부·국제기구 자료

[13] U.S. Department of the Treasury OFAC, "Treasury Targets DPRK's International Agents and Illicit Cyber Intrusion Group" — 김수키 제재 지정 (2023.11.30) [14] NSA·FBI·국무부·한국 관계기관 공동 보안권고, "DPRK Using Social Engineering to Enable Hacking" (2023.06) [15] MSMT(다국적제재모니터링팀), 북한 사이버 조직 구조 관련 자료 — 63연구소 소속 분류 [16] 국가정보원, 정보보호업체 대상 사이버 위협사례 자료 (2024.06)

국내 언론

[17] 동아일보, 「해킹용 미끼 AI로 뚝딱…北김수키, 코딩 에이전트까지 끌어들여」 (2026.09.07) [18] 연합뉴스, 「[AI프리즘] 북한 김수키, AI 코딩 에이전트까지 썼다…해킹 자동화」 (2026.09.07) [19] 조선비즈, 「'보험료 내세요'…北 김수키 해킹에 AI 코딩 에이전트 악용」 (2026.09.07) [20] 비즈니스포스트, 「'이자 납부 안내입니다', 북한 해킹조직 '김수키' AI로 미끼문서까지 제작」 (2026.09.07) [21] 서울신문, 「北, AI 에이전트로 '자동 해킹 공격'」 (2026.09.08) [22] 한국경제, 「北 해커 김수키, AI로 자동공격 노려」 (2026.08.24) [23] 데일리시큐, 「"킴수키, AI 활용해 악성코드 개발 정황 포착"…한국 군·정부·방산 집중 공격」 (2026.05.14) [24] 데일리시큐, 「북한 해킹조직 킴수키, 3월과 4월 한국 군·기업 겨냥 신종 공격 정황 포착」 (2026.05.29) [25] 테크월드, 「킴수키도 AI 악성코드 개발...한국 방산·군 집중 공격」 (2026.05.14) [26] 서울신문, 「북한 해킹조직, '먹통' 공습…스마트폰·PC·카톡까지 장악」 (2025.11.10) [27] 세계일보, 「일상 파고든 北 해킹조직… 스마트폰 초기화·카톡 원격조종」 (2025.11.10) [28] 동아일보, 「"北배후 해커, 개인 폰 원격조종-카톡 공격"」 (2025.11.11) [29] 보안뉴스, 「라자루스 이어 김수키? 북한 추정 해커그룹, 외화벌이 '올인'」 (2019.01.17)

해외 언론

[30] Yonhap News Agency, "N.K. hacking group Kimsuky used AI coding agents to create decoys: report" (2026.09.07) [31] Korea JoongAng Daily, "North Korea-linked hackers turn to AI agents for malicious email decoys" (2026.09.07) [32] The Korea Times, "NK hacking group Kimsuky used AI coding agents to create decoys: report" (2026.09.07) [33] NK News, "North Korean cybercriminals use AI coding agent to enhance phishing attacks" (2026.09.07) [34] BleepingComputer, "US govt sanctions North Korea's Kimsuky hacking group" (2023.12.01) [35] CyberScoop, "U.S. government sanctions prolific North Korean cyber espionage unit" (2023.12.01) [36] The Record, "US sanctions North Korean 'Kimsuky' hackers" (2023.12.01) [37] SecurityWeek, "US Sanctions North Korean Cyberespionage Group Kimsuky" (2023.12.01)

AI 보안 일반

[38] 매일경제, 「'AI가 해킹도 방어도 바꾼다'…올해 정보보호의 날 화두는 'AI 보안'」 (2026.07.08) [39] 이데일리, 「AI 보안의 역설[김현정의 IT 세상]」 (2026.04.10) [40] CIO Korea, 「칼럼 | AI에 보안 맡겨도 될까?··· CISO의 '에이전틱 AI' 대비 방법」 (2025.04.21) [41] 카스퍼스키, 「사이버 세계 분석」 보고서 — 초기 침투 경로 통계 (2026.06)

참고 도구·기술 문서

[42] MITRE ATT&CK Framework — Enterprise Matrix [43] opencode 공식 문서 — https://opencode.ai [44] Ollama, GPT4All, Msty 각 프로젝트 공식 문서 (로컬 LLM 실행 환경 이해 목적)


부록 A. 이 보고서를 조직 내에서 활용하는 법

대상 우선 읽을 부분 실행 항목
CISO / 보안 임원 0장, 5장, 6-1·6-2, 9장, 10장 AI 거버넌스 체계 수립, 투자 우선순위 재조정
SOC / 탐지 엔지니어 3장, 7장 전체, 11장 룰 배포 및 튜닝, 소급 헌팅
인시던트 대응팀 3장, 11장, 12장 플레이북 갱신, TTX 시나리오 설계
위협 인텔리전스 분석가 1장, 2장, 4장 클러스터 정의 확인, 지표 수명 관리
개발·플랫폼 조직 5-7, 6-3(L7), 8장 AI 생성 코드 리뷰 정책, 의존성 검증
보안 교육 담당 5-3, 6-3(L-1) 교육 자료 전면 개정
일반 임직원 0장, 10장 인식 제고

부록 B. 면책 및 이용 안내

  • 본 보고서는 방어 목적의 위협 인텔리전스 분석 자료다.
  • 7장의 탐지 로직은 개념 검증용 의사코드이며, 실제 운영 환경 적용 전 반드시 자사 기준선에 맞춘 오탐률 측정과 튜닝을 거쳐야 한다.
  • 귀속 평가는 공개된 기술적 근거에 기반한 것이며, 최종적인 국가 귀속 판단은 정부 기관의 영역이다.
  • 별칭(APT43, TA406 등)은 벤더별 클러스터 정의가 다르므로 1-2의 주의사항을 반드시 함께 참조할 것.
  • IoC는 공표 시점 기준이며 시간 경과에 따라 유효성이 감소한다. 행위 기반 지표를 병행할 것.
  • 인용된 사실관계는 각 1차 출처의 공개 보고서를 따르며, 해석과 방어 권고는 작성자의 분석이다.

작성: Dennis Kim (김호광) | [email protected]
라이선스: 출처 표기 시 자유 배포 가능 (TLP:CLEAR)