위협분석보고서-genians

러시아 전쟁의 이면에서 우크라이나를 겨냥한 김수키의 Operation GitPower

작성자: Genians | Oct 11, 2026, 12:00:00 PM

◈ 주요 결과 (Key Findings)

  • 김수키 그룹, 우크라이나 외교, 안보 및 국제정책 전문가 대상 공격 전개
  • 국제 콘퍼런스 초청과 분석 협력을 사칭한 답장 유도형 스피어피싱 공격 활용
  • Operation GitPower의 연장선에서 정상 개발 플랫폼을 악성파일 유포와 정보 유출에 악용
  • LNK 및 Zoom 설치 프로그램 위장 악성코드에서 기존 CHM 공격 전술과의 연계성 확인
  • 한국과 우크라이나 간 협력 동향을 겨냥한 국가 배후 사이버 첩보 활동 가능성
  • LNK, PowerShell 및 GitHub 악용 행위에 대한 EDR 탐지와 위협 헌팅 강화 필요

 

 

1. 요약 (Executive Summary)

지니언스 시큐리티 센터(Genians Security Center)는 북한 연계 위협 그룹으로 알려진 김수키(Kimsuky)가 GitHub, GitLab 등을 비롯한 여러 정상 서비스를 악용해 수행하는 Operation GitPower 위협 활동을 지속적으로 추적하고 있습니다.

본 보고서에서는 Operation GitPower에서 확인된 공격 전술을 활용해 우크라이나의 외교, 안보 및 국제정치 분야 전문가들을 표적으로 삼은 사례를 분석합니다. 특히 위협 행위자는 러시아의 우크라이나 침공 이후 전쟁 피해 복구와 국가 재건을 위해 활동하는 우크라이나 시민사회 인사를 대상으로 지속적이고 집요한 공격을 전개하고 있습니다.

이번 공격은 김수키가 기존의 한국 중심 공격에서 벗어나 우크라이나의 주요 인물까지 공격 범위를 확대했다는 점에서 주목할 필요가 있습니다. 실제로 우크라이나의 특정 인물을 겨냥한 사이버 공격 시도가 확인되었으나, 조사 대상 사례 대부분에서는 공격이 성공하지 못한 것으로 파악되었습니다.

이러한 정황은 러시아나 우크라이나 전쟁이 물리적 전장을 넘어 제3국의 국가 배후 위협 행위자가 관여하는 사이버 첩보 및 정보전 영역으로 확장되고 있음을 시사하며, 국가 간 지정학적 갈등과 사이버 위협 활동의 연계성이 더욱 복잡해지고 있다는 점에서 중요한 의미를 갖습니다. 

 

 

2. 배경 (Background)

2025년 5월 13일 Proofpoint Threat Research 팀은 「TA406 Pivots to the Front」를 통해 북한 연계 위협 그룹 TA406이 같은 해 2월부터 우크라이나 정부기관을 대상으로 스피어피싱 공격을 수행했다고 밝혔습니다.

 

[그림 2-1] 우크라이나 정부기관 대상 스피어피싱 공격 사례

 

Proofpoint는 TA406 그룹이 북한 정부를 위해 활동한다고 높은 신뢰도로 평가하고 있으며, 해당 그룹의 활동은 다른 보안업체에서 김수키와 코니 그룹 등으로 분류하는 활동과 일부 겹치는 것으로 보고 있습니다.

당시 공격에는 우크라이나의 정치 상황과 러시아의 침공을 주제로 한 미끼가 활용되었습니다. 위협 행위자는 PDF 문서로 위장한 악성 바로가기(LNK) 파일과 Compiled HTML Help(CHM) 파일을 이용해 PowerShell 기반 악성 스크립트의 실행을 유도했습니다.

 

[그림 2-2] LNK 악성파일이 포함된 압축파일 모습

 

LNK와 CHM 파일 내부의 명령은 각각 Base64 인코딩과 특정 문자열 치환 방식으로 난독화되어 있으며, C2 서버 주소도 포함하고 있습니다.

위협 행위자는 무료 웹 호스팅 서비스인 AwardSpace가 제공하는 하위 도메인을 추가 스크립트 다운로드, 감염 시스템 정보 전송 및 후속 명령 수신을 위한 C2 인프라로 활용했습니다.

  • qweasdzxc.mygamesonline[.]org
  • wersdfxcv.mygamesonline[.]org
  • pokijhgcfsdfghnj.mywebcommunity[.]org
  • mykolapalinchak.medianewsonline[.]com

 

[그림 2-3] 여러 악성 CHM 파일 내부에 포함된 악성 스크립트 비교

 

더불어 Proton Mail 계정을 통해 Microsoft 보안 경고로 위장한 이메일을 발송해 계정 정보 탈취를 시도했습니다.

북한은 2024년 가을 러시아의 전쟁 수행을 지원하기 위해 병력을 파견했습니다.

Proofpoint는 TA406이 북한 지도부의 전략적 판단을 지원하기 위해 전장에 투입된 북한군의 위험 수준과 러시아의 추가 병력 또는 무기 지원 요청 가능성에 관한 정보를 수집하고 있을 가능성이 매우 높은 것으로 평가했습니다.

이후 2026년 8월 24일 Digital Security Lab Ukraine(DSLU)는 「Living off GitHub: From Gmail Reply-Baiting to Fileless Exfiltration」을 통해 우크라이나 시민사회단체 관계자를 대상으로 한 공격 사례를 공개했습니다.

위협 행위자는 우크라이나의 외교와 안보 분야에서 활동하는 유명 전문가를 사칭해 국제 협력과 자료 교환을 제안하는 Gmail 메일을 보냈습니다.

최초 메일에는 링크나 첨부파일을 포함하지 않았으며, 표적이 답장을 보내 관심을 보인 경우에만 악성 압축파일의 다운로드 링크를 전달했습니다.

 

[그림 2-4] 답장을 유도하는 최초 메일

 

이는 수신자의 경계심을 낮추고 보안 시스템의 초기 탐지를 피하는 동시에, 실제로 반응한 표적만 선별하기 위한 답장 유도형 스피어피싱 방식으로 김수키 그룹이 주로 사용하는 대표적인 공격 기법 중 하나입니다.

후속 공격에서는 PDF 문서로 위장한 악성 스크립트 명령이 포함된 LNK 파일이 전달되었습니다.

Codeberg는 악성 압축파일 유포에, GitLab은 정상 문서로 위장한 파일과 악성 스크립트 제공에, GitHub는 명령 전달과 수집 정보 전송에 활용되었습니다. 이를 통해 악성코드 유포와 C2 통신 등 Operation GitPower와 연계된 공통 공격 전술이 확인되었습니다.

한편, 동일한 위협 행위자는 2026년 9월 8일 서울에서 개최된 제14회 대한민국 사이버보안 콘퍼런스(KCSCON 2026)의 조직위원회를 사칭하여 우크라이나의 외교 및 안보 분야 전문가를 대상으로 답장 유도형 스피어피싱 공격을 수행했습니다.

위협 행위자는 실제 행사명과 일정, 장소, 주최기관 및 주요 의제를 이메일에 포함하고, 수신자가 초청 발표자로 선정된 것처럼 위장하여 이메일의 신뢰도를 높였습니다. 최초 이메일에는 악성 링크나 첨부파일을 포함하지 않은 채 발표 가능 여부와 공식 PDF 초청장 수신 여부에 대한 회신을 요청했습니다.

해당 공격 사례는 KCSCON 2026에서 엔키화이트햇이 진행한 「2026년 Kimsuky의 스피어피싱·지속성 전략」 세션에서도 소개되었습니다.

이처럼 김수키 그룹이 우크라이나의 외교 및 안보 분야 관계자 등에 지속적으로 접근해 공격하는 배경과 정보 수집 목적을 이해하기 위해서는 러시아와 우크라이나의 전쟁 상황과 북한의 군사적 개입을 함께 살펴볼 필요가 있습니다.

2026년 9월 기준 러시아와 우크라이나의 전선은 대체로 교착 상태에 있으며, 양측의 장거리 드론 공격과 기반시설 타격도 지속되고 있습니다. 휴전 협상 역시 뚜렷한 진전을 보이지 않고 있습니다.

북한은 2024년부터 러시아의 전쟁 수행을 지원하기 위하여 병력을 파견하는 등 군사 협력을 이어왔습니다. 이 가운데 2025년 1월 9일 러시아 쿠르스크 지역에서 우크라이나군에 각각 생포된 북한군 병사 2명은 이후 한국행 의사를 밝혔으며, 한국과 우크라이나 간 협의를 거쳐 2026년 9월 한국에 이송된 사실이 확인되었습니다.

이러한 정세를 고려할 때 김수키 그룹의 우크라이나 대상 공격은 전쟁 상황과 북한군의 피해 규모, 포로 조사 및 처리 동향, 한국과 우크라이나 간 협의 내용 등을 수집하기 위한 사이버 첩보 활동일 가능성이 있습니다.

특히 북한군 포로가 한국에 이송됨에 따라 관계기관의 조사와 면담 과정에서 파병 규모와 경로, 병력 구성, 지휘체계, 교육 및 훈련 내용, 작전 명령, 전투 수행 방식, 피해 규모와 군수지원 실태 등 북한군의 내부 정보가 파악될 가능성이 커졌습니다.

또한 포로의 진술이 언론 보도나 정부 발표를 통해 공개될 경우 북한의 러시아 파병 실태와 전장 활동이 국제사회에 구체적으로 드러날 수 있습니다.

