BlackToad, AutoIt 페이로드에서 네트워크 조작 사용
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
JUMPSEC은 맞춤형 AutoIt 크립터에 숨겨진 Remcos RAT 페이로드를 전달하는 피싱 캠페인을 발견했습니다. 감염 체인은 VBS 스크립트를 사용하여 실행됩니다. ipconfig /release 후에 ipconfig /renew를 사용하여 탐지를 피하기 위해 네트워크 연결을 일시적으로 방해합니다. 연구원들은 이 캠페인이 나이지리아 전자 범죄 생태계와 관련이 있으며, 인프라는 모바일 ISP 연결 뒤에 호스팅되는 동적 DNS 도메인에 의존하고 있음을 밝혔습니다.
조사
조사는 악성 이메일을 추적하고, 포함된 WinRAR 자기 추출 아카이브를 해제했으며, 위장된 AutoIt 인터프리터를 시작하는 VBS 로더를 식별했습니다. AutoIt 스크립트는 Remcos 임플란트를 복호화하고 실행했으며, 복구된 구성에서는 명령 및 제어 도메인, 뮤텍스 값, 지속성 레지스트리 실행 키가 드러났습니다. 연구원들은 지원 인프라를 세 개의 동적 DNS 도메인과 순환 설정된 나이지리아 IP 주소에 매핑했습니다.
차단
조직은 식별된 동적 DNS 도메인 및 관련 IP 범위를 차단하고, 의심스러운 ipconfig /release and ipconfig /renew 순서를 모니터링하고 AutoIt 또는 VBS 스크립트가 cmd.exe를 생성하는지 탐지해야 합니다. 오도하는 이중 확장자를 사용하는 파일에 대해 강력한 실행 통제를 적용해야 하며, WindowsUpdate 와 같은 레지스트리 실행 항목의 남용을 모니터링해야 합니다.
대응
이 활동이 감지되면, 감염된 엔드포인트를 즉시 격리하고, Remcos 프로세스를 종료하고, 지속성에 사용된 악성 실행 키를 제거하며, 자격 증명 도난 또는 후속 활동에 대한 전체적인 포렌식 검토를 수행해야 합니다. 탐지 콘텐츠 또한 네트워크 블랙아웃 기법과 캠페인에 연결된 특정 파일명 패턴을 식별하도록 업데이트해야 합니다.
공격 흐름
탐지
가능한 지속성 포인트 [ASEPs – Software/NTUSER 하이브] (registry_event 을 통해)
보기
비정상적인 동적 DNS 서비스가 접촉된 것 같습니다. (dns를 통해)
보기
이중 확장자를 가진 잠재적으로 악의적인 SCR 파일 (cmdline을 통해)
보기
AutoIt 페이로드에서의 네트워크 조작 탐지: BlackToad IOCs (HashSha256)
보기
AutoIt 페이로드에서의 네트워크 조작 탐지: BlackToad IOCs (HashMd5)
보기
AutoIt 페이로드에서의 네트워크 조작 탐지: BlackToad IOCs (SourceIP)
보기
AutoIt 페이로드에서의 네트워크 조작 탐지: BlackToad IOCs (DestinationIP)
보기
BlackToad C2 통신 탐지 [Windows 네트워크 연결]
보기
BlackToad AutoIt 페이로드를 통한 네트워크 조작 [Windows 프로세스 생성]
보기
시뮬레이션 실행
전제 조건: Telemetry 및 Baseline Pre‑flight Check가 통과되어야 합니다.
이유: 이 섹션은 탐지 규칙을 트리거하도록 설계된 적 대 기술(TTP)의 정확한 실행을 자세히 설명합니다. 명령과 서사는 식별된 TTP를 직접적으로 반영해야 하며 탐지 논리에서 예상되는 정확한 원시 데이터를 생성하는 것을 목표로 해야 합니다. 추상적이거나 관련 없는 예는 오진으로 이어질 것입니다.
-
공격 서사 및 명령:
- 목적: 하드코딩된 포트 50240에서 알려진 악성 DDNS 도메인 중 하나를 사용하여 BlackToad Remcos 임플란트와 C2 채널을 구축합니다.
- 단계별:
- 선택한 악성 DDNS 도메인 (
pmitm.ddns.net). - 의 IP를 해석합니다.
- 해석된 IP로 포트 50240에 TCP 소켓을 엽니다.
- 임플란트의 초기 핸드쉐이크를 모방하기 위해 최소 “하트비트” 페이로드를 전송합니다.
- 선택한 악성 DDNS 도메인 (
- 아웃바운드 연결이 방화벽에 기록되도록 30초 동안 소켓을 열어둡니다.
목록 및의 기준을 정확히 만족하여 탐지 가능한 방화벽 이벤트를 발생시킵니다.대상 포트기준.
-
회귀 테스트 스크립트:
# BlackToad C2 통신 시뮬레이션 (PowerShell) $c2Domain = "pmitm.ddns.net" # 규칙에 나열된 도메인 중 하나 $c2Port = 50240 try { # 도메인을 IP로 해석 (DNS 쿼리 원시 데이터 추가) $ip = [System.Net.Dns]::GetHostAddresses($c2Domain) | Where-Object { $_.AddressFamily -eq 'InterNetwork' } | Select-Object -First 1 if (-not $ip) { throw "Unable to resolve $c2Domain" } Write-Host "Resolved $c2Domain to $($ip.IPAddressToString). Connecting..." # TCP 연결 열기 (방화벽 아웃바운드 로그 생성) $client = New-Object System.Net.Sockets.TcpClient $client.Connect($ip, $c2Port) # 간단한 하트비트 전송 (hex 0x01) $stream = $client.GetStream() $payload = [byte[]](0x01) $stream.Write($payload, 0, $payload.Length) Write-Host "Heartbeat sent. Keeping connection alive for 30 seconds..." Start-Sleep -Seconds 30 $stream.Close() $client.Close() Write-Host "Connection closed cleanly." } catch { Write-Error "Simulation failed: $_" } -
정리 명령:
# 남아 있는 모든 소켓이 닫혀 있는지 확인 Get-NetTCPConnection -RemotePort 50240 -State Established | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force } # 선택 사항: 해석된 DDNS 항목을 제거하려면 DNS 캐시를 플러시 ipconfig /flushdns Write-Host "정리 완료."