서론
북한 연합 APT(Advanced Persistent Threat) 그룹 '김수키(Kimsuky)'는 정상적인 개발 도구와 원격 관리 소프트웨어를 악용하여 표적 공격을 수행하는 것으로 알려져 있습니다. 김수키는 한국어를 사용하는 위협 행위자(Threat Actor)로, 주로 한국 정부, 연구소, 기업, 언론사 등을 표적적으로 하는 피싱 공격과 정보 수집 활동을 전개해 왔습니다.
본 가이드는 김수키의 정상 소프트웨어 악용 기법(Tactics, Techniques, and Procedures - TTP)을 분석하고, 조직의 보안 담당자가 즉시 적용할 수 있는 탐지·대응 체크리스트와 대응 전략을 제공합니다.
주의: 본 가이드는 보안 전문가 및 보안 담당자를 위한 참고 자료입니다. 모든 환경에 동일하게 적용될 수 있으므로, 실제 환경에 맞는 추가적인 테스트와 조정이 필요할 수 있습니다.
위협 개요
김수키(Kimsuky)란?
- 별칭: Velvet Chollima, Thallium, Emerald Sleet
- 소속: 북한 연합 APT 그룹 (재정/정보 수집 목적)
- 활동 기간: 2010년대 초반부터 활동 중
- 주요 활동: 사회공학적 피싱, 정보 수집, 스파이웨어 배포
- 표적: 한국 정부/기업, 연구소, 언론사, 남북 관련 기관, 외교 정책 전문가
최근 활동 동향
김수키는 지속적으로 공격 기법을 변형하며 다음과 같은 패턴을 보입니다:
- 이메일 피싱을 통한 초기 침투
- 정상 소프트웨어와 위장한 악성코드 배포
- 원격 접속 도구를 통한 지속적 접근 유지
- 기술 자료, 문서, 내부 정보 수집
정상 소프트웨어 악용 패턴
1. 개발 도구 악용
특징:
- 공격자가 정상적인 개발 도구(IDE, 터미널, 에디터 등)를 악용하여 악성코드를 실행하거나 C2(Command & Control) 서버와 통신
- 방어자 입장에서는 정상적인 개발 활동으로 오인하기 쉬움
악용 가능한 도구 예시:
- Visual Studio Code, IntelliJ, Eclipse 등 IDE
- 터미널 에뮬레이터
- 원격 접속 클라이언트
- 스크립트 인터프리터 (PowerShell, Python, JavaScript)
2. 원격 관리 도구 악용
특징:
- 합법적인 원격 관리 도구를 악용하여 감시 회피
- 정상적인 원격 지원 활동으로 위장
주의 대상:
- 인가되지 않은 원격 접속 도구 설치 및 실행
- 비정상적인 원격 세션 활동
- 정상 업무 시간 외의 원격 접속 시도
초기 침투 기법
스피어피싱 (Spear Phishing)
특징:
- 표적에 맞춰진 이메일 작성
- 정상 문서로 위장한 악성 첨부파일 포함
- 최근에는 메신저 앱을 통한 접근 사례도 보고
첨부파일 유형:
- Microsoft Office 문서 (.doc, .docx, .xls, .xlsx, .ppt, .pptx)
- PDF 문서 (.pdf)
- 실행 파일 (.exe, .scr, .pif)
- 스크립트 파일 (.js, .vbs, .ps1)
- 압축 파일 (.zip, .rar)
공통적인 위장 방법:
- 정부 기관, 협력사, 고객으로부터 온 척 하는 메일
- 긴급성, 비밀성을 강조하는 제목/내용
- 실제 존재하는 사람/조직의 위장
탐지 체크리스트
1. 네트워크 레벨 탐지
즉시 확인 필요:
- [ ] 비정상적인 외부 터널링 서비스 연결 탐지
- 알 수 없는 터널링 서비스(Cloudflare Tunnel, ngrok 등) 사용 추적
- 비정상적인 트래픽 패턴 (대량 데이터 전송, 암호화 트래픽 등)
- [ ] 의심스러운 도메인 접속 감지
- 최근 등록된 도메인, 의심스러운 TLD 접속
- 일반 업무와 관련 없는 외부 사이트 접속
- [ ] 비정상적인 프로토콜 사용 감지
- HTTP/HTTPS를 통한 비정상적인 통신 패턴
- 비표준 포트 사용
네트워크 분석 포인트:
- 예기치 않은 외부 터널링 서비스 연결
- 비업무 시간대의 네트워크 활동
- 대량의 데이터 전송 (특히 암호화된 데이터)
- 장기간 지속되는 비정상적 연결
2. 엔드포인트 탐지
프로세스 및 파일 모니터링:
- [ ] 비정상적인 프로세스 실행 감지
- 알 수 없는 소프트웨어 설치 및 실행
- 비정상적인 위치에서의 실행 파일 실행
- [ ] 원격 관리 도구 설치/실행 감지
- 인가되지 않은 원격 접속 도구 설치 및 실행
- 비정상적인 원격 세션 생성
- [ ] 스크립트 실행 기록 감지
- PowerShell, Python, JavaScript 등 스크립트 실행 로그 확인
- Base64 디코딩 등 난독화 기법 사용 시도
레지스트리 및 서비스:
- [ ] 자동 실행(Startup) 등록 감지
- 비정상적인 레지스트리 Run 키 등록
- 예약 작업(Task Scheduler) 생성
- [ ] 의심스러운 서비스 생성 감지
- 비정상적인 Windows 서비스 생성
- 의심스러운 윈도우 서비스(서비스 이름, 설치 경로 확인)
파일 시스템:
- [ ] 비정상적인 파일 생성 감지
- 임시 디렉토리(ProgramData, %temp%) 등의 비정상적 파일 생성
- 비정상적인 파일 확장자(압축 파일, 스크립트 등)
- [ ] GPKI 관련 디렉토리 접근 감지
- C:\GPKI 또는 인증서 저장소 접근 시도 모니터링
- [ ] 비정상적인 압축 파일 생성 및 전송 감지
3. 행동 기반 탐지
비정상 사용자 행위:
- [ ] 비업무 시간대의 원격 접속 시도
- [ ] 비정상적인 VS Code 또는 개발 도구 원격 터널링 활동
- [ ] 비정상적인 계정 로그인 (비정상적 위치, 시간대)
- [ ] 비정상적인 문서 접근 및 다운로드 활동
- [ ] 비정상적인 대용량 파일 전송
데이터 탈취 패턴:
- [ ] 대용량 파일 전송 (특히 암호화된 데이터)
- [ ] 인증서 파일 접근 및 전송 시도
- [ ] 민감 문서 접근 및 다운로드
- [ ] 내부 네트워크에서의 비정상적 이동 및 데이터 수집
대응 체크리스트
즉시 대응 (24시간 이내)
- 감염 시스템 격리 및 네트워크 차단
- 감염 의심 시스템 네트워크 격리 및 차단
- 관련 사용자 계정 일시 정지 및 비밀번호 변경
-
유출 가능한 전자인증서 발급 및 재발급
-
로그 및 데이터 수집
- 이벤트 로그 수집 및 보존
- 네트워크 패킷 캡처
- 메모리 덤프 수집
- 디스크 이미지 생성
심층 분석 (72시간 이내)
- 감염 경로 및 범위 파악
- 감염 시스템 네트워크 범위 파악
- C2 서버 통신 내역 분석
-
탈취 데이터 확인 및 영향 평가
-
악성코드 분석
- 악성코드 동역학 분석
- 취약점 식별
- 초기 침투 경로 확인
-
영향 범위 정확히 파악
-
타임라인 구축
- 첫 감염 시점 확인
- 데이터 탈취 시간 추정
- 악성 활동 기간 확인
- 확장 경로 분석
복구 및 강화 (1주 이내)
- 시스템 재이미징 및 복구
- 감염 시스템 재이미징 및 복구
- 정상 구성 복구
- 보안 설정 재적용
-
서비스 재시작
-
보안 정책 및 프로세스 수정
- 보안 정책 수정
- 접근 제어 강화
-
직원 보안 인식 교육 실시
-
탐지 규칙 및 대응 플레이북 업데이트
- 탐지 규칙 개발 및 배포
- 대응 프로세스 정비
- 인시던트 대응 플레이북 업데이트
실시간 탐지 규칙
Microsoft Sentinel KQL 쿼리
// 비정상적인 터널링 서비스 연결 탐지
DeviceNetworkEvents
| where RemoteUrl contains "cloudflare" or RemoteUrl contains "ngrok" or RemoteUrl contains "tunnel.dev"
| project Timestamp, DeviceName, InitiatingProcessAccount, RemoteUrl, RemotePort
| extend AlertType = "Tunneling Service Detection"
// 비정상적인 프로세스 실행 탐지
SecurityEvent
| where EventID == 4688
| where Process in ("powershell.exe", "cmd.exe", "wscript.exe", "cscript.exe")
| where CommandLine contains "FromBase64String" or CommandLine contains "regsvr32"
| project TimeGenerated, Computer, Account, Process, CommandLine
| extend AlertType = "Suspicious Process Execution"
// 비정상적인 파일 접근 탐지
SecurityEvent
| where EventID in (4663, 4656, 4658)
| where ObjectName contains "\\\\GPKI" or ObjectName contains "ProgramData"
| project TimeGenerated, Computer, Account, ObjectName, AccessMask
| extend AlertType = "Suspicious File Access"
Windows Defender ATP 탐지 규칙
<!-- VS Code 비정상적인 터널링 활동 탐지 -->
<DetectionRule>
<RuleName>VS Code Tunneling Activity</RuleName>
<Description>Detects VS Code remote tunneling</Description>
<Criteria>
<Process>
<Path>*\\code.exe</Path>
<CommandLine>*--remote* *--tunnel*</CommandLine>
</Process>
</Criteria>
<Severity>Medium</Severity>
</DetectionRule>
<!-- 비정상적인 원격 관리 도구 실행 탐지 -->
<DetectionRule>
<RuleName>Unauthorized Remote Access Tool</RuleName>
<Description>Detects unauthorized remote access tool execution</Description>
<Criteria>
<Process>
<Path>*\\AnyDesk.exe</Path>
</Process>
<Process>
<Path>*\\TeamViewer.exe</Path>
</Process>
<Process>
<Path>*\\DWAgent.exe</Path>
</Process>
</Criteria>
<Severity>High</Severity>
</DetectionRule>
<!-- 인증서 관련 비정상적 접근 탐지 -->
<DetectionRule>
<RuleName>Certificate Store Access</RuleName>
<Description>Detects unauthorized certificate access</Description>
<Criteria>
<File>
<Path>C:\\GPKI\\*</Path>
<AccessMask>Read, Write</AccessMask>
</File>
<Process>
<Path>!*\\gpkiclient.exe</Path>
</Process>
</Criteria>
<Severity>High</Severity>
</DetectionRule>
국내 기업 적용 시사점
1. 우선순위별 대응 방안
즉시 대응 (24시간 이내):
- 터널링 서비스(Cloudflare, Ngrok, VSCode 등) 사용 허용 정책 검토 및 차단 필요성 평가
- 비정상적인 도메인 접속 기록 및 접속 차단
- 인증서 디렉토리 접근 모니터링 강화 및 비정상적 접근 경고 시스템 구축
- VS Code 원격 터널링 기능 사용 정책 수립 및 감시 강화
- 외부 이메일 전송 규제 및 악성코드 필터링 강화
단기 대응 (72시간 이내):
- 행동 기반 탐지 규칙 개발 및 배포 (특히 VS Code 터널링, DWAgent 설치)
- 내부 네트워크에서의 비정상적 활동 탐지 시스템 강화
- 악성코드 탐지 시그니처 업그레이드 (HelloDoor, httpMalice, AppleSeed 등 관련 IOCs 적용)
- 관련 IOCs(Indicators of Compromise)를 보안 장비에 적용
장기 대응 (1주 이내):
- 정상 도구 악용 탐지 체계 구축 (Living off the Land 기법 대응)
- 악성코드 탐지 능력 강화
- 스피어피싱 대응 훈련 및 시뮬레이션 정기 실시
- 위협 인텔리전스 피드 수집 및 분석 프로세스 정립
2. 정부 및 공공기관 특수 고려사항
전자인증서 관리:
- 인증서 접근 로그 실시간 모니터링
- 인증서 사용 다중 인증(MFA) 강화
- 인증서 관리 책임자 지정 및 교육
- 인증서 발급 시 즉각 폐기 및 재발급 프로세스 마련
기밀 정보 보호:
- 민감 문서 접근 제어 강화 (Zero Trust 원칙 적용)
- 데이터 탈취 방지(DLP) 시스템 도입 및 강화
- 내부 네트워크 분할 및 세분화
- 외부 데이터 전송 모니터링 및 검사 강화
3. 방위 및 기술 기업 특수 고려사항
기술 자산 보호:
- 기술 설계서, 소스코드 암호화 및 접근 통제 제고
- 특허 및 지식재산권 관련 정보 접근 통제 강화
- 연구개발 네트워크 분리 및 감시 강화
- 외부 협력 시 보안 요구사항 명시
공급망 보안:
- 협력업체 보안 요구사항 정립
- 정기 보안 감사 및 취약점 점검
- 제작자 접속 시 보안 프로토콜 준수 확인
- 보안 인프라 상시 점검
4. IT/통신 기업 특수 고려사항
개발 환경 보안:
- 개발 도구(VSCode 등) 사용 정책 수립
- 개발 환경에서의 보안 모니터링 강화
- 코드 리포지토리(GitHub) 접근 통제
- CI/CD 파이프라인 보안 강화
서비스 인프라 보호:
- 클라우드 리소스 모니터링 강화
- API 엔드포인트 보안 검토
- 외부 서비스 연결 시 보안 평가
- 트래픽 이상 탐지 및 대응 시스템 강화
인시던트 대응 플레이북
1단계: 감지 및 식별 (0-2시간)
즉시 조치:
- 보안 장비 경고 확인 및 분석
- 영향 시스템 식별
- 감염 범위 초기 평가
- 인시던트 리더 지정 및 대응 팀 소집
데이터 수집:
- 이벤트 로그 수집 및 보존
- 네트워크 패킷 캡처
- 메모리 덤프 수집
- 디스크 이미지 생성
2단계: 억제 및 격리 (2-6시간)
즉시 조치:
- 감염 시스템 네트워크 차단
- 관련 사용자 계정 일시 정지
- 공유 자원 접근 차단
- 취약 시스템 격리
예방 조치:
- 추가 감염 방지
- 악성코드 배포 차단
- C2 서버 통신 차단
- 데이터 전송 차단
3단계: 근본 원인 분석 (6-24시간)
심층 분석:
- 악성코드 동역학 분석
- 취약점 식별
- 초기 침투 경로 확인
- 영향 범위 정확히 파악
타임라인 구축:
- 첫 감염 시점 확인
- 데이터 탈취 시간 추정
- 악성 활동 기간 확인
- 확장 경로 분석
4단계: 제거 및 복구 (24-72시간)
악성코드 제거:
- 감염 시스템 재이미징
- 악성 파일 삭제
- 백도어 제거
- 취약점 패치
시스템 복구:
- 백업에서 복원
- 정상 구성 복구
- 보안 설정 재적용
- 서비스 재시작
5단계: 사후 활동 (72시간 이후)
피해 평가:
- 데이터 유출 확인
- 금전적 피해 산정
- 운영 영향 평가
- 평판 손실 분석
교육 도출:
- 대응 프로세스 개선
- 보안 정책 수정
- 직원 교육 실시
- 기술적 대응 강화
보안 권고사항
사용자 계층
직원:
- [ ] 이메일/메신저 첨부파일 다운로드 시 주의
- [ ] 정부/협업 요청 시 발신자 확인
- [ ] 개인 장치에서 업무용 시스템 접속 자제
- [ ] 비밀번호 정기 변경 및 MFA 사용
- [ ] 의심스러운 활동 즉시 보고
IT 담당자:
- [ ] 정상 도구 사용 모니터링 강화
- [ ] 비정상적 원격 접속 시도 감지
- [ ] 시스템 패치 최신 상태 유지
- [ ] 보안 소프트웨어 최신 버전 사용
- [ ] 정기 보안 점검 실시
관리자 계층
보안 담당자:
- [ ] 탐지 규칙 정기 업데이트
- [ ] 위협 인텔리전스 피드 수집
- [ ] 인시던트 대응 플레이북 유지
- [ ] 보안 교육 프로그램 운영
- [ ] 정기 보안 감사 실시
경영진:
- [ ] 보안 예산 적절 배정
- [ ] 보안 정책 수립 문화 조성
- [ ] 보안 투자 중요성 인식
- [ ] 인시던트 대응 프로세스 확립
- [ ] 보안 리스크 정기 검토
참고 자료
주요 보안 리포트 및 분석
- 미국 CISA(국가사이버보안안보청): North Korea-related Cyber Threats Advisories
- MITRE ATT&CK: KimSuky (APT37) - Threat Actor Profile
- AhnLab (안랩): Kimsuky 관련 기술 분석 보고서
- KISA (한국인터넷진흥원): 북한 해킹그룹 동향 분석
MITRE ATT&CK 매핑
- Initial Access: Spearphishing Attachment (T1566.001)
- Execution: Command and Scripting Interpreter (T1059)
- Persistence: Registry Run Keys / Startup Folder (T1547)
- Defense Evasion: Obfuscated Files or Information (T1027)
- Command and Control: Application Layer Protocol (T1071)
- Exfiltration: Exfiltration Over Web Service (T1567)
본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.
댓글 (0)
댓글을 작성하려면 로그인이 필요합니다.
로그인아직 댓글이 없습니다.
첫 번째 댓글을 작성해보세요!