이에 따라 북한은 관련 정보의 공개 범위와 조사 동향, 한국과 우크라이나 정부의 대응 방향을 사전에 파악하기 위하여 관계기관과 주요 인물을 대상으로 사이버 정보 수집 활동을 확대할 가능성이 있습니다.

김수키 그룹은 정부기관과 방산업체, 연구기관, 외교 및 안보 전문가 등을 대상으로 스피어피싱 공격을 통한 계정 탈취와 악성코드 유포를 지속해 왔습니다.

최근에는 AI 에이전트를 미끼 문서 제작과 악성 스크립트 개발 등 공격 과정에 접목하고, 자체적인 로컬 대규모 언어 모델 환경을 구축하려는 정황도 확인되고 있습니다.

이러한 AI 기술의 활용은 표적에 최적화된 피싱 콘텐츠의 신속한 제작과 공격 자동화, 탐지 회피 능력 향상으로 이어질 수 있다는 점에서 주의가 필요합니다.

또한 정상적인 이메일과 개발 플랫폼까지 공격 인프라로 악용하는 등 수법도 지속적으로 고도화하고 있습니다.

따라서 국제사회는 이러한 활동을 북한의 군사적 개입과 AI 기반 사이버 역량이 결합된 복합 위협으로 인식할 필요가 있습니다.

아울러 공격 인프라와 전술, 기술 및 절차(TTP), 침해지표(IoC)를 신속하게 공유하고, AI를 활용한 공격 양상에 관한 분석과 탐지 체계를 발전시키는 한편 국가와 민간 보안업체 간 공조를 지속적으로 강화하여야 합니다.

 

 

3. 위협 분석 (Threat Analysis)

지니언스 시큐리티 센터는 우크라이나 현지 피해 사례를 바탕으로 여러 나라의 전문가들과 협력해 조사를 수행했습니다.

확보한 이메일 원문과 악성파일을 중심으로 발신 계정, 사회공학 시나리오, 파일 실행 과정, 공격자 저장소, 명령제어 인프라 및 정보 유출 구조를 단계별로 분석했습니다.

 

3-1. 한국 사이버 보안 콘퍼런스 발표자 초청 사칭 공격

분석 결과, 위협 행위자는 2026년 8월 6일 kcscon@proton[.]me 계정을 이용해 우크라이나 외교 및 안보 전문가에게 발표자 초청 메일을 발송했습니다. 발신자명은 KCSCON으로 표시했으며, 수신자가 제14회 한국 사이버 보안 콘퍼런스의 초청 연사로 선정된 것처럼 메일을 작성했습니다.

위협 행위자는 공개적으로 확인할 수 있는 행사 일정과 장소, 주최기관, 참석 대상 및 주요 발표 주제를 본문에 구체적으로 기재했습니다. 또한 수신자의 주요 활동 분야와 경력을 언급하고 항공료, 숙박비 및 발표 사례비 지원을 제안하는 등 표적의 관심을 끌고 신뢰를 형성하기 위한 맞춤형 문구를 사용했습니다.

그러나 공식 주최기관의 이메일 도메인이 아닌 Proton Mail 계정이 발신 주소로 사용됐으며, 추가 수신 주소에는 info.seclab.noreply@gmail[.]com이 포함돼 있었습니다. 해당 주소는 다른 우크라이나 전문가를 대상으로 한 공격에서도 동일하게 확인된 것으로, 공격 사례 간 연관성을 뒷받침하는 주요 지표 중 하나입니다.

최초 접촉 단계에서는 보안 시스템에 탐지될 수 있는 파일이나 URL을 바로 노출하지 않고, 발표 수락 여부와 공식 PDF 초청장 필요 여부에 대한 회신을 유도했습니다. 이는 수신자의 반응을 확인해 공격 대상을 선별한 뒤, 회신한 표적에게만 후속 자료나 악성파일을 전달하기 위한 표적 검증 및 사전 정찰 단계로 분석됩니다.

 

[그림 3-1] 우크라이나 전문가 대상 한국 사이버 보안 콘퍼런스 초청 위장 메일

 

공격 표적이 최초 초청 메일에 회신하면, 위협 행위자는 실제 행사 초청 자료로 위장한 ZIP 압축파일을 후속 메일로 전달합니다. 분석 과정에서 파일명과 압축 방식이 서로 다른 두 가지 변종이 확인되었습니다.

초기 변종은 별도의 비밀번호 없이 압축파일을 열 수 있었으나, 이후 변종에는 비밀번호가 설정되었습니다. 이는 이메일 보안 서비스의 압축파일 내부 검사와 악성파일 탐지를 어렵게 만들기 위한 변경으로 판단됩니다.

첫 번째 변종의 파일 구성은 다음과 같습니다.

  • KCSCON_2026_Official_Invitation.zip
    • KCSCON_2026_Official_Invitation.html
    • KCSCON_2026_Official_Invitation.pdf.lnk

 

두 번째 변종에서는 영문(en) 버전처럼 변경되었습니다.

  • KCSCON_Official Invitation Letter.zip
    • KCSCON_2026_Official_Invitation.html
    • KCSCON_Official Invitation Letter_en.pdf.lnk

 

[그림 3-2] 보안 콘퍼런스 초청장으로 위장된 악성파일



3-1-1. LNK 악성파일 분석

두 압축파일에는 공통적으로 정상적인 행사 초청 내용을 보여주는 KCSCON_2026_Official_Invitation.html 파일과 PDF 문서로 위장한 악성 LNK 바로가기 파일이 포함되어 있습니다.

HTML 파일은 수신자에게 정상적인 초청 자료가 전달된 것처럼 보이게 해 의심을 낮추는 역할을 합니다.

악성 LNK 파일은 파일명 중간에 .pdf를 삽입한 이중 확장자를 사용하고 PDF 아이콘을 적용했습니다. Windows 환경에서 실제 확장자인 .lnk가 표시되지 않아 사용자는 이를 정상 PDF 문서로 오인할 수 있습니다.

위협 행위자는 압축 비밀번호와 파일명을 변경하면서도 정상 HTML 문서와 악성 LNK 파일을 함께 제공하는 기본 구조는 유지했습니다.

이는 정상 문서를 이용해 공격의 신뢰도를 높이고, 사용자가 악성 바로가기 파일을 직접 실행하도록 유도하기 위한 방법입니다.

 

구분 KCSCON_2026_Official_
Invitation.pdf.lnk
KCSCON_Official Invitation
Letter_en.pdf.lnk
파일 크기 1,336바이트 1,002바이트
실행 대상 ..\..\..\Windows\system32\cmd.exe
LNK 주요 특징

PDF 이중 확장자와 아이콘 사용

cmd.exe 명령행 포함

GitLab

원격 경로

kickball12/bahubali

kcs.pdf 및 first.ini 참조

galata20/shiba

first.ini 참조

다운로드 명령 curl -k -L로 kcs.pdf와 first.ini 다운로드 curl -k -L로 first.ini 다운로드
로컬 저장 파일

C:\Users\Public\Music\kcs.pdf

C:\Users\Public\Music\apple.vbe

C:\Users\Public\Music\shiba.vbe

후속 파일 실행 다운로드한 apple.vbe 직접 실행 다운로드한 shiba.vbe 직접 실행
핵심 차이 미끼 PDF 표시와 VBE 실행을 함께 수행 미끼 PDF 표시 없이 VBE 실행 수행

[표 3-1] LNK 악성파일 주요 내용 비교표

 

압축파일에 포함된 KCSCON_2026_Official_Invitation.html과 GitLab 저장소에서 내려받아 표시되는 kcs.pdf는 서로 다른 화면과 내용을 제공합니다. 모두 공식 초청장 형식으로 구성되어 있어, 피해자가 정상적인 행사 안내 문서를 열람한 것으로 오인하도록 유도합니다.

이처럼 정상 문서를 미끼로 함께 표시하는 방식은 사용자의 의심을 낮추는 동시에, 백그라운드에서 실행되는 VBE 파일과 후속 악성 행위를 은폐하기 위한 전형적인 사회공학 기법입니다.

 

[그림 3-3] 한글과 영어로 제작된 미끼용 문서들

 

3-1-2. first.ini, help.ini 파일 분석

악성 LNK는 GitLab 저장소의 first.ini를 변종에 따라 apple.vbe 또는 shiba.vbe라는 이름으로 저장해 실행합니다. 이후 실행된 first.ini는 후속 스크립트인 help.ini를 내려받아 메모리에서 실행합니다.

해당 스크립트는 PowerShell 명령 문자열 사이에 apple, wolf, wefhskdf 등의 불필요한 문자열을 반복적으로 삽입하고, 실행 직전에 Replace() 함수로 이를 제거해 원래 명령을 복원합니다.

이러한 문자열 치환 기반 난독화는 2025년 CHM 공격에서 확인된 기법과 유사합니다. 특히 wolf 문자열은 Operation GitPower 계열의 공격 활동에서 지속적으로 관찰되는 특징적인 코드 흔적 중 하나입니다.

 

[그림 3-4] 문자열 난독화가 적용된 first.ini 파일의 코드 화면

 

특히 first.ini 파일의 커밋 메타데이터에서는 ken0723@kakao[.]com 카카오 메일 계정이 사용된 사실이 확인됩니다. 이는 김수키 그룹이 과거 여러 공격 활동에서 한국의 이메일 서비스를 활용해 온 양상과 부합하는 정황입니다.

 

