fb5bc5438cc0be0978fc6723d1f063e32b1fd5df4d3c45599e474796d5d9ab6aunclassified-autoit-compiled: fb5bc543 — 690 KB DHL-lure script in overlay, AutoItSC v3.3.8.1
Executive Summary
AutoIt v3 single-file compiler (AutoItSC) PE32 with a 690 KB encrypted compiled script stored in the file overlay (AU3!EA06 magic). Delivered as a DHL logistics lure (Custom_brief_declaration_notification_for_DHL_2024sept.exe). Jan 2012 PE timestamp and AutoItSC v3.3.8.1 runtime. No CAPE detonation available. Static-only inference. Fifteenth confirmed sibling of the unclassified-autoit-compiled cluster.
What It Is
| Field | Value |
|---|---|
| SHA-256 | fb5bc5438cc0be0978fc6723d1f063e32b1fd5df4d3c45599e474796d5d9ab6a |
| File size | 1,356,187 bytes (1.29 MB) |
| File type | PE32 executable (GUI) Intel 80386, 4 sections ^[file.txt] |
| PE timestamp | 2012-01-29 21:32:28 UTC ^[pefile.txt] |
| Linker | Microsoft linker 10.0 (VS 2010) ^[pefile.txt] |
| Subsystem | Windows GUI ^[pefile.txt] |
| CompiledScript | AutoIt v3 Script: 3, 3, 8, 1 ^[exiftool.json] |
| Signed | No ^[pefile.txt] |
| PDB | None |
| Version info | Empty FileDescription; FileVersion 3,3,8,1 ^[pefile.txt] |
How It Works
AutoItSC runtime loads the encrypted compiled script from the file overlay and decrypts/executes it in-memory. The overlay begins at raw offset 0x9E800 immediately after the .rsrc section, is 706,971 bytes (690.4 KB), and carries the AU3!EA06 magic confirming AutoIt compiled script placement.^[terminal: python pefile overlay extraction] This is the third cluster sibling with script-in-overlay placement (after ff84806a and e5647a2d), and the second-largest overlay script observed.
Lure theme: DHL brief declaration notification (Custom_brief_declaration_notification_for_DHL_2024sept.exe). Falls under the social-engineering-filename-lure pattern targeting logistics/shipping urgency.
Script size: 690 KB is in the upper third of the cluster (range 186 KB–932 KB), suggesting a feature-rich payload. The actual behavior is opaque statically because AutoIt compiled bytecode is encrypted and capa cannot analyze it.^[capa.txt]
Import surface: Standard AutoItSC v3.3.8.1 runtime DLL set — KERNEL32, USER32, GDI32, ADVAPI32, SHELL32, ole32, OLEAUT32, WSOCK32, WININET, COMCTL32, MPR, PSAPI, USERENV, VERSION, WINMM, COMDLG32.^[pefile.txt] Full WinInet client surface (HTTP/HTTPS/FTP) and raw WinSock surface are present, enabling C2 over both application-layer and non-application-layer protocols. The PSAPI and USERENV imports suggest process enumeration and user-profile manipulation. ADVAPI32 includes token privilege adjustment (AdjustTokenPrivileges), service manager (OpenSCManagerW), and registry write APIs (RegSetValueExW, RegCreateKeyExW), enabling persistence and privilege escalation.
PCRE regex library: The binary contains the full PCRE error-message table and Unicode property-name strings (Arabic, Armenian, Bengali, … Ugaritic), indicating the AutoIt runtime includes PCRE regex support.^[strings.txt:369-444] Script-level regex usage (e.g., data harvesting, pattern matching) is probable but unverifiable statically.
Icons: 12 individual icon resources (IDs 0x1–0xC) in RT_ICON, grouped under RT_GROUP_ICON.^[pefile.txt] The icon suite is richer than the typical 1–4 icon sets seen in many cluster siblings, potentially improving social-engineering credibility.
Decompiled Behavior
Ghidra analysis of the AutoIt interpreter runtime yields standard AutoItSC v3.3.8.1 C code (event loop, script loader, DllCall dispatcher, COM wrapper). The malicious logic lives in the encrypted AU3!EA06 bytecode in the overlay, which Ghidra does not decode. Without MyAut2Exe or dynamic execution, script-level control flow and API call sequences are opaque.^[capa.txt]
C2 Infrastructure
No hardcoded domains, IPs, or URLs recoverable from static analysis. The script's network configuration is encrypted inside the overlay bytecode. C2 protocol inference is limited to the WinInet/WinSock import surface:
- HTTP/HTTPS via
HttpOpenRequestW,HttpSendRequestW,InternetReadFile^[pefile.txt] - FTP via
FtpOpenFileW,FtpGetFileSize^[pefile.txt] - Raw TCP/UDP via
socket,connect,send,recv^[pefile.txt]
Interesting Tidbits
- Overlay script placement: Third sibling in the cluster with script stored in file overlay rather than
.rsrcRT_RCDATA. The other two areff84806a(694 KB) ande5647a2d(710 KB). This placement may be an operator preference or a build-flag variant in the AutoIt compiler.^[terminal: python pefile overlay extraction] - Large script: 690 KB places this in the top 20% of observed script sizes in the cluster, suggesting extensive functionality (possibly multiple modules, extensive C2 logic, or bundled payloads).
- 12 icon resources: Unusually rich icon suite compared to the 1–4 icons typical in this cluster. May reflect a more polished social-engineering package.
- PCRE presence: Full PCRE regex library is present in the runtime, but not all cluster siblings include it. This may indicate script-side regex usage for data parsing or credential harvesting.
- Empty VS_VERSIONINFO:
FileDescriptionis blank, leaving onlyCompiledScriptandFileVersionas version indicators.^[pefile.txt] - FLOSS failure: flare-floss failed with argument parsing error (
--noflag collision), yielding no decoded strings.^[floss.txt]
How To Mess With It (Homelab Replication)
Toolchain: AutoIt v3.3.8.1 (or later) on Windows, AutoItSC compiler.
Steps:
- Install AutoIt v3.3.8.1 from the AutoIt website.
- Write a benign AutoIt script that exercises WinInet, WinSock, and registry APIs.
- Compile with
AutoItSC.exe(right-click → Compile Script) to produce a single-file PE32. - Verify the output has
AU3!EA06in the overlay or.rsrc(depending on compiler settings). - Run
capaon the output; it should flag theautoit file limitationwarning.
Verification: Compare capa output to the cluster's capa.txt — should show the same AutoIt limitation warning with no actionable capabilities.
Deployable Signatures
YARA rule:
rule AutoItSC_DHL_Overlay_Script {
meta:
description = "AutoItSC v3.3.8.1 PE with large overlay script and DHL logistics lure"
author = "PacketPursuit"
sha256 = "fb5bc5438cc0be0978fc6723d1f063e32b1fd5df4d3c45599e474796d5d9ab6a"
strings:
$au3_magic = "AU3!EA06" ascii
$autoit_str = "This is a compiled AutoIt script." ascii
$dhl_lure1 = "DHL" ascii wide nocase
$dhl_lure2 = "declaration" ascii wide nocase
$dhl_lure3 = "notification" ascii wide nocase
$compiled = "CompiledScript: AutoIt v3 Script: 3, 3, 8, 1" ascii wide
condition:
uint16(0) == 0x5A4D and
pe.number_of_sections == 4 and
pe.subsystem == pe.SUBSYSTEM_WINDOWS_GUI and
$au3_magic and
$autoit_str and
($dhl_lure1 or $dhl_lure2 or $dhl_lure3) and
filesize > 1MB and filesize < 2MB
}
Behavioral hunt query (KQL / Microsoft Defender):
DeviceFileEvents
| where FileName contains "DHL" and (FileName contains "declaration" or FileName contains "notification")
| where FileName endswith ".exe"
| join kind=inner (
DeviceProcessEvents
| where InitiatingProcessFileName =~ "explorer.exe"
) on DeviceId, $left.FileName == $right.FileName
| where FileSize > 1350000 and FileSize < 1400000
IOC list:
- SHA-256:
fb5bc5438cc0be0978fc6723d1f063e32b1fd5df4d3c45599e474796d5d9ab6a - File size:
1,356,187 bytes - File name observed:
Custom_brief_declaration_notification_for_DHL_2024sept.exe - Overlay script size:
706,971 bytes - AutoIt version:
3.3.8.1 - PE timestamp:
2012-01-29 21:32:28 UTC - Icon count: 12 (
RT_ICONIDs 0x1–0xC)
Behavioral fingerprint:
AutoItSC v3.3.8.1 PE32 GUI executable with empty FileDescription, 12 icon resources, and a 690 KB encrypted compiled script in the file overlay. Launches as a single process with no child processes (script runs inside the interpreter). Contacts remote hosts via WinInet HTTP/HTTPS or raw WinSock within minutes of execution. May write to registry Run keys or create scheduled tasks for persistence.
Detection Signatures
| ATT&CK ID | Technique | Evidence |
|---|---|---|
| T1059.005 | Command and Scripting Interpreter: Visual Basic / AutoIt | Compiled AutoIt script execution via AutoItSC runtime ^[capa.txt] |
| T1566.001 | Phishing: Spearphishing Attachment | DHL logistics-themed filename lure |
| T1071.001 | Application Layer Protocol: Web Protocols | WinInet HTTP/HTTPS/FTP imports ^[pefile.txt] |
| T1095 | Non-Application Layer Protocol | WinSock TCP/UDP socket imports ^[pefile.txt] |
| T1083 | File and Directory Discovery | FindFirstFileW, FindNextFileW, GetFileAttributesW ^[pefile.txt] |
| T1057 | Process Discovery | CreateToolhelp32Snapshot, Process32FirstW, Process32NextW, EnumProcesses ^[pefile.txt] |
| T1113 | Screen Capture | GDI32 StretchBlt, GetDIBits, CreateCompatibleDC ^[pefile.txt] |
| T1056.001 | Input Capture: Keylogging | GetAsyncKeyState ^[pefile.txt] |
| T1547.001 | Registry Run Keys / Startup Folder | RegSetValueExW, RegCreateKeyExW ^[pefile.txt] |
| T1053.005 | Scheduled Task/Job: Scheduled Task | CreateProcessW + AutoIt Run capability (script-side, unconfirmed) |
References
- unclassified-autoit-compiled — cluster entity page with shared TTPs and build fingerprint
- social-engineering-filename-lure — concept page for professional-context filename lures
- autoit-compiled-script-dropper — concept page for AutoIt deployment patterns
- MalwareBazaar artifact:
fbbed006-bc39-431f-8f6b-6caab0f2aa60
Provenance
file.txt— PE type identificationpefile.txt— PE structure, imports, resources, version infoexiftool.json— metadata extractionstrings.txt— ASCII/Unicode stringscapa.txt— capability detection (AutoIt limitation warning)rabin2-info.txt— radare2 binary header summaryyara.txt— PE_File_Generic, Suspicious_Wininet_Importsbinwalk.txt— binwalk surface scan (no meaningful embedded artefacts)triage.json— triage classificationfloss.txt— flare-floss failed with argument errordynamic-analysis.md— CAPE skipped (no Windows guest)- Terminal: Python overlay offset/size calculation via
pefilemodule