AI 기반 랜섬웨어/멀웨어

AI 기반 랜섬웨어/멀웨어 인사이트: PromptLock와 LAMEHUG의 시그널과 대응 포인트

ESET은 로컬 LLM이 Lua 스크립트를 생성·실행해 파일 열람·유출·암호화를 수행하는 최초 공개 사례의 AI 기반 랜섬웨어 PromptLock을 확인했으며, 이는 향후 공격 자동화와 탐지 난이도 상승의 분기점을 시사한다.

CERT-UA가 포착한 LAMEHUG는 HuggingFace API를 통해 Qwen2.5-Coder-32B-Instruct를 호출해 동적 명령을 생성하는 스파이형 캠페인으로, 국가배후 APT28의 AI 보조 전술 전환 징후로 평가된다.

무엇이 새로운가

  • 공격 로직을 사전에 코딩하지 않고 LLM이 실행 시마다 스크립트를 '생성'하므로 비결정적 동작과 IoC 변동성이 커져 전통적 시그니처 탐지를 우회한다.
  • 모델이 엔드포인트에서 직접 또는 API 프록시를 통해 호출되어 생성된 스크립트가 즉시 실행되므로 네트워크 경로·아티팩트가 최소화된다.
  • Lua 기반 스크립트로 Windows·Linux·macOS를 포괄하는 교차 플랫폼 동작을 구현해 확산 및 재사용성이 높다.

기술 요약 — PromptLock

  • 모델/호출: OpenAI gpt-oss:20b를 로컬 Ollama API로 호출해 하드코딩된 프롬프트 기반 Lua 스크립트를 동적으로 생성한다.
  • 언어/플랫폼: 생성 스크립트는 Lua이며 Windows·Linux·macOS에서 호환 실행된다.
  • 기능: 파일 시스템 열거, 대상 파일 검사, 선택적 유출 및 암호화를 수행한다.
  • 암호화: SPECK 128-bit 알고리즘 지시가 프롬프트에 포함되어 있다.
  • 상태: 파괴 기능은 코드에 있으나 비활성으로 관찰되었고, PoC/개발 진행 가능성이 높다.

기술 요약 — LAMEHUG

  • 모델/호출: Qwen2.5-Coder-32B-Instruct를 HuggingFace API로 호출해 정적 설명을 실행 가능한 명령으로 변환한다.
  • 기능: 하드웨어/프로세스/네트워크 등 시스템 정보 수집, 사용자 문서 스캔, %PROGRAMDATA%\info\에 적재 후 SFTP·HTTP POST로 유출한다.
  • 전개: ".pdf.zip" 위장 피싱과 .pif 실행파일(파이인스톨러 기반)로 유포되었다.
  • 평가: APT28의 전술이 AI 보조 모델로 확장되는 흐름을 보여준다.

위협 시사점

  • 장벽 하락: 공개 LLM·API 활용으로 소규모 공격자도 정교한 공격 체인을 구성할 수 있어 빈도와 영향이 증대될 수 있다.
  • 탐지 난이도: 실행마다 스크립트가 달라지는 비결정성으로 IoC 고정화가 어렵고 행위 기반 탐지 비중이 커진다.
  • 인프라 은닉: 모델 파일 미배포, API 프록시/터널링으로 네트워크 징후를 최소화하려는 시도가 나타난다.

권고 사항(보안 담당자 체크리스트)

  • 네트워크: 엔드포인트의 외부 LLM API 호출 및 비정상 프록시/터널 세션(예: 모델 API로의 장기 연결) 탐지·차단 정책을 적용한다.
  • 프로세스/스크립트: 알 수 없는 Go 바이너리에 의해 Lua 스크립트가 생성·실행되는 행위를 EDR 이벤트로 상관 분석한다.
  • 콘텐츠 보호: 광범위한 파일 열람→선별적 유출→암호화로 이어지는 I/O 패턴의 이상 징후를 파일 활동 텔레메트리로 규칙화한다.
  • 이메일 보안: 압축파일·이중확장자(.pdf.zip, .pif 등) 기반 피싱의 차단 규칙과 샌드박싱을 강화한다.
  • 접점 통제: 모델 허브·API 도메인으로의 직접 접근을 용도 기반 허용 목록으로 제한하고 개발·운영 자산을 분리한다.
  • 위협 헌팅: VirusTotal 업로드 시점과 내부 탐지 로그를 상관 분석하여 초기 침투 흔적을 역추적한다.

지표 시각화

두 사례의 핵심 기능 구현 여부를 방어 관점에서 우선 대응 대상 기능을 한눈에 파악할 수 있도록 시각화했다. PromptLock은 유출과 암호화 기능을 모두 구현한 반면, LAMEHUG는 정보 수집과 유출에 집중한 특징을 보인다.

AI 악성코드 기능 비교 (PromptLock vs LAMEHUG)

Exfiltration (데이터 유출)
PromptLock
구현됨
LAMEHUG
구현됨
Encryption (암호화)
PromptLock
구현됨
LAMEHUG
미구현
Destructive (파괴 기능)
PromptLock
코드상 존재하나 비활성
LAMEHUG
미구현
🔵 PromptLock | 🟢 LAMEHUG

탐지·헌팅 아이디어

위 시각화에서 확인되듯이 두 악성코드 모두 데이터 유출 기능을 공통으로 보유하고 있어, 이를 중심으로 한 탐지 전략이 효과적일 것으로 보인다.

  • 알 수 없는 Go 실행파일이 단기간에 대량 파일 열람 후 Lua 스크립트를 생성·실행하고 네트워크 유출을 동반하는 행위를 연쇄 규칙으로 연결한다.
  • 엔드포인트에서 외부 LLM API로의 지속 연결 또는 모델 API와 유사한 트래픽 프로파일을 우선 조사 대상으로 태깅한다.
  • 피싱 유입 시 .zip·.pif 첨부 실행 및 PyInstaller 트레일(임시 폴더 내 파일 드롭/로딩)을 샌드박스와 EDR로 교차 검증한다.

PromptLock vs LAMEHUG 비교

항목 PromptLock LAMEHUG
AI 모델·호출 gpt-oss:20b, 로컬 Ollama API Qwen2.5-Coder-32B-Instruct, HuggingFace API
생성 산출물 Lua 스크립트(비결정적) 동적 시스템 명령
주요 기능 유출·암호화(파괴 기능 비활성) 수집·문서 스캔·유출
플랫폼 Windows/Linux/macOS Windows 중심 전개 정황
암호화 알고리즘 SPECK 128-bit N/A(유출 위주)
평가/상태 PoC/워크 인 프로그레스 가능성 우크라이나 정부 대상 실제 캠페인