[그림 3-5] first.ini 파일의 커밋 메타데이터 화면

 

이후 실행되는 help.ini는 최초 전달된 shiba.vbe의 후속 스크립트 경로에 감염 시스템의 컴퓨터 이름을 삽입해 호스트별 명령 수신 구조를 구성합니다.

그리고 Google 업데이트 구성요소로 위장한 예약 작업을 등록해 변형된 VBE 파일을 15분 주기로 실행합니다.

  • GoogleUpdateTaskMachineUA{1C791230-CA8D-6D04-AC55-E498ABE7C33}

또한 systeminfo 명령의 실행 결과와 사용자 Downloads 폴더의 파일 목록을 수집하고, 이를 Base64로 인코딩해 하드코딩된 액세스 토큰과 GitHub Contents API를 이용하여 위협 행위자 저장소의 피해 호스트별 경로로 전송합니다.

정보 전송이 완료되면 임시 수집 파일과 최초 전달된 VBE 파일을 삭제해 시스템에 남는 흔적을 최소화합니다.

초기 버전의 help.ini에는 변형 스크립트를 applee.vbe로 저장하면서 예약 작업에서는 shibaa.vbe를 실행하도록 설정한 파일명 불일치가 존재했습니다. 원본 파일 삭제 과정에서도 apple.vbe의 존재 여부를 확인한 뒤 shiba.vbe를 삭제하는 조건 오류가 확인되었습니다.

이후 수정된 버전에서는 출력 파일명을 shibaa.vbe로 변경해 예약 작업의 실행 경로와 일치시켰으며, 삭제 조건도 shiba.vbe를 기준으로 통일했습니다.

이는 위협 행위자가 초기 코드의 구현 오류를 확인한 뒤 지속성 확보와 흔적 삭제 기능이 정상적으로 동작하도록 코드를 신속하게 보완한 정황입니다.

 

[그림 3-6] help.ini 파일의 초기 오류 수정 이력

 

수집 정보는 데이터 유형과 생성 시각을 조합한 SYS_yyyy-MM-dd_HHmm.tmp 및 DOWN_yyyy-MM-dd_HHmm.tmp 형식의 파일명으로 GitHub 저장소에 업로드됩니다.

SYS와 DOWN 접두어는 각각 시스템 정보와 Downloads 폴더 목록을 구분하며, 뒤에 포함된 날짜와 시각은 정보 수집 시점을 식별하는 데 사용됩니다.

이처럼 수집 정보의 종류와 실행 시각을 결합해 파일명을 생성하고, 피해 시스템별 저장 경로에 업로드하는 방식은 기존 Operation GitPower 사례에서 반복적으로 관찰된 특징적인 데이터 관리 방식과도 일치합니다.

 

3-2. 우크라이나 국제정책 전문가 대상 분석 협력 사칭 공격

앞서 확인된 한국 사이버 보안 콘퍼런스 발표자 초청 사칭 공격에는 info.seclab.noreply@gmail[.]com 이메일 주소가 사용되었습니다. 동일한 주소는 이후 우크라이나의 또 다른 전문가를 대상으로 수행된 연속적인 스피어피싱 공격에서도 확인되었습니다.

이번 공격은 우크라이나의 국제정책, 안보 협력 및 시민사회 분야에서 활동하는 전문가를 대상으로 수행되었습니다. 위협 행위자는 유럽 소재 정책 연구기관의 동아시아 분야 전문가를 사칭하고, 수신자의 공개 경력과 대외 활동을 반영한 맞춤형 메일로 접근하였습니다.

 

3-2-1. 스피어피싱 공격 분석

첫 번째 메일은 2026년 8월 19일 12시 25분경 우크라이나 현지시간(EEST, UTC+3) 기준으로 발송되었습니다. 이는 한국 표준시간(KST, UTC+9)으로 같은 날 18시 25분에 해당합니다.

위협 행위자는 러시아와 북한의 군사협력 강화 및 한국과 일본의 안보 정책을 다룬 분석 보고서를 준비하고 있다며, 수신자에게 보고서 공개 전 검토를 요청했습니다.

메일에는 악성 링크나 첨부파일이 포함되지 않았으며, 수신자의 전문성과 국제 활동을 높이 평가하는 표현과 온라인 회의 제안을 통해 답장을 유도했습니다. 앞선 사례와 마찬가지로 최초 접근 단계에서 악성 요소를 노출하지 않고 정상적인 연구 협력 관계를 형성하기 위한 답장 유도형 수법입니다.

같은 날 14시 44분경 우크라이나 현지시간 기준으로 발송된 두 번째 메일에서는 수신자의 회신에 감사한다는 내용과 함께 분석 자료를 전달했습니다. 첫 번째 메일과 두 번째 메일의 발송 간격은 약 2시간 18분으로, 수신자가 확인한 직후 후속 공격이 진행되었습니다.

두 번째 메일에는 소프트웨어 개발자가 프로그램 소스코드와 관련 파일을 저장하고 공유하는 공개 개발 플랫폼인 Codeberg의 Raw 파일 경로가 삽입되어 있었으며, 사칭한 인물의 이름과 '분석 보고서'를 의미하는 표현으로 구성된 ZIP 파일을 내려받도록 유도했습니다.

 

[그림 3-7] 분석 보고서로 사칭한 공격 화면

 

해당 파일명과 전달 명분은 첫 번째 메일에서 제시한 보고서 검토 요청과 자연스럽게 연결됩니다.

위협 행위자는 공개 코드 저장소를 파일 전달 경로로 사용하고 업무 맥락에 부합하는 현지 언어의 파일명을 적용해, 수신자가 해당 압축파일을 정상적인 연구 자료로 인식하도록 유도했습니다.

 

3-2-2. LNK 악성파일 분석

공격에 사용된 Аналітичний_звіт_Наталії.zip 압축파일에는 분석 보고서로 위장한 악성 LNK 바로가기 파일이 포함되어 있습니다. 해당 파일은 수신자에게 앞서 검토를 요청한 보고서 자료처럼 보이도록 우크라이나 현지어 파일명을 사용했습니다.

LNK 파일이 실행되면 cmd.exe를 통해 GitLab 저장소에서 aaa.pdf와 first.ini를 내려받습니다. aaa.pdf는 C:\Users\Public\Music\aa.pdf로 저장된 뒤 explorer.exe를 통해 화면에 표시되며, 사용자가 정상적인 분석 보고서를 열람한 것으로 인식하도록 만듭니다. 같은 시점에 first.ini는 apple.vbe라는 이름으로 저장되어 백그라운드에서 실행됩니다.

이 방식은 압축파일에 정상 HTML 문서를 함께 포함했던 한국 사이버 보안 콘퍼런스 발표자 초청 사칭 공격과 약간의 차이를 보입니다. 앞선 사례는 압축파일 내부에 정상 HTML로 신뢰도를 높였지만, 이번 경우는 악성 LNK가 실행된 이후 원격 저장소에서 미끼 PDF를 내려받아 표시하는 단일 미끼 형태를 사용하였습니다.

또 다른 LNK 변종은 특정인의 실명이 포함된 영문 분석 보고서 형식의 파일을 사용했습니다. 보고서에서는 개인정보 보호를 위해 실명의 일부를 별표(*)로 처리했습니다.

이 변종은 미끼 PDF를 내려받거나 화면에 표시하지 않고 first.ini 파일을 shiba.vbe라는 이름으로 저장한 뒤 직접 실행했습니다. 두 변종은 미끼 문서 제공 여부에는 차이가 있지만, PDF 파일로 위장한 LNK를 통해 GitLab에서 후속 파일을 내려받아 VBE 형식으로 실행하는 기본 구조는 동일합니다.

이는 공격 대상의 언어와 업무 주제에 따라 LNK 파일명과 미끼 문서를 변경하는 한편, 기존 GitLab 인프라와 후속 스크립트 실행 체계는 반복적으로 재사용한 방식입니다.

 

구분 Аналітичний_звіт_Наталії.pdf.lnk Natalia B*******_Analytic.pdf.lnk
파일 크기 1,332바이트 1,002바이트
실행 대상 ..\..\..\Windows\system32\cmd.exe
LNK 주요
특징
PDF 이중 확장자와 아이콘 사용
cmd.exe 명령행 포함
GitLab
원격 경로

kickball12/bahubali

aaa.pdf 및 first.ini 참조

galata20/shiba

first.ini 참조

다운로드
명령
curl -k -L로 aaa.pdf와 first.ini 다운로드 curl -k -L로 first.ini 다운로드
로컬 저장
파일

C:\Users\Public\Music\aa.pdf
C:\Users\Public\Music\apple.vbe

C:\Users\Public\Music\shiba.vbe

후속 파일
실행
aa.pdf 표시 후 apple.vbe 직접 실행 shiba.vbe 직접 실행
핵심 차이 미끼 PDF 표시와 VBE 실행을 함께 수행 미끼 PDF 표시 없이 VBE 실행 수행

[표 3-2] LNK 악성파일 주요 내용 비교표

 

'한국 사이버 보안 콘퍼런스 발표자 초청 사칭 공격'과 이번 '우크라이나 국제정책 전문가 대상 분석 협력 사칭 공격'에 사용된 LNK 파일을 비교한 결과, 공격 대상과 미끼 주제는 서로 다르지만 후속 파일 전달에 사용된 GitLab 주소와 저장소는 동일한 것으로 확인되었습니다.

