지니언스 시큐리티 센터(Genians Security Center)는 북한 정찰정보총국 산하 사이버 위협 그룹으로 알려진 김수키(Kimsuky)와 연관된 것으로 평가되는 GitHub 및 GitLab 기반 공격 활동을 지속적으로 추적하고 있습니다.
해당 공격은 최근 새롭게 등장한 단일 캠페인이 아니라 수년간 관찰되어 온 김수키 공격 활동의 연장선상에 위치합니다.
특히 2023년 공개한 「FlowerPower」 캠페인과 마찬가지로 PowerShell 기반 실행 체계를 유지하면서 Git 기반 저장소를 적극 활용한다는 공통점을 보이며, 2024년 「새해 오피니언 언론 칼럼 위장 해킹 분석」에서 확인된 공격 전술과도 연계성을 확인할 수 있습니다.
이에 따라 본 보고서에서는 기존 FlowerPower 계열의 공격 흐름을 계승하면서 Git 기반 명령제어(C2) 운영 구조를 결합한 공격 활동을 Operation GitPower로 명명하고 지속적으로 추적하고 있습니다.
김수키 그룹은 오랜 기간 동안 정책, 학술, 국제협력, 외교안보 연구 분야 종사자와 관련 기관을 대상으로 다양한 스피어피싱 공격을 수행해 왔으며, 최근까지 국제행사, 연구보고서, 초청장, 사례비 지급, 수사협조, 회의자료, 금융 및 법률 문서 등으로 위장한 악성 파일을 활용하는 사례가 지속적으로 확인되고 있습니다.
최근 확인되는 공격은 주로 ZIP 압축파일 내부에 포함된 악성 LNK 파일을 통해 수행됩니다. 사용자가 해당 LNK 파일을 실행할 경우 난독화된 명령행 인자가 동작하며, 내부에 포함된 PowerShell 로더가 실행됩니다.
더불어 생성형 AI를 활용해 제작된 것으로 판단되는 가상자산 및 금융 분야 문서가 공격 미끼로 사용된 사례도 확인되었습니다. 해당 문서는 자연스러운 문체와 높은 구성 완성도, 실제 업무 자료와 유사한 형식을 갖춰 사용자의 신뢰를 높이고 악성 파일 실행을 유도합니다.
특히 지니언스 시큐리티 센터는 김수키 그룹이 로컬 LLM과 RAG를 비롯해 Cursor 등 다양한 AI 기술과 도구를 활용하고 실험한 정황도 다수 포착되었습니다.
[그림 1-1] AI 활용 공격 흐름도
위협 행위자는 Base64 인코딩, 문자열 분할, 사용자 정의 디코딩 루틴 등 다양한 난독화 기법을 적용하여 실제 동작을 은폐하고 있는 것으로 확인되었습니다.
본 위협 인텔리전스 보고서는 특정 샘플 하나에 국한되지 않고 다수의 변종에서 반복적으로 확인되는 공격 행위와 인프라 운영 특성을 기반으로 작성되었으며, 향후 동일 계열 공격에 대한 탐지 정책 수립, 위협 헌팅, 침해사고 대응 역량 강화에 활용될 수 있을 것으로 기대됩니다.
기업 및 기관내 보안 조직은 LNK의 비정상적으로 긴 실행 인수, 사용자 정의 Base64 디코딩, 숨김 PowerShell, 예약 작업, GitHub Raw Contents API 접근, 비업무용 PAT 사용, 이미지 확장자를 가진 암호화된 .NET 페이로드를 연계해 탐지해야 합니다.
초기 유입은 위협 행위자가 이메일 등을 통해 유포한 ZIP 압축파일을 사용자가 다운로드하고 내부의 LNK 파일을 실행하는 과정에서 시작됩니다.
압축파일 내부에는 정상 공문, 연구자료, 사례비 지급 의뢰서, 언론 원고, 대사관 서신 등 실제 업무에서 사용될 수 있는 파일명과 문서 아이콘을 사용한 LNK(바로가기) 파일이 포함되어 있습니다.
[그림 2-1] 정상 업무 문서와 공문으로 위장한 스피어피싱 이메일 사례
실제 확인된 스피어피싱 이메일 사례로, 사례비 지급 의뢰, 법률 문서, 언론 원고 확인, 대사관 긴급 서신 등 다양한 업무 시나리오를 활용하여 사용자의 실행을 유도하는 모습을 보여줍니다.
위협 행위자는 그동안 이전 공격에서 탈취하거나 확보한 문서를 후속 스피어피싱 공격의 미끼 문서로 재활용해 왔습니다. 그러나 2026년부터는 생성형 AI를 활용해 제작한 문서를 미끼 파일로 지속적으로 사용한 공격 양상이 확인되고 있습니다.
AI는 짧은 시간 안에 다양한 주제의 문서를 높은 완성도로 생성할 수 있어 위협 행위자에게 매우 효율적인 공격 도구로 활용될 수 있습니다.
이러한 변화는 단순히 미끼 문서 제작 방식의 변화에 그치지 않고, AI를 활용한 사회공학 공격의 자동화와 대량 생산이 가능해지고 있음을 보여준다는 점에서 주목할 필요가 있습니다.
분석 과정에서 확보한 다수의 미끼 PDF 문서는 가상자산, 금융투자, 게임 개발 등 서로 다른 주제를 다루고 있음에도 불구하고 문서 구성과 작성 방식에서 높은 유사성을 보였습니다.
PDF 메타데이터와 문서 구조를 분석한 결과, 생성형 AI를 활용한 자동화 문서 제작 환경이 사용된 것으로 판단되는 여러 정황이 확인되었습니다.
[그림 2-2] 실제 공격에 활용된 PDF 미끼 문서 일부
우선 두 개의 영문 미끼 문서는 PDF 메타데이터에서 Author가 python-docx, Creator가 WPS 文字로 동일하게 기록되어 있었습니다.
python-docx는 Python 환경에서 Microsoft Word 형식의 문서를 자동 생성하기 위해 널리 사용되는 오픈소스 라이브러리이며, WPS 文字는 중국 Kingsoft에서 개발한 WPS Office의 워드 프로세서 구성 요소를 의미합니다.
[그림 2-3] 영문 미끼 문서에 사용된 메타데이터 정보
또한 두 문서는 각각 2026년 3월 11일 오전 5시 00분 04초와 2026년 3월 24일 오전 5시 00분 44초에 생성 및 수정된 것으로 확인되었습니다. 두 문서 모두 생성 시각과 수정 시각이 동일하게 기록되어 있으며, 약 2주 간격으로 제작되었음에도 모두 오전 5시에 생성되었고 시각 차이 역시 약 40초에 불과했습니다.
다음 사례로, 'OOOO 2026년 7월 실전 전략 팩.pdf.lnk'와 같이 실제 투자 전략 자료로 오인하기 쉬운 파일명의 악성 바로가기(LNK) 파일이 유포되었습니다.
해당 파일은 AI 기반 투자 전략 서비스를 제공하는 한국내 핀테크 플랫폼에서 실제 배포하는 문서 형식과 콘텐츠를 모방하여 사용자가 정상 문서로 인식하도록 유도하는 사회공학 기법이 적용되었습니다.
참고로 최근 해당 서비스 운영사는 '실전 적용 가능 전략 팩' 등의 제목을 사용하여 자사를 사칭한 피싱 이메일 주의를 공지하였고, '개인(신용)정보 유출 사실 통지 및 사과문' 제목의 별도 공지를 통해 일부 고객 정보가 유출된 사실도 공개하였습니다.
[그림 2-4] AI 분야 투자 전략 내용의 미끼 문서 파일
문서의 시각적 구성에서도 동일한 경향이 나타납니다. 각 페이지의 레이아웃, 일관된 색상 체계, 반복적인 표 구성, 동일한 여백과 섹션 배치 규칙을 유지하고 있습니다.
제목 영역에는 다양한 이모지(emoji) 요소를 활용하여 문서를 구성하고 있는데, 정통 금융투자 자료에서는 매우 드문 문체입니다.
이러한 디자인 패턴은 최근 생성형 AI 기반 문서 작성 서비스와 웹 기반 프레젠테이션 도구에서 기본적으로 제공하는 템플릿과 높은 유사성을 보입니다.
동일 캠페인 중에는 국제 교육행사 기획안으로 위장한 공격 사례가 있습니다. 파일명에는 PDF 확장자를 포함해 국제 청소년 교육행사의 기획안처럼 보이도록 구성했습니다.
LNK 속성의 실행 인수 영역에는 매우 긴 문자열이 포함되어 있으며, 이는 실제 PowerShell 스크립트를 은닉하거나 복호화에 필요한 데이터를 저장하기 위한 목적으로 사용됩니다.
[그림 2-5] LNK 파일 속성 화면
LNK 실행 인수(Command-line Arguments)는 약 3,800자의 PowerShell 명령으로 구성되어 있습니다.
특히 실제 PowerShell 스크립트 앞에는 약 300여개의 연속된 공백 문자가 삽입되어 있으며, 이는 Windows 바로가기 속성 창에서 실행 인수의 핵심 부분이 화면에 표시되지 않도록 하기 위한 기법입니다.
LNK 내부에는 다음과 같은 설명 정보도 포함되어 있습니다.
그러나 실제 파일은 약 304 KB 크기의 LNK 파일이며, 해당 설명에 기록된 문서 형식, 크기 및 수정 일자는 실제 속성과 일치하지 않습니다.
[그림 2-6] LNK 파일의 실행 인수
실행 인수의 핵심 데이터는 Base64 형태로 인코딩되어 있습니다. 다만 위협 행위자는 일반적으로 사용되는 [Convert]::FromBase64String() 함수를 직접 호출하지 않고, Base64 문자표와 비트 연산을 구현한 사용자 정의 디코더(Custom Decoder)를 사용했습니다.
LNK 인자 자체가 Base64 형태로 포함된 PowerShell 스크립트를 직접 복호화하고, 저장한 뒤 숨김 PowerShell로 실행합니다.
복호화된 1단계 PowerShell 스크립트는 먼저 시스템의 임시 디렉터리에 다음 파일 경로를 지정합니다.
이후 GitHub의 Raw Content 서비스를 통해 'riudxkfngidruhkr.pdf' 파일을 내려받아 해당 경로에 저장하고 바로 실행합니다. 따라서 피해자는 파일이 정상적으로 열렸다고 인식할 수 있지만, 실제로는 PDF 표시와 동시에 후속 악성 행위가 백그라운드에서 진행됩니다.
분석된 다운로드 경로는 문자열 결합을 통해 다음 구조로 생성됩니다.
위협 행위자는 URL을 "ht" + "t" + "ps"와 같이 여러 문자열로 분리해 저장했으며, 계정명과 저장소명 역시 다수의 짧은 문자열로 나누어 결합했습니다. 이러한 구성은 URL 기반 탐지와 정적 문자열 분석을 우회하기 위한 것입니다.
또한 요청 헤더에는 GitHub API 접근에 필요한 액세스 토큰이 하드코딩되어 있고, 현재는 폐기(Revoke)된 상태입니다.
정상 PDF를 표시한 이후 스크립트는 %AppData% 경로에 다음 PowerShell 파일을 생성합니다. 이 파일은 예약 작업에서 반복 실행할 중간 PowerShell 스크립트 입니다.
이후 악성코드는 다음 이름의 숨김 예약 작업을 등록합니다. 예약 작업은 등록 시점으로부터 약 5분 후 처음 실행되며, 이후 30분 간격으로 반복 실행됩니다.
[그림 2-7] irujkdnjhgttrhdkfdu.ps1 명령어 화면
중간 스크립트는 'priujghtjytfcghffgt.txt' 파일을 Github에서 내려받아 %AppData% 경로에 'lpieuysjfgtrja.ps1' 파일을 생성해 실행하고 삭제합니다.
[그림 2-8] lpieuysjfgtrja.ps1 명령어 화면
이 명령이 동작하면, 감염 시스템의 활성 네트워크 어댑터에서 IP 주소를 수집하고 현재 시각을 조합하여 <IP 주소>-<MMDD_HHMM>-XXX-kkk.txt 형식의 파일명을 생성한 후, %APPDATA% 경로에 해당 TXT 파일을 생성합니다.
이어서 'bhjfjkfgrtwehjbfgcf.txt' 파일을 Github에서 내려받아 %AppData% 경로에 'ms_update.ps1' 파일을 생성해 실행하고 삭제합니다.
[그림 2-9] ms_update.ps1 명령어 화면
이 스크립트는 감염 시스템의 활성 네트워크 어댑터에서 IP 주소를 수집하고 현재 시각을 조합하여 <IP 주소>-<MMDD_HHMM>-0956_info.txt 형식의 파일명을 생성한 후, %APPDATA%\Microsoft 경로에 해당 TXT 파일을 생성합니다.
이를 통해 위협 행위자는 감염 호스트의 IP 주소와 스크립트 실행 시각을 기반으로 시스템을 식별하고, 운영체제 버전 및 아키텍처, 시스템 구성, PC 유형, 운영체제 설치 및 부팅 이력, 실행 중인 프로세스 목록 등 상세한 시스템 정보를 수집하여 감염 환경을 파악하고 후속 공격에 활용하게 됩니다.
Git 저장소를 명령제어(C2) 인프라로 활용하는 공격 사례는 지속적으로 확인되고 있으며, 위협 행위자는 저장소에 등록된 스크립트와 페이로드(RAT)를 필요에 따라 교체하는 방식으로 공격을 유연하게 운영하고 있습니다.
실제 분석 과정에서 지니언스 시큐리티 센터는 위협 행위자가 운영하는 다수의 GitHub 공개 저장소를 확인하였으며, 특정 저장소에는 설정 파일과 PowerShell 스크립트뿐만 아니라 후속 공격에 사용되는 다양한 페이로드가 함께 등록되어 있었습니다.
[그림 2-10] 특정 깃허브 공개 저장소에 보관 중인 파일들
특히 apple.png, fox.png, lion.png, rabbit.png, wolf.png 등 정상 이미지 파일로 보이는 다수의 파일을 확인하였으며, 분석 결과 이들 파일은 실제 이미지가 아닌 RC4 알고리즘으로 암호화된 .NET 기반 AsyncRAT 페이로드로 확인되었습니다.
위협 행위자는 'rTom.exe_r' 파일과 함께 apple.png, rabbit.png 이미지 파일로 위장한 AsyncRAT을 Git 저장소에 등록해 공격에 활용하고 있었으며, 내부에서 169.254.33[.]137 IP 주소가 테스트(OPSEC Fail)로 사용된 정황이 관찰되었습니다.
[그림 2-11] rTom.exe_r 코드 분석 화면
반면, fox.png, leopard.png, lion.png, wolf.png는 C2 주소가 112.216.9[.]171(한국 소재 IP)로 변경된 것으로 확인되었습니다.
[그림 2-12] 112.216.9[.]171 주소로 변경된 AsyncRAT
본 장은 본 보고서의 핵심 발견을 다룹니다.
지니언스 시큐리티 센터는 본 캠페인에서 C2로 활용된 인프라를 대상으로 수개월간 추적, 로그 분석을 수행하였습니다.
그 과정에서 위협 행위자가 C2 인프라를 명령제어 서버뿐 아니라 악성코드 개발 및 테스트, 탈취 자료 관리, 그리고 AI 기술 연구 환경으로 사용 중임을 확인했습니다.
이를 통해 국가배후 해킹조직 김수키에 속한 위협 행위자가 AI 기술을 단순히 실험하는 수준을 넘어, 악성코드 개발과 공격 기법 고도화 등 실제 위협 활동에 적극 도입하기 위한 연구를 지속적으로 수행한 것으로 분석됩니다.
[그림 2-13] C2 인프라 로그에서 관찰된 악성코드 제작 흔적
가장 먼저 확인된 정황은, 위협 행위자가 자신의 인프라에 여러 종류의 로컬 LLM(Large Language Model) 실행 환경을 직접 구축했다는 점입니다.
로컬 방식은 외부 AI 서비스에 대화 내용이 전달되지 않기 때문에 외부 노출을 줄일 수 있어, 국가 배후 위협 행위자 입장에서 특히 매력적인 선택지입니다.
실제 로그에서는 대표적인 로컬 LLM 실행 도구 세 가지가 모두 관찰되었습니다.
첫째, Ollama(올라마)의 흔적으로 C:\Users\Administrator\.ollama\ 폴더에 id_ed25519 및 id_ed25519.pub 키 파일이 존재했습니다.
참고로 Ollama는 무료 오픈소스 기반의 로컬 LLM 실행 및 관리 도구입니다. 사용자의 PC나 서버에서 LLM을 직접 실행하고 관리할 수 있으며, 인터넷 연결 없이도 다양한 AI 모델을 사용할 수 있습니다.
대표적으로 Meta의 Llama(라마), Mistral AI의 Mistral(미스트랄), Google의 Gemma(젬마), Alibaba Cloud의 Qwen(큐원), DeepSeek의 DeepSeek(딥시크) 등 다양한 LLM을 내려받아 로컬 환경에서 실행할 수 있으며, 명령줄 인터페이스(CLI)와 로컬 API를 통해 다른 프로그램과도 쉽게 연동할 수 있습니다.
[그림 2-14] Ollama 설치 흔적
로그에서 관찰된 키 파일은 Ollama가 처음 실행될 때 자동으로 생성하는 고유 인증 키로, 프로그램이 단순히 내려받아진 것이 아니라 실제로 설치, 구동되었음을 뒷받침하는 근거입니다.
둘째, GPT4All의 설치 파일인 LocalDocs-Setup-0.4.2.exe와 설치 이후 생성되는 AppData\Local\nomic.ai\GPT4All\ 폴더가 확인되었습니다.
GPT4All은 Nomic AI에서 개발한 무료 오픈소스 기반의 로컬 LLM 실행 플랫폼으로, 다양한 오픈소스 AI 모델을 로컬 환경에서 실행할 수 있으며, LocalDocs 기능을 통해 사용자가 보유한 문서를 기반으로 질의응답(RAG)을 수행할 수 있습니다.
[그림 2-15] GPT4All 설치 흔적
셋째, Msty(엠스티)의 흔적이 두 위치에서 확인되었습니다.
설치 파일인 MstyStudio_x64.exe는 C:\Users\Administrator\Pictures\ 폴더에서, 설치 이후 로컬 AI 모델 구동을 담당하는 msty-local-studio.exe는 AppData\Local\Programs\MstyStudio\localai\ 경로에서 각각 발견되었습니다.
[그림 2-16] Msty 설치 흔적
Msty는 로컬 및 클라우드 기반 LLM을 단일 인터페이스에서 통합 관리하고 활용할 수 있도록 설계된 AI 데스크톱 애플리케이션입니다.
Ollama 등 로컬 LLM 실행 엔진과 ChatGPT, Claude, Gemini 등 다양한 클라우드 AI 서비스를 연동할 수 있으며, 문서 기반 검색 증강 생성(RAG), AI 에이전트 구성, MCP(Model Context Protocol)를 통한 외부 도구 및 데이터 소스 연동, 지식베이스 및 대화 관리 등의 기능을 제공합니다.
세 가지 도구가 모두 설치 흔적을 남겼다는 사실은, 위협 행위자가 특정 한 가지를 우연히 시험한 것이 아니라 여러 로컬 AI 실행 방식을 폭넓게 비교, 검토했음을 구체적으로 보여주는 중요한 단서입니다.
여기서 더 주목할 부분은, 이들 도구가 설치에 그치지 않고 실제로 "구성 및 사용"된 정황이 확인되었다는 점입니다.
GPT4All 폴더 내부에서 localdocs_v3.db라는 데이터베이스 파일 기록이 관찰되었는데, 이는 GPT4All의 "LocalDocs" 기능이 실제로 설정되었을 때 생성되는 파일입니다.
LocalDocs는 이른바 RAG(Retrieval-Augmented Generation, 검색증강생성) 기술을 구현한 기능으로, RAG란 AI가 미리 정해진 문서 모음에서 질문과 관련된 내용을 먼저 "검색"한 뒤 그 자료를 근거로 답변을 생성하도록 하는 방식을 말합니다.
쉽게 말해, 일반적인 챗봇이 이미 학습한 지식만으로 답한다면, RAG는 사용자가 넣어 둔 특정 문서(내부 자료, 탈취 문서 등)를 바탕으로 답하게 만드는 기술입니다.
따라서 이 데이터베이스 파일의 존재는, 위협 행위자가 자신이 보유한 문서를 AI에 연결해 활용하려 시도했음을 보여주는 직접적인 근거가 됩니다.
같은 폴더의 cache\models3.json 파일은 GPT4All이 사용 및 관리하는 AI 모델 목록을 담는 파일로, 어떤 언어모델을 선택해 운용했는지를 확인할 수 있는 단서입니다.
위협 행위자는 완성된 AI 프로그램을 사용하는 데 그치지 않고, AI 기능을 자신이 개발하는 프로그램에 직접 이식하기 위한 개발 부품(라이브러리)도 대량으로 수집해 두었습니다.
Pictures\zzz\nupkg\ 경로에서는 다수의 NuGet 패키지가 확인되었습니다.
해당 경로는 일반적으로 개발 관련 파일이 저장되는 위치가 아니므로, 위협 행위자는 사용자의 관심이 적은 디렉터리를 활용해 파일의 존재를 눈에 띄지 않게 하였습니다.
이는 개발 환경에서 사용되는 정상 패키지로 위장하여 악성 행위를 은폐하려 한 것으로 보입니다.
[그림 2-17] NuGet 패키지 설치 흔적
LLaMaSharp(라마샤프)와 GPU 가속용 백엔드(cuda11, cuda12 등)도 함께 확인되었습니다.
LLaMaSharp는 로컬 환경에서 LLM을 C# 프로그램으로 실행할 수 있도록 지원하는 라이브러리이며, GPU 백엔드는 그래픽카드를 활용해 AI 모델의 추론 속도를 높이는 역할을 합니다.
또한 LangChain.providers.llamasharp, Microsoft.SemanticKernel, Microsoft.Agents.AI도 함께 확인되었습니다.
이들은 AI 모델을 활용해 문서를 검색하거나(RAG), 여러 기능을 조합하고, AI가 여러 단계를 계획하여 다양한 도구를 활용하도록 구현하는 대표적인 AI 애플리케이션 및 에이전트 개발 프레임워크입니다.
이와 함께 Microsoft.Extensions.AI도 포함되어 있었습니다. 이 라이브러리는 OpenAI, Ollama 등 다양한 AI 모델을 동일한 방식으로 사용할 수 있도록 연결해 주는 공통 인터페이스를 제공합니다.
여기에 OpenAI와 Azure.AI.OpenAI 패키지도 함께 포함되어 있었습니다. 이러한 패키지는 OpenAI나 Azure OpenAI Service와 같은 상용 AI 서비스를 애플리케이션에서 직접 호출하고 연동하기 위해 사용됩니다.
이처럼 "로컬 AI 구동 → 문서 검색(RAG) → 자동화 에이전트 → 외부 AI 연동"으로 이어지는 개발 부품이 한자리에 모여 있다는 점은, 단순 호기심 차원의 수집이 아니라 특정 목적의 AI 기반 도구를 직접 개발하려 했을 가능성을 강하게 시사합니다.
또한 로그에서는 음성을 문자로 바꾸는 STT(Speech-to-Text, 음성 인식) 관련 자료가 확인되었습니다.
faster-whisper.7z와 whisper.7z는 OpenAI가 공개한 음성 인식 모델 "Whisper" 및 그 고속 구현체로, 녹음된 음성 파일을 텍스트로 자동 전사(Transcription)하는 데 사용됩니다.
같은 폴더에 한국어 실습 자료인 음성 파일에서 텍스트를 뽑아오자(with faster whisper).mhtml이 함께 저장되어 있어, 위협 행위자가 이 기능을 실제 활용 목적으로 학습했음을 알 수 있습니다.
[그림 2-18] C2의 저장 로그에서 확인된 AI 개발 환경 관련 파일
음성을 텍스트로 자동 변환하는 도구는 대량의 통화, 회의, 미디어 자료에서 필요한 정보를 빠르게 추출 및 정리하는 데 쓰일 수 있어, 피해 단말에서 탈취하거나 수집한 자료의 가공과 분석 목적으로 악용될 소지가 있습니다.
이러한 정황을 뒷받침하는 결정적 근거는, 위협 행위자가 남긴 다수의 한국어 학습 자료입니다. Pictures\zzz\ 폴더에는 웹페이지를 통째로 저장한 형식(.mhtml)의 기술 자료가 여러 건 남아 있었습니다.
주로 ML, AI, LLM 학습 정보를 담고 있는 한국의 블로그와 커뮤니티 웹 페이지들 입니다.
한 가지 분명히 해 둘 점은, 이번 로그에서 확인된 활동이 "AI 모델을 새로 훈련(training)"하는 단계까지 나아갔다고 볼 근거는 발견되지 않았다는 것입니다.
자체 학습에 필요한 대량의 학습 데이터셋이나, 훈련 결과물에 해당하는 모델 파일(예: 파인튜닝 산출물) 등은 로그상 관찰되지 않았습니다.
대신 확인된 것은, 이미 공개된 AI 모델과 프레임워크를 가져와 자신의 도구, 언어(주로 C#/.NET 환경)에 결합하는 방법을 집중적으로 학습하고 실험한 흔적입니다.
즉 관찰된 시점에서는 "AI를 직접 만드는" 단계가 아니라, "존재하는 AI를 공격 활동에 접목하기 위해 연구 및 습득하는" 단계로 평가하는 것이 타당합니다.
이러한 정황은 위협 행위자가 AI 기술을 지속적으로 연구하며 공격 도구에 접목하기 위한 역량을 축적하고 있음을 보여주며, 향후 AI를 활용한 새로운 공격 기법으로 발전할 가능성에 주목할 필요가 있습니다.
종합하면, 위협 행위자는 로컬 LLM 실행 환경(Ollama, GPT4All, Msty)을 실제로 구축 및 구성하고, 문서 기반 답변 기술인 RAG를 시험했으며, AI 에이전트와 음성 번역, 머신러닝 개발에 필요한 부품과 학습 자료를 체계적으로 확보하고 있었습니다.
이는 앞서 기술한 바와 같이, 김수키 소속 위협 행위자가 AI 기술을 단발적으로 시험하는 수준을 넘어, 악성코드 개발과 자료 분석, 공격 기법 고도화 등 실제 공격 역량에 접목하기 위한 준비를 지속적으로 진행하고 있음을 뒷받침하는 구체적 증거입니다.
다만 현재까지 확인된 정황은 자체 모델 훈련이 아닌 기존 AI의 활용 및 통합에 초점이 맞춰져 있어, 향후 AI 활용 범위와 공격 기법의 변화 양상을 지속적으로 모니터링할 필요가 있습니다.
지니언스 시큐리티 센터는 위협 행위자가 남긴 다양한 흔적을 분석하는 과정에서, LNK 파일 생성 도구를 보관한 정황도 확인했습니다.
[그림 3-1] lnk-builder 도구 저장 기록
확보한 로그를 통해 ZIP 압축 파일이 해제된 기록과 함께 lnkbuilder.exe 파일을 확인할 수 있습니다.
[그림 3-2] lnkbuilder.exe 파일 화면
분석 결과, 해당 파일은 2023년 9월 공개된 GitHub 저장소에서 배포된 CLI 기반 LNK File Builder와 일치하는 것으로 확인되었습니다. 공개된 도구 사용은 귀속 변별력이 낮지만, 하나의 기법 계보용 정도로 기억할 필요는 있습니다.
참고로 김수키와 APT37 등 한국을 주요 표적으로 삼는 북한 연계 위협 행위자들은 장기간 LNK 기반 공격 기법을 활용해 왔습니다.
특히 APT37은 자체 개발한 LNK 생성 도구를 실제 공격에 사용한 사례가 지난 2023년 6월 「한국내 macOS 이용자를 노린 APT37 공격 등장」 보고서를 통해 처음 알려진 바 있습니다.
[그림 3-3] APT37 그룹이 사용하는 LNK Builder 화면
다수의 Git 기반 C2를 조사하는 과정에서, 추가 페이로드를 전달할 때 파일 헤더를 RTF(Rich Text Format) 형식으로 변조하는 기법을 식별했습니다.
이러한 기법은 2024년 2월 공개한 「새해 오피니언 언론 칼럼 위장 해킹 분석」 보고서에서 확인된 사례와 동일하며, 해당 캠페인은 김수키 조직의 소행으로 분석된 바 있습니다.
[그림 3-4] RTF 변조 값을 Gzip 헤더 복구 명령어
해당 페이로드는 다양한 파일명으로 은닉되어 있으며, RTF처럼 헤더가 변조되어 있으나, 다운로드 이후 Gzip 헤더(0x1F, 0x8B, 0x08, 0x00, 0x00, 0x00, 0x00)로 복구한 뒤 압축을 해제하고 로드합니다.
지난 4월 포티넷(Fortinet)은 「DPRK-Related Campaigns with LNK and GitHub C2」 보고서를 통해 GitHub를 C2 인프라로 활용한 북한 연계 공격 캠페인을 공개했습니다.
지니언스 시큐리티 센터는 해당 캠페인 GitHub 계정이 포함된 로그를 분석하는 과정에서, 위협 행위자가 Cursor AI에서 Pumpfun-AI-Attack-Defence-Requirements.md 파일을 편집한 뒤, 생성된 view.pdf 파일을 Google Chrome으로 열어 확인한 정황을 포착했습니다.
[그림 3-5] view.pdf 파일과 Cursor AI를 활용한 로그 기록
실제 다운로드 경로 로그에서는 Cursor AI 설치본이 다수 식별되었습니다.
[그림 3-6] 다운로드 폴더에 저장된 Cursor AI 설치본
위협 행위자는 Marketing-Service-Agreement-Pumpfun-AI-Attack-Defence.docx 문서를 중국어 버전의 WPS Office 2019에서 열람한 것으로 확인되었습니다.
이는 앞서 PDF 메타데이터에서 확인된 생성 정보와도 일치하는 정황으로, 중국어 환경의 WPS Office를 실제 개발 환경에서 사용했음을 뒷받침합니다.
[그림 3-7] WPS 2019로 문서 확인 기록
또한, Cursor AI로 Test-com1.json 파일을 확인하는 과정에서 GitHub API의 응답 결과를 클립보드에 복사한 기록도 존재합니다.
해당 JSON에는 저장소 소유자(brandonleeodd93-blip), 커밋 작성자 이메일(brandonleeodd.93@gmail[.]com), 그리고 내부 IP 주소 172.16.11[.]141이 포함된 감염 정보 파일(172.16.11[.]141-0313_0319-0956_info.txt)의 업로드 기록이 포함되어 있었습니다.
이것은 위협 행위자가 자신의 테스트 환경에서 감염 정보 업로드 기능을 검증한 기록으로, 앞서 분석한 정보 수집 스크립트의 동작 방식과 정확히 일치합니다.
[그림 3-8] Cursor AI를 활용해 GitHub C2 Test 과정이 기록된 로그
더불어 매우 흥미로운 점이 하나 있는데, 위협 행위자의 로그에서 시스템의 제조사(Manufacturer)가 Arirang으로 표기되어 있었습니다.
현재 Arirang은 국내에 알려진 PC 제조사로 확인되지 않으며, 북한에서는 태블릿 PC와 스마트폰 브랜드로 '아리랑(Arirang)'이 소개된 사례가 있습니다.
물론 해당 정보만으로 시스템의 실제 제조사나 사용 환경을 단정할 수는 없습니다.
[그림 3-9] Arirang 제조사와 프로세스 이름들
또한 실행 중인 프로세스에는 원격 접속 프로그램인 AnyDesk, VPN 클라이언트인 Astrill VPN, 그리고 AI 기반 개발 도구인 Cursor가 함께 확인되었습니다.
Astrill VPN은 다수의 공개 위협 인텔리전스 보고서에서 북한 연계 위협 행위자(IT 인력 위장 취업 캠페인 포함)와 반복적으로 관측되어 온 지표입니다. 단독으로는 결정적 근거가 아니지만, 중국어 환경, Arirang 제조사 표기 및 한국어 학습 자료 축적과 결합될 때 운영 주체의 배경을 뒷받침하는 정황 지표로 가능합니다.
지니언스 시큐리티 센터는 로그 분석 과정에서 영문 키 값으로 기록된 입력이 대한민국 국가표준인 KS X 5002 두벌식 한글 자판 배열과 일관되게 대응하는 정황을 확인했습니다. 이를 토대로 해당 입력이 한글 입력 상태에서 작성된 문장임을 복원할 수 있었습니다.
참고로 남북한의 국가표준 자판은 모두 두벌식을 기반으로 합니다. 그러나 대한민국은 KS X 5002, 북한은 KPS 9256 규격을 사용하며, 두 표준은 자음/모음 영역과 입력 방식이 유사하지만 개별 자모의 배열에는 일부 차이가 있습니다. 다만 북한 연계 위협 행위자도 한국어 기반 Windows 환경을 운용하거나 한국인 표적을 대상으로 문서와 콘텐츠를 작성하는 과정에서 남한식 두벌식 자판을 사용할 수 있습니다.
영문 키 값으로 기록된 입력을 한국내 표준 두벌식 한글 자판 배열에 따라 변환한 결과, 한글 문장으로 복원되었습니다.
위협 행위자는 자신의 운영 환경에서 Microsoft Defender의 보고(Report) 기능을 해제하는 방법을 한글로 작성한 뒤, Google Translate를 이용해 영어로 번역했습니다.
재현 테스트 결과, Google Translate의 출력은 로그의 클립보드에 기록된 영문과 정확히 일치했습니다.
[그림 3-10] 한글 자판으로 작성된 키 입력 흔적
이후 ChatGPT - Google Chrome 창에서 Ctrl+V와 Enter 입력이 연속으로 기록돼, 번역된 영어 문장을 ChatGPT 프롬프트로 제출한 사실도 확인됐습니다.
이는 위협 행위자가 기술적 질의에서 더 정확하고 유용한 답변을 얻거나 영문 기술 자료를 활용하기 위해 영어 프롬프트를 선호했을 가능성을 보여줍니다.
|
로그 기록 (정제) |
Microsoft Defenderdptj Reportrlsmddmf tjfwjdgowpgkfuaus djEjgrp gkdudi gksmsrk? |
|
|
한글 자판 (변환) |
Microsoft Defender에서 Report기능을 설정해제하려면 어떻게 하여야 하는가? |
|
|
구글 번역 (영문) |
How do I disable the Report feature in Microsoft Defender? |
|
[표 3-1] 한글 자판을 사용한 근거와 변환 내용 #1
더불어 로그 분석 과정에서 위협 행위자가 지갑 정보, Gmail 계정 정보, 웹사이트 가입 이력 등 개인정보의 노출 여부를 확인해 달라는 내용의 문장을 두벌식 한글 자판으로 작성한 정황을 확인했습니다.
[그림 3-11] 북한식 표현이 포함된 로그
로그 기록을 정제하여 한글 자판으로 변환하면 아래와 같고, 실제 로그에 포함되어 있던 구글 번역 영문 내용과도 일치합니다.
|
로그 기록 (정제) |
ghrtl durldp wlrkqwjdqh(SeedEhsms rkdlqdkagh emd), Gmailwjdqh(ID, dkagh emd), Tkdlxmrkdlqflfurdmf qlfhtgotj rodlswjdqhemfdl fhcnfehlduTsmswl dkfdkqhkwntlqtldh. rncpwjrdmfh qnstjrgkftnfhr whgtmqslek. eocndgkwlsms aktpdy. qnxkrgkqslek. |
|
|
한글 자판 (변환) |
혹시 여기에 지갑정보(Seed또는 가입암호 등), Gmail정보(ID, 암호 등), 싸이트가입리력을 비롯해서 개인정보들이 로출되였는지 알아봐주십시오. 구체적으로 분석할수록 좋습니다. 대충하지는 마세요. 부탁합니다. |
|
|
구글 번역 (영문) |
Please check if any personal information, including wallet details (Seed or sign-up passwords, etc.), Gmail information (ID, password, etc.), and site sign-up history, has been exposed here. The more detailed the analysis, the better. Please do not do it haphazardly. Thank you. |
|
[표 3-2] 한글 자판을 사용한 근거와 변환 내용 #2
영문 키 값으로 기록된 입력 로그를 두벌식 한글 자판 배열에 따라 복원한 결과, 싸이트, 리력, 로출되였는지 등 북한식 어휘와 표기 특징이 반복적으로 확인됐습니다.
대한민국 표준어에서는 각각 사이트, 이력, 노출되었는지로 표현합니다.
이러한 반복적인 어휘와 표기 특징은 위협 행위자의 지역적, 문화적 배경을 식별하는 디지털 프로파일링 지표이자, 위협 귀속을 뒷받침하는 언어학적 단서입니다.
이는 특정 지역의 고유한 어휘, 맞춤법 및 언어 사용 맥락을 기반으로 행위자의 언어권과 활동 환경을 식별하는 위협 인텔리전스 분석 방법론입니다.
[그림 3-12] 특정 영문자의 한글 키보드 연결 예시
특히 해당 어절들은 백스페이스를 통한 반복 교정 이후에도 동일한 표기가 유지되어, 단순 오타가 아닌 위협 행위자에게 내재화된 표기 습관으로 볼 수 있습니다.
최종 변환된 영문은 분석 대상을 지정하고 조회 항목을 열거한 뒤 분석의 상세도를 요구하는 명령형 구조를 갖추고 있습니다.
이는 AI 서비스에 입력하는 프롬프트로 활용하기에 적합한 형태입니다. 해당 문장이 클립보드에 기록된 이후 특정 AI 서비스에 붙여넣어 제출된 사실을 입증할 키 입력이나 창 전환 기록은 확인되지 않았지만, 충분한 가능성을 배제할 수는 없습니다.
C2 서버에 노출된 검색 기록 분석 과정에서 북한식 어휘와 표현 방식이 다수 확인되었습니다.
해당 기록에서는 외화벌이 활동과 관련된 검색 및 질의가 주로 관찰되었으며, 작성자가 한글 질의문을 Google 번역을 통해 변환한 후 ChatGPT에 입력하는 방식의 사용 패턴도 확인되었습니다.
[그림 3-13] 검색 및 구글 번역 기록 사례
또한 가상자산과 관련된 검색 기록 및 활동 흔적도 다수 확인되었습니다.
특히 "btc를 리용하는 사용자들을 어디서 검색할 수 있습니까?"와 같은 질의가 발견되었으며, 이는 비트코인 사용자를 대상으로 한 정보 수집 또는 가상자산 관련 활동을 위한 탐색 행위로 해석될 수 있습니다.
더불어 "해커들이 Doc exploit를 리용하여 어떻게 공격하는지 구체적으로 알고싶습니다."와 같이 문서 취약점 공격 기법과 관련된 질의가 존재했으며, 북한에서 사용하는 것으로 알려진 다수의 표현이 사용되는 등 언어적 특징이 확인되었습니다.
[그림 3-14] 북한 어휘가 사용된 문장들
본 캠페인의 침투 기법 자체는 김수키의 기존 전술에서 크게 벗어나지 않습니다. 스피어피싱, LNK, PowerShell, 디코이 문서, 다양한 C2 서버 조합은 수년간 반복되고 있습니다.
그러나 본 보고서가 주목하는 실질적 변화는 다른 곳에 있습니다.
위협 행위자 인프라에서 관측된 것은 AI를 이용해 문서 몇 건을 만든 흔적이 아니라, 로컬 LLM 실행환경 구축 → 보유 문서 기반 RAG 구성 → AI 에이전트 개발 프레임워크 수집 → 외부 상용 AI 연동 라이브러리 확보로 이어지는 일관된 역량 축적 과정입니다.
특히 다음 세 가지 조합은 향후 위협 양상을 예측하는 데 중요합니다.
다만 현시점에서 자체 모델 훈련 근거는 발견되지 않았습니다. 관측된 것은 악성코드 개발 및 공격에 활용하는 단계입니다.
방어 관점에서 시사점은 명확합니다. 미끼 문서의 완성도만으로 위협 여부를 판단하는 방식은 더 이상 유효한 방어 수단이 아닙니다. 생성형 AI의 활용으로 어색한 번역체, 조악한 서식, 맞춤법 오류 등 전통적인 디지털 프로파일링 지표가 빠르게 약화되고 있기 때문입니다.
따라서 방어의 중심을 콘텐츠 판별에서 행위 기반 탐지로 전환해야 하며, 이를 보안 권고의 기본 전제로 삼아야 합니다.
조직은 침해지표(IoC) 기반 탐지를 포함해, LNK 실행 이후 발생하는 PowerShell 구동, 지속성 확보, 외부 통신 등 일련의 이상행위를 맥락적으로 연결하여 종합적인 위협 수준을 판단해야 합니다.
본 캠페인은 생성형 AI로 제작된 것으로 판단되는 미끼 문서와 악성 LNK 파일을 이용해 초기 침투한 뒤, 난독화된 PowerShell 실행, 예약 작업을 통한 지속성 확보, Git 기반 C2 통신, 정보 수집 및 후속 RAT 배포로 이어지는 다단계 공격입니다.
다음과 같은 연속적 이상행위를 하나의 공격 맥락으로 연결해 분석해야 합니다.
'Genian Insights E'는 통합 엔드포인트 보안 플랫폼으로, 프로세스 트리와 명령행, 파일 생성, 예약 작업, 네트워크 연결 등 엔드포인트에서 발생하는 다양한 이벤트를 연계 분석합니다.
이를 통해 개별 이벤트만으로는 정상 행위처럼 보일 수 있는 LNK 실행, PowerShell 구동, Git 서비스 접속과 후속 페이로드 실행을 하나의 공격 흐름으로 가시화할 수 있습니다.
또한 LnkTarget 정보를 기반으로 LNK 파일이 참조하거나 실행하는 대상과 명령을 초기 단계부터 확인하고, 이후 생성된 스크립트와 하위 프로세스, 지속성 확보 및 외부 통신 행위까지 연계 추적할 수 있습니다.
이러한 가시성은 정상 클라우드 서비스와 개발 플랫폼을 악용해 탐지를 우회하는 공격에도 효과적으로 대응할 수 있는 기반을 제공합니다.
궁극적으로 AI가 미끼 문서의 완성도와 공격 준비 속도를 높이더라도, 엔드포인트에서 발생하는 실행, 지속성, 통신, 페이로드 행위까지 숨길 수는 없습니다.
따라서 본 캠페인에 대한 효과적인 대응을 위해서는 최신 침해지표를 지속적으로 반영하는 동시에, 공격 단계 간 상관관계를 분석하고 이상행위를 신속하게 차단할 수 있는 EDR 중심의 통합 대응 체계를 구축해야 합니다.
[그림 4-1] EDR을 통해 악성 LNK 파일을 탐지한 모습
Genian Insights E의 Attack Storyline 기능을 활용하면 압축 해제 과정에서 생성되는 악성 LNK 파일을 신속하게 탐지할 수 있습니다.
이를 통해 초기 위협 유입 단계에서 악성 행위를 식별하고, 빠른 대응 및 확산 방지가 가능합니다.
[그림 4-2] LNK 통해 수행된 PowerShell 실행 명령 탐지
악성 LNK 파일이 실행되면 PowerShell 프로세스가 연계되어 실행되고, 이후 추가 명령 실행, 페이로드 다운로드 등 일련의 악성 행위가 단계적으로 수행됩니다.
EDR은 이러한 프로세스 실행 흐름과 행위 기반 이벤트를 실시간으로 분석하여 공격 활동을 신속하게 식별하고 대응할 수 있습니다.
[그림 4-3] PowerShell을 통한 Github C2 접속 화면
PowerShell 명령 실행 이후 예약 작업 등을 통해 일정 주기마다 GitHub C2 서버와 통신하며 추가 명령 수신 및 악성 행위를 수행합니다.
EDR은 이러한 반복적인 네트워크 통신 패턴과 프로세스 행위 정보를 기반으로 비정상적인 활동을 탐지하고, 보안 관리자가 위협을 신속하게 인지하여 대응 조치를 수행할 수 있도록 지원합니다.
[그림 4-4] Genian Insights E 분석 전용 화면
Genian Insights E는 별도의 Analysis 전용 화면을 통해 탐지된 위협에 대한 핵심 정보를 직관적으로 제공하고, 공격 흐름과 주요 행위를 한눈에 파악할 수 있도록 지원합니다.
이를 통해 관리자는 탐지된 위협을 신속하게 확인하고, 상세 분석 및 대응 조치를 효율적으로 수행할 수 있습니다.
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
112.216.9[.]171
170.205.29[.]83
170.205.30[.]227
185.27.134[.]140
27.102.137[.]126
27.102.137[.]159
27.102.138[.]44
stoks.great-site[.]net
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