Gamaredon의 펼쳐지는 도구 모음: GammaPhish와 GammaWorm
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
러시아 국가 지원 APT 그룹인 Gamaredon이 우크라이나 정부 기관, 군 기관 및 주요 인프라에 대한 장기 스파이 활동을 계속하고 있습니다. 그들의 모듈식 감염 사슬은 스피어피싱 문서로 시작하여 WinRAR 경로 탐색 취약점을 악용하고, 이후 VBScript, 대체 데이터 스트림 및 교환지 해석기를 이용해 확산, 지속성 유지 및 추가 페이로드 수집을 수행합니다. 이 캠페인은 또한 명령 및 제어 활동을 위해 Telegram, Cloudflare, Supabase와 같은 합법적인 서비스를 활용합니다. 공격자는 내장된 Windows 기능과 파일이 없는 실행 방식을 많이 악용하기 때문에 탐지는 여전히 어려운 상태입니다.
조사
Sekoia TDR은 손상된 시스템에서 수집된 70개 이상의 아티팩트를 조사하여 2026년 1월 침입 사슬을 재구성했습니다. 그들의 분석에서는 초기 피싱 구성 요소 GammaPhish, 그 후 VBScript 로더 GammaLoad, 자체 전파 웜 GammaWorm, 레지스트리에 모듈을 저장하는 PowerShell 스틸러 GammaSteel이 확인되었습니다. 연구원들은 또한 GammaWorm의 대체 데이터 스트림 및 지속성을 위한 예약 작업과 다수의 교환지 해석기 도메인에 대한 반복적인 네트워크 요청을 문서화했습니다. 조사를 통해 각 구성 요소가 더 넓은 감염 사슬과 장기 거점을 지원하는 방법을 맵핑했습니다.
완화
악성코드는 대체 데이터 스트림을 통해 새로운 페이로드를 지속적으로 가져올 수 있으므로, 안전한 복구 방법으로는 종종 전체 시스템 재구축이 필요합니다. 수비적 노력은 의심스러운 대체 데이터 스트림 생성, RunOnce 레지스트리 수정, 이상한 이름의 예약 작업, 알려진 해석기 도메인으로의 비 브라우저 프로세스에서의 트래픽을 탐지하는 데 중점을 두어야 합니다. 식별된 명령 및 제어 인프라를 차단하고 이메일 첨부 파일에 엄격한 스캔 통제를 적용하면 초기 손상의 가능성을 줄일 수 있습니다.
응답
이 활동이 탐지된 경우, 영향을 받은 호스트를 즉시 격리하고 휘발성 증거를 수집하며 완전한 포렌식 수집을 수행하십시오. 대체 데이터 스트림에 숨겨진 파일을 제거하고 악성 RunOnce 레지스트리 항목을 삭제하며 관련된 예약 작업을 비활성화하십시오. 네트워크 경계에서 알려진 해석기 도메인과 IP 주소를 차단하고, 관찰된 명령 줄과 파일 없는 실행 패턴을 식별할 수 있도록 엔드포인트 탐지를 업데이트해야 합니다.
공격 흐름
탐지
가능한 지속성 지점 [ASEPs – Software/NTUSER Hive] (via registry_event)
보기
LOLBAS WScript / CScript (via process_creation)
보기
LOLBAS MSHTA 방어 회피 행동의 탐지를 통한 의심스러운 행동 (via process_creation)
보기
의심스러운 CURL 사용 (via cmdline)
보기
자동 시작 위치에 의심스러운 이진 파일 / 스크립트 (via file_event)
보기
명령 및 제어 채널로서 가능한 Telegram 남용 (via dns_query)
보기
제3자 서비스/도구를 통한 가능한 데이터 침투/유출/명령 및 제어 (via dns_query)
보기
가능한 CVE-2025-8088 / CVE-2025-6218 (WinRAR 취약점) 악용 시도 (via file_event)
보기
의심스러운 Trycloudflare 도메인 통신 (via dns)
보기
가능한 Cloudflare 개발 도메인 남용 (via dns)
보기
탐지를 위한 IOC (HashMd5): FSB의 마트료시카 #1/3 – 계속 풀어가는 Gamaredon의 선물 – GammaPhish 및 GammaWorm
보기
탐지를 위한 IOC (SourceIP): FSB의 마트료시카 #1/3 – 계속 풀어가는 Gamaredon의 선물 – GammaPhish 및 GammaWorm
보기
탐지를 위한 IOC (DestinationIP): FSB의 마트료시카 #1/3 – 계속 풀어가는 Gamaredon의 선물 – GammaPhish 및 GammaWorm
보기
Windows 파일 이벤트에 대한 GammaWorm NTFS ADS 사용 탐지
보기
시뮬레이션 실행
전제 조건: 원격 측정 및 기준선 사전 점검이 통과해야 합니다.
이유: 이 섹션은 탐지 규칙을 트리거하도록 설계된 적대적 기술(T1564.007)의 정확한 실행을 자세히 설명합니다. 명령과 내러티브는 탐지 논리가 예상하는 원격 측정을 직접 생성합니다.
-
공격 설명 및 명령:
운영자는 GammaWorm 페이로드(컴파일된 PE)를 얻고 전통적인 파일 목록에서 숨겨진 채로 지속성을 달성하고자 합니다. 공격자는 NTFS 대체 데이터 스트림에 이름이 지정된 GTR 사용자의 프로필 디렉터리 내. Windows는 ADS를 정상 파일의 일부로 처리할 것입니다 (%USERPROFILE%gamma.exe:GTR). ADS 이름은 규칙의 하드코딩된 목록과 일치하므로, “:GTR”을 포함하는 파일 생성 이벤트는%USERPROFILE%아래에서 탐지를 발생시킬 것입니다.# 단계 1 – 더미 악성 바이너리를 준비합니다 (예: base64로 인코딩된 PowerShell 원라이너) $malicious = [System.Convert]::FromBase64String( "TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "AAAAAAAAAAAAAAAwAAAAA4AAAAA") $payloadPath = "$env:USERPROFILEgamma.exe" # 단계 2 – 주 파일에 바이너리를 기록합니다 (선택 사항; ADS는 주 파일 없이 존재할 수 있음) [IO.File]::WriteAllBytes($payloadPath, $malicious) # 단계 3 – 동일한 바이너리(또는 다른 페이로드)를 GTR이라는 ADS에 기록합니다 $adsPath = "$payloadPath:GTR" Set-Content -Path $adsPath -Value $malicious -Encoding Byte -
회귀 테스트 스크립트: (자체 포함; PowerShell 5+가 있는 모든 Windows 호스트에서 실행할 수 있음)
# GammaWorm ADS 지속성 시뮬레이션 – 탐지 규칙을 트리거합니다 try { # 자리 표시자 호스트 파일 생성 $hostFile = "$env:USERPROFILEgamma.exe" $dummyBytes = [byte[]] (0x4D,0x5A,0x90,0x00) # 최소 PE 헤더 [IO.File]::WriteAllBytes($hostFile, $dummyBytes) # 악성 페이로드를 "GTR"이라는 ADS에 기록 $ads = "$hostFile:GTR" Set-Content -Path $ads -Value $dummyBytes -Encoding Byte Write-Host "ADS 'GTR'이 $ads에서 성공적으로 생성되었습니다" } catch { Write-Error "시뮬레이션 실패: $_" } -
정리 명령:
# ADS 및 자리 표시자 호스트 파일 제거 $hostFile = "$env:USERPROFILEgamma.exe" $ads = "$hostFile:GTR" # ADS 삭제(Sysinternals Streams.exe 또는 PowerShell 5+ 필요) if (Test-Path $ads) { Remove-Item -Path $ads -Force Write-Host "ADS GTR 제거됨." } # 메인 파일 삭제 if (Test-Path $hostFile) { Remove-Item -Path $hostFile -Force Write-Host "호스트 파일 gamma.exe 삭제됨." }