두 사례 모두 kickball12/bahubali와 galata20/shiba 저장소를 사용했으며, 각 저장소에서 first.ini 파일을 내려받아 VBE 파일로 저장한 뒤 실행하는 구조를 공유합니다. 참고로 bahubali와 shiba는 러시아어나 우크라이나어에서 유래한 명칭으로 보기 어려우며, 해당 저장소 이름만으로 위협 행위자의 의도나 언어적 연관성을 판단하기에는 근거가 충분하지 않습니다.

주요 차이는 피해자에게 표시되는 미끼 PDF의 파일명입니다. 한국 사이버 보안 콘퍼런스 발표자 초청 사칭 공격에서는 kcs.pdf가 사용된 반면, 우크라이나 국제정책 전문가 대상 분석 협력 사칭 공격에서는 동일한 저장소의 미끼 문서가 aaa.pdf라는 이름으로 변경되었습니다.

이는 위협 행위자가 공격 대상과 사회공학적 주제에 따라 LNK 파일명과 미끼 문서만 변경하면서, 기존 GitLab 인프라와 후속 실행 체계는 반복적으로 재사용했음을 보여줍니다. 이러한 인프라와 실행 구조의 일치는 두 공격 사례의 연관성을 보여주는 주요 기술적 증거라 할 수 있습니다.

 

[그림 3-8] aa.pdf 미끼 문서 실행 화면

 

다운로드된 aa.pdf 문서는 2026년 세계인의 날을 기념해 한국 고려대학교 아세아문제연구원 아시아이주연구센터에서 주관한 '아시아의 이민과 이민자 통합' 국제학술대회의 영문 행사 포스터입니다.

공격 메일에서는 우크라이나 안보와 국제정책에 관한 분석 보고서를 전달한다고 설명한 반면, 실제 표시되는 문서는 한국의 이민 사회통합 분야 국제학술대회 포스터입니다. 메일의 전달 명분과 미끼 문서의 내용이 서로 일치하지 않는다는 점에서, 위협 행위자가 공격 대상에 적합한 문서를 준비하지 못했거나 기존에 확보한 정상 문서를 다른 공격에 임시로 재사용한 것으로 보입니다.

 

3-2-3. 자격증명 탈취 분석

위협 행위자는 앞선 악성파일 기반 공격이 실패한 이후 약 4주가 지난 9월 16일, 동일한 발신 계정으로 수신자에게 다시 접근하였습니다.

세 번째 메일에서는 오랫동안 연락하지 못한 점을 사과하고 특정 요일에 온라인 화상회의를 진행하자며 별도의 로그인 링크를 전달하였습니다. 이는 기존 대화에서 형성된 신뢰 관계를 재활용하면서 공격 방식을 자격증명 탈취로 전환한 후속 피싱 시도입니다.

메일은 제목과 본문, 링크 문구에서 서로 다른 서비스 명칭을 혼용하였습니다. 제목은 Google Meeting Request로 작성되어 Google Meet 회의 요청처럼 보이지만, 본문에서는 Zoom 회의에 참여하라고 안내합니다.

링크 문구는 'Gmail을 통한 Zoom 로그인'이라는 의미로 작성되어 Google의 이메일 서비스와 Zoom의 화상회의 서비스를 부자연스럽게 결합하고 있습니다. 실제 링크는 Google Meet이나 Zoom의 공식 도메인이 아닌 security-zooma.serveirc[.]com으로 연결되며, 분석 당시 해당 도메인은 일본 소재로 식별된 IP 주소 85.155.224[.]59를 가리키고 있었습니다.

도메인에 Zoom과 유사한 zooma 문자열을 삽입해 정상적인 서비스 주소처럼 보이도록 구성했으며, 링크에는 수신자의 이메일 주소를 전달하기 위한 것으로 보이는 토큰 값도 포함되어 있습니다. 이는 접속자를 식별하거나 피싱 화면에 이메일 주소를 미리 표시해 계정 정보 입력을 유도하기 위한 구성으로 보입니다.

 

[그림 3-9] 구글 회의 요청으로 위장한 피싱 메일

 

언어와 문체에서도 앞선 메일과 일치하지 않는 특징이 확인되었습니다. 위협 행위자는 여성 전문가를 사칭했지만, 세 번째 메일에서 발신자의 행동을 설명하는 일부 문장을 남성 화자가 사용하는 문법으로 작성하였습니다.

또한 첫 번째와 두 번째 메일에서는 수신자를 높이는 정중한 표현을 사용했으나, 세 번째 메일에서는 가까운 사이에서 사용하는 비격식 표현과 말투로 갑자기 변경되었습니다. 이는 기존의 공식적인 업무 관계와 앞선 대화 흐름을 고려할 때 부자연스러운 변화입니다.

이러한 성별 문법의 오류와 문체 변화, 서비스 명칭의 혼용은 세 번째 메일이 앞선 메일과 다른 방식으로 작성됐을 가능성을 보여줍니다.

위협 행위자가 우크라이나어에 능숙하지 못하고 서로 다른 작업자가 후속 메일을 작성했을 수 있습니다. 또는 구글 번역기나 생성형 AI 도구로 만든 문장을 충분히 검수하지 않았을 가능성도 있습니다.

 

3-3. 러시아, 우크라이나 평화구상 보고서 및 사회연구자 이력서 사칭 공격

2026년 9월 새로 발견된 두 개의 압축파일에서 러시아와 우크라이나의 평화구상 보고서 및 사회연구자 이력서로 위장한 악성 LNK 파일이 확인되었습니다. 두 파일은 각각 장기 평화체제 구상 보고서와 사회연구자 이력서를 의미하는 영문 파일명을 사용해 정상적인 업무 문서처럼 위장했습니다.

두 LNK 파일의 크기는 각각 333,840바이트와 333,814바이트로 차이는 26바이트에 불과합니다. 파일명과 화면에 표시되는 미끼 PDF 주소를 제외하면 LNK 구조, PowerShell 명령, GitHub 저장소, 다운로드 파일명 및 로컬 저장 경로가 동일합니다.

이는 하나의 제작 템플릿에서 공격 주제와 미끼 문서만 변경해 생성한 변종임을 보여줍니다. 그리고 미끼 문서 연결 주소에 한국(kovalenko.dothome.co[.]kr)과 우크라이나(dofamini.com[.]ua) 웹 서버가 사용되었습니다.

 

구분 A_Century_Long_Peace_Architecture_for_Russia-Ukraine_Introduction.pdf.lnk CV_SocialResearcher_Sociologist_
Qualitative.lnk
파일 크기 333,840바이트 333,814바이트
실행 대상 %windir%\System32\WindowsPowerShell\v1.0\powershell.exe
LNK 주요
특징
PDF 위장 설명과 아이콘 사용
PowerShell 실행창 최소화
실행정책 우회 옵션 사용
GitHub
원격 경로
raw.githubusercontent[.]com/omskiwdcvoiuyfd0998/
0ijnbjfke8djfefhkehhdkefkeu90djfkefh
다운로드
파일
LICENSE → %APPDATA%\update1.vbs
okay.md → %APPDATA%\update2.ps1
후속 파일
실행
update1.vbs 실행
update2.ps1은 LNK 단계에서 직접 실행하지 않음
미끼 PDF
연결 주소
kovalenko.dothome.co[.]kr/media/A_Century_Long_Peace_Architecture_for_Russia-Ukraine_Introduction.pdf dofamini.com[.]ua/media/CV_SocialResearcher_Sociologist_Qualitative.pdf
내장 PDF 동일한 8페이지 우크라이나어 분석 문서가 LNK 뒤에 삽입
핵심 차이 러시아와 우크라이나의 장기 평화체제 구상 보고서로 위장 사회연구자 이력서로 위장

[표 3-3] LNK 악성파일 주요 내용 비교표

 

두 LNK 파일의 뒤쪽에는 동일한 8페이지 PDF가 추가되어 있습니다.

해당 문서는 호르무즈 해협 위기가 세계 식량 가격과 러시아 곡물 수출에 미치는 영향을 다루지만, LNK 명령행에는 이를 추출하거나 화면에 표시하는 기능이 없습니다.

따라서 실행에 직접 사용되는 구성요소보다는 파일을 정상 문서처럼 보이게 하거나 정적 분석을 방해하기 위해 추가한 오버레이 데이터로 판단됩니다.

 

[그림 3-10] LNK 내부에 삽입되어 있던 PDF 문서 화면

 

3-3-1. 후속 페이로드 및 C2 기능 분석

앞서 분석한 두 LNK 파일은 동일한 GitHub 저장소에서 LICENSE와 okay.md를 내려받아 각각 %APPDATA%\update1.vbs와 %APPDATA%\update2.ps1로 저장합니다.

 

[그림 3-11] GitHub 저장소 모습

 

저장소에서는 일반 문서처럼 보이는 파일명을 사용하지만, 실제 내용은 VBScript와 PowerShell 코드로 구성되어 있습니다. 먼저 실행되는 update1.vbs는 Windows 작업 스케줄러에 OneDriveUpdateScheduler라는 예약 작업을 등록합니다.

작업 설명과 작성자는 각각 OneDriveUpdateScheduler와 System으로 설정해 정상적인 시스템 또는 OneDrive 관련 작업처럼 위장했습니다.

예약 작업은 1분 간격으로 explorer.exe에 update1.vbs 경로를 인수로 전달합니다. 이에 따라 VBS가 반복 실행되고, 내부 명령을 통해 %APPDATA%\update2.ps1이 실행됩니다. PowerShell 실행에는 실행정책을 우회하는 -ep bypass 옵션이 적용되며, 실행 창은 사용자에게 표시되지 않습니다.

이는 악성코드가 시스템 재부팅 이후에도 반복적으로 동작할 수 있도록 지속성을 확보하기 위한 구성입니다. update2.ps1은 하드코딩된 일본 소재의 IP 주소 111.92.246[.]145의 TCP 12345번 포트로 접속합니다. 접속 후 평문으로 설정된 비밀번호를 전달하고, 서버로부터 AUTH OK 응답을 받아 인증 절차를 수행합니다.

인증이 완료되면 서버에 GET qqq 명령을 전송해 등록된 파일 목록을 요청합니다. 목록에서 파일명이 qqq로 시작하고 .ps1로 끝나는 경우 해당 PowerShell 스크립트를 내려받아 임시 폴더에서 실행합니다. 이를 통해 위협 행위자는 감염 이후에도 서버에 새로운 PowerShell 스크립트를 등록해 추가 명령을 수행할 수 있습니다.

추가 스크립트 실행 전후에는 C:\Users\Public 폴더의 파일 목록을 비교합니다. 실행 과정에서 새로 생성된 파일이 발견되면 이를 C2 서버로 업로드하고, 전송이 성공한 파일은 로컬 시스템에서 삭제합니다. 다만 1.txt, 2.txt, 3.txt는 삭제 대상에서 제외하도록 설정되어 있습니다. 이는 추가 스크립트를 이용해 수집한 정보나 작업 결과를 C2 서버로 유출한 뒤 흔적을 정리하기 위한 기능으로 보입니다.

파일명이 ddd로 시작하고 .txt로 끝나는 경우에는 서버에서 해당 파일을 내려받아 C:\Users\Public에 저장합니다. 따라서 이 PowerShell 페이로드는 단순 정보 수집 도구가 아니라 추가 명령 실행, 작업 파일 전달, 결과물 유출 기능을 함께 제공하는 원격 작업 모듈로 볼 수 있습니다.

모든 통신이 완료되면 서버에 EXIT 명령을 전송하고 연결을 종료합니다. 다만 예약 작업이 update1.vbs를 1분 간격으로 실행하도록 구성되어 있어, C2 접속과 작업 확인은 지속적으로 반복될 수 있습니다.

 

3-3-2. 별도 PowerShell 로더 분석

저장소의 README.md에는 Base64로 일부 문자열을 은닉한 PowerShell 명령이 포함되어 있습니다. 이를 복원하면 사용자 도메인과 계정명을 쿼리 매개변수에 포함해 다음 주소로 전달합니다.

  • p1o2i3u4y5t6r7e8w9q0.medianewsonline[.]com
    • /login.php?OKey=<사용자 도메인>&Areyou=cake&Who=<사용자명>

이 명령은 해당 주소에서 반환되는 PowerShell 코드를 메모리에서 즉시 실행하도록 구성되어 있습니다. 따라서 감염 시스템 식별정보를 전달하고 추가 페이로드를 내려받는 웹 기반 로더로 판단됩니다.

그러나 앞서 확인된 두 LNK와 LICENSE, okay.md의 실행 흐름에서는 README.md를 호출하는 명령이 발견되지 않았습니다. 따라서 동일 저장소에서 관리된 보조 페이로드 또는 다른 공격 경로에 사용된 스크립트일 가능성이 있으며, 현재 분석한 LNK 공격 체계에 직접 포함되었다고 단정하기는 어렵습니다.

cake.log는 1바이트 크기의 사실상 빈 파일로, 현재 상태에서는 실행 기능이나 피해 시스템 정보가 확인되지 않습니다. 공격 준비 과정에서 생성된 표시자 또는 향후 데이터를 기록하기 위한 파일일 가능성이 있습니다. 실행 흐름을 정리해 보면 다음과 같습니다.

  • 악성 LNK 실행 → LICENSE와 okay.md 다운로드 → update1.vbs와 update2.ps1로 저장 → update1.vbs 실행 → OneDrive 위장 예약 작업 등록 → update2.ps1 반복 실행 → TCP C2 접속 → 추가 PowerShell 스크립트 실행 → 결과 파일 업로드 및 삭제

종합하면 이번 저장소는 초기 LNK 실행 이후의 지속성 확보와 원격 작업 수행을 지원합니다. 특히 정상적인 GitHub 파일명으로 악성 스크립트를 위장하고, OneDrive 관련 작업명으로 예약 작업을 등록한 뒤, 별도의 TCP C2를 이용해 추가 명령과 파일을 교환하는 다단계 공격 구조가 확인되었습니다.

 

3-3-3. 줌(Zoom) 설치 프로그램으로 위장한 악성파일

위협 행위자는 별도의 GitHub 공개 저장소에 화상회의 프로그램 Zoom의 정상 설치 파일로 위장한 zoominstaller.exe를 등록하고, 이를 악성코드 유포에 활용했습니다. 앞서 살펴본 '우크라이나 국제정책 전문가 대상 분석 협력 사칭 공격'의 자격 증명 탈취 단계에서도 Google Meet과 Zoom을 언급하며 온라인 화상회의 참여를 유도한 바 있습니다.

두 공격은 자격 증명 탈취와 악성파일 유포라는 방식에는 차이가 있으나, 대중적으로 널리 사용되는 화상회의 서비스와 온라인 회의 주제를 미끼로 활용하여 표적의 신뢰를 유도했다는 공통점이 있습니다.

 

[그림 3-12] 화상회의 프로그램 Zoom 설치 파일로 위장되어 등록된 모습

 

zoominstaller.exe는 정상 Zoom 설치 프로그램으로 위장한 64비트 Windows 실행 파일이며, 유효한 디지털 서명은 존재하지 않습니다.

실행 파일 내부에는 desktop.ps1과 desktop.vbs가 Base64로 인코딩된 상태로 포함되어 있습니다. 악성코드는 Windows의 CryptStringToBinaryA 함수를 이용해 데이터를 디코딩한 뒤, 두 파일을 C:\Users\Public\Videos 폴더에 생성합니다.

 

[그림 3-13] zoominstaller.exe 코드 분석 화면

 

desktop.vbs는 다음과 같이 PowerShell 실행 정책을 우회하고 창을 숨긴 상태에서 desktop.ps1을 실행합니다.

  • powershell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -File "C:\Users\Public\Videos\desktop.ps1"

Zoom-Auto-Installer라는 이름의 예약 작업도 생성합니다. 해당 작업은 1분 간격으로 wscript.exe를 통해 desktop.vbs를 실행하도록 구성되어 있으며, 이에 따라 desktop.ps1도 주기적으로 동작합니다.

  • C:\Windows\System32\wscript.exe C:\Users\Public\Videos\desktop.vbs

이러한 구조는 Zoom 자동 설치와 관련된 정상 작업처럼 보이는 명칭을 사용해 예약 작업을 위장하고, VBS와 PowerShell 스크립트를 반복 실행함으로써 지속성을 확보하기 위한 것입니다.

내장된 desktop.ps1은 앞서 GitHub 저장소의 okay.md에서 확인된 PowerShell 코드와 기능적으로 동일합니다. 줄바꿈과 파일 끝부분 처리 방식으로 인해 해시는 다르지만, 정규화한 스크립트 내용은 일치합니다.

desktop.ps1은 111.92.246[.]145의 TCP 12345번 포트에 접속하고, 하드코딩된 비밀번호(MySecurePass123)를 이용해 인증을 수행합니다.

이후 C2 서버에서 추가 PowerShell 스크립트와 작업 파일을 내려받아 실행하고, 실행 과정에서 생성된 결과 파일을 서버로 전송합니다. 전송이 완료된 작업 파일과 임시 스크립트는 삭제해 시스템에 남는 흔적을 줄입니다.

 

[그림 3-14] zoominstaller.exe 내부에 포함된 스크립트 디코딩

 

악성 페이로드 설치와 함께 프로그램은 Zoom 공식 CDN에서 정상 ZoomInstaller.exe를 내려받아 C:\Users\Public\Downloads\ZoomInstaller.exe에 저장한 뒤 실행합니다. 사용자는 실제 Zoom 설치 화면을 보게 되지만, 그 이전에 악성 스크립트와 예약 작업이 이미 시스템에 생성됩니다.

따라서 이 파일은 정상 Zoom 설치 프로그램을 직접 변조한 형태가 아니라, 정상 설치본과 페이로드를 함께 실행하는 악성 다운로더입니다. 정상적인 설치 화면을 표시해 사용자의 의심을 낮추고, 백그라운드에서 수행되는 악성코드 설치 및 지속성 확보 행위를 은폐하는 방식입니다.

앞서 확인된 LNK 유포 방식과 비교하면 초기 전달 및 저장 경로에는 차이가 있지만, VBS를 이용한 예약 작업 등록, 1분 간격의 PowerShell 실행, 동일한 TCP C2 접속 및 추가 모듈 실행이라는 핵심 공격 체계는 같습니다.

이는 위협 행위자가 공격 상황에 따라 PDF로 위장한 LNK와 Zoom 설치 프로그램을 선택적으로 사용하면서 동일한 후속 페이로드를 재사용했음을 보여줍니다. 실행 흐름을 정리해 보면 다음과 같습니다.

  • zoominstaller.exe 실행 → Zoom-Auto-Installer 예약 작업 생성 → desktop.ps1 및 desktop.vbs 생성 → desktop.vbs를 통한 PowerShell 실행 → TCP C2 접속 → 추가 스크립트 실행 및 결과 전송 → 정상 Zoom 설치 프로그램 다운로드 및 실행

 

3-4. 우크라이나 공격 인프라에서 확인된 일본어 미끼 문서

우크라이나 대상 공격에 사용된 GitLab 인프라를 조사하는 과정에서 일본어로 작성된 미끼 PDF 파일 2개가 추가로 확인되었습니다. 이는 위협 행위자가 우크라이나 관련 공격에 사용한 스크립트와 저장소 운영 방식을 유지하면서, 일본어 사용자를 겨냥한 별도의 사회공학 공격도 준비하거나 수행했을 가능성을 보여줍니다.

shiba 저장소에는 우크라이나 공격에서 확인된 first.ini와 help.ini를 비롯해 피해 시스템의 컴퓨터 이름으로 추정되는 DESKTOP-ME9BRRQ 및 DESKTOP-PI79KB0 디렉터리와 icc.pdf가 등록되어 있었습니다. 저장소는 2026년 8월 22일 생성되었으며, 총 48건의 커밋 이력이 확인됩니다.

또 다른 keresman 저장소는 2026년 9월 14일 생성되었으며, first.ini, help.ini, 30.pdf와 OFFICE-INOUE 디렉터리가 포함되어 있습니다.

 

[그림 3-15] 일본어 미끼 PDF와 공격 스크립트가 등록된 GitLab 저장소

 

icc.pdf는 국제형사재판소의 판결 현황과 재판 절차를 정리한 10페이지 분량의 일본어 분석 문서로, 국제정치 및 국제법 분야 전문가를 겨냥한 미끼로 보입니다.

30.pdf는 외교관 출신 인사의 회고와 국제질서에서 일본의 역할을 다룬 2026년 7월 31일자 일본경제신문 「나의 이력서」 지면으로, 정상 기사를 이용해 문서 열람을 유도한 것으로 추정됩니다.

 

[그림 3-16] 국제형사재판소와 일본 외교 관련 주제로 구성된 미끼 PDF

 

두 저장소에서 공통적으로 first.ini와 help.ini가 확인되고, 피해 시스템별로 정보를 관리하는 것으로 보이는 디렉터리가 생성된 점은 기존 우크라이나 공격의 실행 및 정보 유출 체계와 일치합니다. 따라서 일본어 미끼 문서의 존재는 동일한 위협 행위자가 기존 공격 인프라와 악성 스크립트를 재사용하면서 표적의 언어와 관심 분야에 따라 미끼 콘텐츠를 변경했을 가능성을 뒷받침합니다.

 

3-5. 한국 금융 및 행정 문서로 위장한 악성 LNK 공격

김수키 그룹은 채권양도계약서, 보험청구서 및 코인 구매대행 신청서 등 한국의 금융, 보험 및 행정 문서로 위장한 악성 LNK를 지속적으로 유포하고 있습니다. 최근 수집된 LNK 62개 가운데 55개는 conhost.exe를 통해 난독화된 PowerShell 명령을 실행했으며, 나머지 7개는 약 8.9MB의 대용량 데이터가 추가된 변종으로 확인되었습니다. 악성 스크립트는 Microsoft Edge나 OneDrive 업데이트로 위장한 예약 작업을 등록하고 주기적으로 실행됩니다.

후속 단계에서는 medianewsonline[.]com, onlinewebshop[.]net, mywebcommunity[.]org 및 mygamesonline[.]org 등 무료 웹 호스팅 서비스가 제공하는 다수의 하위 도메인을 C2 서버로 활용합니다.

 

[그림 3-17] 한국의 보험 및 금융 문서로 위장한 악성 미끼 파일 6종

 

 

4. 위협 귀속 (Threat Attribution)

지니언스 시큐리티 센터는 이번 우크라이나 대상 공격에서 확인된 인프라, 실행 체계, 악성 스크립트의 구현 방식과 정보 유출 구조를 종합적으로 분석한 결과, 해당 활동이 김수키 그룹과 연계된 것으로 평가합니다.

기존 Operation GitPower에서는 wiask.ini 스크립트를 통해 Dropbox에 존재하는 help.ini 파일을 다운로드한 후 dfIEKf.ps1이라는 파일명으로 실행하며, 해당 스크립트와 이번 우크라이나 공격에 사용된 help.ini 파일 간에 높은 수준의 코드 유사성이 확인됩니다.

 

[그림 4-1] help.ini 코드 유사도 비교 / 기존 Operation GitPower (좌측), 우크라이나 공격 사례 (우측)

 

더 중요한 공통점은 first.ini와 help.ini라는 파일명과 각 파일의 역할입니다.

두 공격 모두 INI 설정 파일처럼 위장한 PowerShell 스크립트를 사용했으며, first.ini는 후속 스크립트를 내려받아 실행하는 초기 로더로, help.ini는 시스템 정보를 수집하고 GitHub로 전송하며 예약 작업을 등록하는 후속 모듈로 동작했습니다.

2026년 6월 29일 하우리(Hauri)가 공개한 「군사·안보 학술지로 위장한 Kimsuky 정찰용 악성코드」 분석 보고서에서는 Dropbox에 존재하는 fir.ini 파일과 dfIEKf.ps1 파일 등이 소개되어 있습니다.

특히 해당 보고서에는 위협 행위자가 활용한 tomas23492 인프라가 함께 언급되어 있어, 관련 공격 사례 간의 연관성을 파악하는 데 중요한 단서를 제공합니다.

 

[그림 4-2] 저장소에 등록된 first.ini, help.ini 동일 파일명 비교

 

두 help.ini는 수집한 파일을 Base64로 인코딩해 GitHub Contents API로 업로드하는 함수 구조와 변수명, Authorization 및 Accept 헤더 구성, URL 분할 조립 방식이 매우 유사합니다.

또한 systeminfo와 Downloads 폴더 목록을 수집해 SYS_yyyy-MM-dd_HHmm.tmp 및 DOWN_yyyy-MM-dd_HHmm.tmp 형식으로 저장하고, 전송 후 임시 파일을 삭제하는 절차도 일치합니다.

 

[그림 4-3] dfIEKf.ps1으로 실행되는 유사 사례 코드 비교

 

Dropbox에서 help.ini 파일로 다운로드된 후 dfIEKf.ps1이라는 파일명으로 실행되는 유사 사례에서는 예약 작업명으로 GoogleUpdateTaskMachineUA 형식을 공통적으로 사용하는 특징이 확인됩니다. 또한 wscript.exe를 통해 C:\Users\Public\Music 경로에 위치한 VBE 파일을 반복적으로 실행하는 행위가 관찰됩니다.

  • 기존 Operation GitPower
    • GoogleUpdateTaskMachineUA{1C791230-CA8D-6D04-AC55-F706378A30E}
  • 우크라이나 공격 사례
    • GoogleUpdateTaskMachineUA{1C791230-CA8D-6D04-AC55-E498ABE7C33}

기존 Operation GitPower는 30분 간격으로 동작하며 tasklist 결과를 추가로 수집하는 반면, 우크라이나 공격 표본은 15분 간격으로 실행됩니다. 이러한 차이는 핵심 실행 체계를 유지하면서 공격 환경에 따라 일부 기능과 설정을 조정한 변종의 특징으로 볼 수 있습니다.

 

비교 항목 기존 Operation GitPower 우크라이나 공격 사례 연관성 평가
파일명과 형식 first.ini, help.ini
실제 PowerShell 코드
first.ini, help.ini
실제 PowerShell 코드
동일한 위장 파일명과 역할 분담
정보 전송 GitHub Contents API와 Bearer 인증 사용 GitHub Contents API와 Bearer 인증 사용 API 호출과 JSON 본문 구조가 동일
코드 구현 $fc, $skdfwasdff, $Body, $Headers, $ErfH 등 $fc, $skdfwasdff, $Body, $Headers, $ErfH 등 코드 재사용을 뒷받침하는 강한 흔적
수집 정보 시스템 정보, Downloads 폴더 목록, 실행 프로세스 시스템 정보, Downloads 폴더 목록 공통된 정보 수집 체계를 사용하며 실행 프로세스 수집 여부에 차이가 있음
파일명 규칙

SYS_날짜_시각.tmp

DOWN_날짜_시각.tmp

TASKLT_날짜_시각.tmp

SYS_날짜_시각.tmp

DOWN_날짜_시각.tmp

수집 자료 분류와 관리 방식이 일치
지속성 GoogleUpdateTaskMachineUA 예약 작업
30분 간격
GoogleUpdateTaskMachineUA 예약 작업
15분 간격
작업명 조립 방식과 실행 구조가 동일
후속 실행 wscript.exe로 wef.vbe 실행 wscript.exe로 shibaa.vbe 실행 경로와 스크립트 실행 방식이 일치
문자열 난독화 Apple, Banna, wolf를 삽입한 뒤 Replace로 제거 wudks, -asjdfi&, wolf를 삽입한 뒤 Replace로 제거 wolf 재사용과 동일한 복원 방식
흔적 삭제 전송 후 임시 수집 파일과 %LOCALAPPDATA%\dfIEKf.ps1 삭제 전송 후 임시 수집 파일과 원본 shiba.vbe 삭제 전송 완료 후 관련 파일을 삭제하는 사후 정리 방식이 유사

[표 4-1] 기존 Operation GitPower와 우크라이나 공격 사례 비교

 

더불어 앞서 소개한 바와 같이, Google의 이메일 서비스와 Zoom 화상회의 서비스를 부자연스럽게 결합한 형태의 피싱 공격이 우크라이나의 특정 전문가를 대상으로 수행된 사례가 확인되었습니다.

당시 피싱 링크는 security-zooma.serveirc[.]com 도메인으로 연결되었으며, 분석 시점에 해당 도메인은 일본 소재로 식별된 IP 주소 85.155.224[.]59를 가리키고 있었습니다. 이와 유사하게 최근에는 한국의 대북 분야 전문가를 대상으로 mailsecurity.serveirc[.]com 도메인을 활용한 피싱 공격 사례도 확인되었습니다.

두 사례는 공격 대상과 피싱 시나리오에는 차이가 있으나, 모두 serveirc[.]com 하위 도메인을 피싱 인프라로 활용했다는 공통점이 관찰됩니다.

 

[그림 4-4] serveirc[.]com 하위 도메인을 피싱 인프라로 활용한 사례 비교

 

이처럼 파일명과 코드 구조, 문자열 난독화 방식, C2 인프라 유사도, 정보 수집 및 유출 체계의 공통점을 종합할 때, 기존 Operation GitPower와 이번 우크라이나 대상 공격은 모두 김수키 그룹이 수행한 것으로 평가됩니다.

 

 

5. 결론 및 대응 (Conclusion)

 

5-1. 위협 캠페인 결론

이번 공격은 김수키 그룹이 답장 유도형 스피어피싱과 정상 개발 플랫폼을 활용해 공격 대상을 우크라이나의 외교, 안보 및 국제정책 분야 관계자까지 확대한 사이버 첩보 활동으로 평가됩니다.

위협 행위자는 LNK와 Zoom 설치 프로그램으로 위장한 악성파일을 선택적으로 사용하면서도 기존 Operation GitPower의 실행 체계와 코드를 반복적으로 재사용했습니다.

국제사회는 북한의 군사적 개입과 연계된 복합 위협으로 인식하고 관련 공격 정보 공유와 행위 기반 탐지를 강화할 필요가 있습니다.

 

5-2. 'Genian Insights E' 기반 통합 대응 전략

이번 캠페인은 답장 유도형 스피어피싱으로 표적과 신뢰 관계를 형성한 뒤, PDF로 위장한 LNK 또는 정상 Zoom 설치 프로그램으로 위장한 실행 파일을 통해 악성 스크립트를 배포하는 다단계 공격입니다.

 

이후 PowerShell과 VBE 실행, 예약 작업 등록, Git 기반 인프라 및 별도 TCP C2 통신, 시스템 정보 수집과 결과 파일 유출로 공격이 이어집니다. 효과적인 탐지를 위해서는 다음과 같은 연속적인 이상행위를 하나의 공격 흐름으로 연결해 분석해야 합니다.

 

  • 압축파일 내부에서 PDF로 위장한 LNK 실행
  • LNK에서 시작되는 cmd.exe, curl.exe 또는 PowerShell 실행
  • GitLab과 GitHub에서 INI 또는 일반 문서로 위장한 스크립트 다운로드
  • first.ini가 VBE 확장자로 저장된 뒤 wscript.exe를 통해 실행되는 행위
  • PowerShell 실행 정책 우회와 숨김 창을 이용한 스크립트 실행
  • C:\Users\Public\Music, C:\Users\Public\Videos 및 %APPDATA% 경로의 스크립트 생성
  • GoogleUpdateTaskMachineUA, OneDriveUpdateScheduler, Zoom-Auto-Installer 등 정상 프로그램으로 위장한 예약 작업 등록
  • 1분, 15분 또는 30분 간격의 비정상적인 스크립트 반복 실행
  • systeminfo, tasklist 및 Downloads 폴더 목록 수집
  • GitHub Contents API와 하드코딩된 액세스 토큰을 이용한 파일 업로드
  • 개발 플랫폼 접속 이후 별도 TCP C2로 연결되는 네트워크 행위
  • 정상 Zoom 설치 프로그램 실행과 악성 스크립트 설치가 함께 발생하는 행위
  • 정보 전송 이후 임시 파일과 초기 스크립트를 삭제하는 흔적 정리 행위

 

Genian Insights E는 프로세스 트리와 명령행, 파일 생성, 예약 작업, 레지스트리, 네트워크 연결 등 엔드포인트에서 발생하는 이벤트를 연계 분석합니다. 이를 통해 개별적으로는 정상 행위처럼 보일 수 있는 LNK 실행, Git 서비스 접속, PowerShell 구동 및 예약 작업 등록을 하나의 공격 흐름으로 가시화할 수 있습니다.

Zoom 설치 프로그램 위장 공격에서는 파일명이나 설치 화면만으로 정상 여부를 판단해서는 안 됩니다. 디지털 서명의 유효성, 실행 파일이 생성하는 스크립트, 예약 작업 등록, wscript.exe와 PowerShell의 후속 실행 및 비정상 외부 통신을 함께 확인해야 합니다.

아울러 GitHub, GitLab 및 Codeberg 접속 자체를 일괄적으로 차단하기보다는 해당 서비스에 접근한 프로세스와 명령행, 파일 생성 경로, API 사용 방식 및 후속 실행 행위를 함께 분석해야 합니다. 업무용으로 허용된 정상 서비스가 공격 인프라로 악용되는 상황에서는 도메인이나 IP 주소만을 기준으로 한 탐지보다 행위 간 상관관계 분석이 중요합니다.

생성형 AI가 피싱 문구와 미끼 문서의 완성도를 높이더라도 엔드포인트에서 발생하는 스크립트 실행, 지속성 확보, 정보 수집 및 외부 전송 행위까지 숨길 수는 없습니다. 따라서 최신 침해지표를 지속적으로 반영하는 동시에 공격 단계 간 연관성을 분석하고 이상행위를 신속하게 차단할 수 있는 EDR 중심의 통합 대응 체계를 구축해야 합니다.

 

[그림 5-1] EDR을 통해 외부 네트워크 통신 및 파일 다운로드 행위를 탐지한 모습

 

Genian Insights E의 Attack Storyline 기능을 활용하면 curl.exe를 통해 외부 네트워크로 연결하여 추가 미끼 파일 등을 다운로드하는 행위를 신속하게 탐지할 수 있습니다.

이를 통해 비정상적인 네트워크 통신과 외부 파일 유입 행위를 식별하고, 위협의 실행 흐름을 추적하여 빠른 대응 및 추가 피해 확산을 방지할 수 있습니다.

 

[그림 5-2] 조사(Investigation) 기능을 통해 curl.exe의 네트워크 통신 및 파일 다운로드 행위를 확인한 모습

Genian Insights E의 조사(Investigation) 기능에서는 이상행위(XBA)로 탐지된 위협의 주요 정보를 요약하여 제공합니다. 이를 통해 EDR 관리자는 탐지된 프로세스, 네트워크 연결 대상, 명령줄(Command Line), 이벤트 유형, MITRE ATT&CK 정보 등 위협 분석에 필요한 핵심 정보를 한눈에 확인할 수 있습니다.

특히 본 사례에서는 curl.exe를 이용한 외부 네트워크 통신 및 파일 다운로드 행위가 XBA를 통해 탐지되었으며, 실제 실행된 명령줄과 외부 연결 정보를 함께 확인할 수 있습니다.

이를 바탕으로 보안 관리자는 위협의 행위와 영향 범위를 신속하게 파악하고, 추가 조사 및 대응 등 필요한 후속 조치를 수행할 수 있습니다.

 

[그림 5-3] curl.exe의 커맨드 라인과 GitLab 통신 내역을 연계하여 분석한 모습

탐지된 위협의 실행 흐름을 살펴보면 cmd.exe에 의해 curl.exe가 실행되고, 이후 GitLab과 외부 통신이 이루어진 과정을 확인할 수 있습니다.

curl.exe의 커맨드 라인 정보를 통해 통신 대상이 된 GitLab 저장소의 URL과 다운로드 대상 파일, 로컬 시스템에 저장된 경로까지 구체적으로 파악할 수 있습니다.

이처럼 프로세스 실행 정보와 외부 네트워크 통신, 커맨드 라인을 연계하여 분석함으로써 위협 행위자가 외부 저장소를 통해 파일을 유입한 과정과 세부 행위를 신속하게 추적할 수 있습니다.

 

[그림 5-4] cmd.exe의 커맨드 라인을 통해 apple.vbe 악성 스크립트의 생성 및 실행 과정을 확인한 모습

 

탐지된 위협을 보다 구체적으로 조사하면 cmd.exe에서 실행된 전체 커맨드 라인을 통해 공격에 사용된 일련의 명령을 확인할 수 있습니다.

해당 명령에서는 curl.exe를 이용해 GitLab 저장소에 접근하여 파일을 내려받고, 이를 C:\Users\Public\Music 경로에 저장하는 과정이 확인됩니다.

이어서 후속 공격에 사용되는 apple.vbe 악성 스크립트가 해당 경로에 생성되고 실행되는 과정까지 커맨드 라인을 통해 추적할 수 있습니다.

이 과정은 공격의 초기 단계에 해당하지만, 앞서 탐지된 네트워크 통신과 파일 다운로드 행위가 어떠한 명령에서 시작되었는지 역추적하고 이후 수행되는 악성 스크립트 실행과의 연관성을 확인하기 위해 함께 살펴볼 필요가 있습니다.

이를 통해 개별 탐지 이벤트를 단편적으로 분석하는 데 그치지 않고, 최초 명령 실행부터 외부 파일 유입과 후속 악성 행위로 이어지는 전체 공격 흐름을 파악할 수 있습니다.

이처럼 APT 공격 전후의 행위를 연계하여 가시성을 확보하고 위협의 전체 흐름을 신속하게 추적하기 위해서는 엔드포인트에서 발생하는 행위를 지속적으로 수집해 분석할 수 있는 EDR의 활용이 필요합니다.

 

 

6. IoC (Indicator of Compromise)

  • MD5

05cec01db363488e6762097095d7b7fc

05e65662d55327febf5d4aaeca54f982

0919c2a84a1c76d6f5268dd5ffd7b5e7

0933fda33f46d2b31e023bf322a11d41

0a0fe8a557eff10b3b32528347b9d988

0ae92755dafc510efdc9f68e817b683a

0c89cc9118b863488f5ba240bfe396f6

14c8b93304700e27b479596024ef19cf

1f5416894b604ed6ef1f839414865eee

1f873bc5c6d5ff0ae0f228dbf26220ba

1f8ad760e1feee7cecfe1bfadde93d4e

2062dde8114d57b0108e92371e29b3ed

2364f22dfe4d2018619cfba2b510f290

24b12630d402e4ce40d05e0623e56933

26642b9800192440621a70383595dea2

28210832c13d806e87cb8f1449cf8c5f

28fb9e179c3aac449b7e4d760f6b8b7d

2a100b8de6099b06449e3084b689c32d

2e36880877f32eac56ae4502ad057b2e

2f407d8e3dee54e0c4f776e5db55ae86

324352a61a343969a93386466d232684

337edcca9ef27cfe1a76f4cffa676026

33cd80a0b3059c23eadcf263ddbb330f

348150ce9f3c49283c16d9b37e6dc354

353311ea9b82724aa862477cae44cd39

380d5a157077b7c8bdfe7c6d9628fe6d

382bb72f7f42f27b04d1fedd6d633a82

3d3f6897f57f4a7b94f83278e795dc18

40b48810400a825858946aae9ff5b50d

4f5694f61b4c244cc2269c3a5eb8a7c7

5282b7aa97f45feeff73ba87d0523e53

567a2aedd00fa97f03fc852b1d949596

57025a7f9d9d2ef4930dec189bdd0bd0

5a0923427b2fcb5070510753e4f0c0d0

5dd387acef74a14a63dbc883aadee854

5fa367e38148de7e19abe789451a7a38

620bc65bb86962f633a37586e17da9f3

6896f9c3f24f2fdc7966f753ad3ce723

76ed1e64d1c9ea3e4b91f7ed7b2f59f2

77b9a8309e9f80ca442c629396cc3f6e

78bf053eea23b86e42a658245d8de904

7a6e1e578342864c1bb07c83b4e677e3

7e76b71247c995359a7642fe62f3b28f

7f1b4583fec9db44e85b458df4e55669

8445ffdacfed1fc9951e62ea054ee1c3

85fcd85d24e1b391cbf0c22b0c8a362a

896a859812f181286542a0041a549156

8d73beff15a0467b9bc2b74f6abed75d

90449413823f31c89f2bd12b5a1ae5d5

93587de64c445e7fe20351f24c4a97d4

9b33a10f7637c7ce9e5e8aa1ed7303dd

9c2d0cace5c703afa9f3862d19073c6d

9d3b0832e1759d29d2651f3a2d34d781

9f14d0c51795489bbb8d1853fb7e269d

a0f8c686d57c746bcd97e21dc8fa2159

a49a2676174f1d7c5e8647e4fc7316de

a80dd39ce35e712fde43b51f6a5ac22a

a86861abef9de0148a560614a5830a19

ae2a710e1940b5a7c3d8c7da754a4bdc

ae2fb368e8f33de4b5382dc3296c7076

b52d4d43ddbd8a2b34808e45bd1d4504

b64e08e12d90ee33c4409204a1ea509b

b65049b275769947fce9d332de39ad58

b7db9fe60ce4a2372ee7d4665ae859ba

bc903979c2ef367f15424d651eb1730d

bf95687e8f040d9b656e2702eca30ff6

bfb0591fb5c58b5ef751c9994cb86fbd

c6017291b89dc20b4b333b6e5d1e92c2

ca3e297df21d63fabbcac343dd2740c9

d915752f0dfe5d2ca3388cc711840d31

d9ebfcce15a1a2c39c22aea092d6fb11

da44fa987f5a1967b8691254419d8e52

dc5a698e0f74b79da77592145a669f51

dcbb6683e1f5c826d0f65dc68999fe52

e5b1e7b3f3ab24239f2cd1cbce806228

ea02654da967a66ba0bda85f8578562a

eb9d0c1e252a2b08ddfdeb7dc458032a

ed02d851d07f38d9bb04a0d2e464cf10

f547cad15814b06c7876c63609da5b8f

f549fc826acf79521d6a0c8aa63095e0

f5f5da0dac34841451c5328871d0d77b

f6786ff62fdfdc46cfb84ff7cc2a580a

f6f00417b925bf42090a89f8668fb554

f85016e8cc6b509a9fba1ccd1dc88da1

fa87911771a52e3c1ffb1c39da59540c

 

  • C2

45.150.109[.]102

85.155.224[.]59

103.153.65[.]67

111.92.246[.]145

169.197.85[.]174

195.250.24[.]113

 

  • Domain

argeninese.dothome.co[.]kr

argentinese.medianewsonline[.]com

bbcnews04.dothome.co[.]kr

bwer5t6kl.getenjoyment[.]net

cfr556yujk.onlinewebshop[.]net

cmieqf7yjs.sportsontheweb[.]net

d18i529.onlinewebshop[.]net

dh06ls9kg.onlinewebshop[.]net

dofamini.com[.]ua

doput5rg.myartsonline[.]com

edcv89ik.onlinewebshop[.]net

ej7ieb9bn.myartsonline[.]com

ezms1ez.mygamesonline[.]org

fo27axr8z.getenjoyment[.]net

fqw345rdxc.onlinewebshop[.]net

gp098ujm.scienceontheweb[.]net

gstcg9g.mywebcommunity[.]org

gy678ikjm.onlinewebshop[.]net

h4s7hlkpo.getenjoyment[.]net

hcdse34r.onlinewebshop[.]net

hnvg5lco.mywebcommunity[.]org

idr45tgb.myartsonline[.]com

jkio954rt.medianewsonline[.]com

jklo8yghj.scienceontheweb[.]net

ke45tyghnj.mygamesonline[.]org

ki876tgvb.mypressonline[.]com

kovalenko.dothome.co[.]kr

mailsecurity.serveirc[.]com

mf3goke.getenjoyment[.]net

minecrafter.mygamesonline[.]org

msx2z9wy9.onlinewebshop[.]net

mykolapalinchak.medianewsonline[.]com

nimdm8cx87.mygamesonline[.]org

ny6r3kijc.mypressonline[.]com

oh8e6hd7ip.getenjoyment[.]net

oy51g1vt.getenjoyment[.]net

oz9ffohqb.mywebcommunity[.]org

p1o2i3u4y5t6r7e8w9q0.medianewsonline[.]com

pokijhgcfsdfghnj.mywebcommunity[.]org

qvck223mxo9.onlinewebshop[.]net

qweasdzxc.mygamesonline[.]org

rty789ijnh.medianewsonline[.]com

sclmu1lnils.scienceontheweb[.]net

se4567yuhn.sportsontheweb[.]net

security-zooma.serveirc[.]com

security-profile.serveirc[.]com

svpiwsw.mypressonline[.]com

t1b2a3vy.onlinewebshop[.]net

tgg7ujhn.myartsonline[.]com

vyt01cq8o1.atwebpages[.]com

w346yjkiu.onlinewebshop[.]net

w50dleqwo0d.getenjoyment[.]net

wersdfxcv.mygamesonline[.]org

xv57j3d.scienceontheweb[.]net

yrfghjk652u.mygamesonline[.]org

yyjybdrq4.scienceontheweb[.]net

zvwb1ep7i.onlinewebshop[.]net

 

  • Email

babiest26@outlook[.]com

baras6600@daum[.]net

baras6600@hotmail[.]com

baras6600@proton[.]me

choemiyang@hotmail[.]com

davidmaximy@outlook[.]com

davidmaximy@proton[.]me

dustinharrise91@outlook[.]com

hazama09093@outlook[.]com

info.seclab.noreply@gmail[.]com

jamejacky55@proton[.]me

jamestony88@proton[.]me

jamjack2026@proton[.]me

jsykukbang18@kakao[.]com

kcscon@proton[.]me

ken0723@kakao[.]com

killer05121@outlook[.]com

leomsoite@gmail[.]com

montry111@proton[.]me

murayamasi26@outlook[.]com

nemotom@outlook[.]kr

omski00@outlook[.]com

payuser2026@outlook[.]com

pooh04211@outlook[.]com

skmotern2003@outlook[.]com

srahnn21@gmail[.]com

sven5500@outlook[.]com

sven5500@proton[.]me

taini7700@daum[.]net

taini7700@outlook[.]com

taini7700@proton[.]me

urusa4400@proton[.]me

void0824@proton[.]me

xufeng.wangsui@hotmail[.]com

yaosiyaosi26@hotmail[.]com

youth3920@outlook[.]com

zhejiong.hangjou@hotmail[.]com

 

 


작성자.
지니언스 시큐리티 센터장
문종현 센터장 / 이사