Classification: TLP:WHITE | Pulse Date: 2026-08-31 | Severity: HIGH
Threat Summary
A single high-fidelity OTX pulse from AlienVault confirms an active campaign attributed to Void Arachne, a China-nexus threat actor, distributing the ValleyRAT backdoor under the guise of a legitimate Chinese wallpaper utility called QN Wallpaper. The campaign targets users in China, India, and the British Indian Ocean Territory, with the lure language and software masquerade strongly indicating a focus on Chinese-speaking end users and enterprises operating in the APAC region.
The attack chain is deceptively simple but engineered for stealth: victims download what appears to be a benign wallpaper management application. The installer deploys a modified, still-functional version of the QN Wallpaper tool alongside a malicious DLL, then leverages DLL sideloading — placing a weaponized library next to a legitimately signed executable so the operating system loads the attacker's code under the trust umbrella of a valid signature. This technique defeats naive application allowlisting and makes the malicious process appear as trusted software in endpoint telemetry.
The objective is long-term espionage and surveillance. ValleyRAT is a full-featured backdoor providing keylogging, clipboard monitoring, screenshot capture, and secondary payload delivery — the tooling profile of an intelligence-collection operation, not a smash-and-grab criminal campaign.
Threat Actor / Malware Profile
Void Arachne
Void Arachne is an APT-aligned actor cluster known for campaigns targeting Chinese-speaking users, frequently abusing popular localized software (messaging apps, VPN clients, utilities) as trojanized lures. Their tradecraft consistently favors signed-binary abuse and sideloading over noisy exploit delivery, reflecting an operator preference for persistence and low detection rates.
ValleyRAT Backdoor
| Attribute | Detail |
|---|---|
| Distribution | Trojanized QN Wallpaper adware installer |
| Execution | DLL sideloading via signed, legitimate wallpaper process |
| Capabilities | Keylogging, clipboard monitoring, screenshot capture, ad/payload delivery, remote command execution |
| C2 | Direct IPv4-based command-and-control (103.45.66.18, 192.253.225.173) |
| Persistence | Survives via the legitimately installed (modified) wallpaper application; sideloaded DLL reloads on each signed-process launch |
| Anti-analysis | Execution only under signed parent process; benign wallpaper functionality preserved to deflect user and analyst suspicion; MD5-based sample rotation (3 distinct hashes observed) |
The critical detection insight: the malicious code never appears as its own process. It lives inside a trusted, signed binary's memory space. Signature-based AV scanning the executable will find nothing — the payload is in the adjacent DLL and in the process's runtime behavior.
IOC Analysis
The pulse delivers 5 indicators across 2 types:
- IPv4 (2):
103.45.66.18,192.253.225.173— ValleyRAT C2 infrastructure. These are direct-IP C2 endpoints, meaning no domain resolution telemetry will exist; detection must happen at the NetFlow/firewall/EDR network layer. - FileHash-MD5 (3):
c24e99f9437feacaa63766a3cde3fe3d,07ddbbe2c71c45577a7a4fbcdba0df91,8a626d844943da3456b044f38deae3a2— samples of the malicious installer and/or sideloaded DLL. Note: MD5s are brittle; a single recompile breaks them. Treat hashes as retrospective hunt indicators, not forward-looking blocks.
Operationalization guidance for SOC teams:
- Push both IPs to perimeter block lists (firewall, proxy, DNS-sinkhole is not applicable for raw-IP C2 — use egress filtering).
- Import hashes into your EDR's blocklist, but prioritize behavioral detection (sideloading patterns) since hash rotation is trivial for this actor.
- Retro-hunt 90 days of network telemetry for connections to the C2 IPs — sideloaded implants are quiet, and infections may predate the pulse publication.
- Pivot tooling: run hashes through VirusTotal/Hybrid Analysis for config extraction; query the IPs against Shodan/Censys for co-hosted infrastructure and certificate reuse.
Detection Engineering
The following detections target the core behavioral signature: a signed process loading an unsigned/untrusted DLL from its own directory, plus egress to known C2.
---
title: DLL Sideloading via Signed Process - ValleyRAT / QN Wallpaper Masquerade
id: 9f2a4c11-7b3e-4d8a-a1c5-3e6f9b2d1a07
status: experimental
description: Detects a signed executable loading an unsigned DLL from its own directory, consistent with Void Arachne ValleyRAT sideloading via trojanized QN Wallpaper installer
references:
- https://securelist.com/valleyrat-backdoor-adware/121175/
author: Security Arsenal Threat Intelligence
date: 2026/08/31
logsource:
category: image_load
product: windows
detection:
selection_signed_parent:
Signed: 'true'
selection_unsigned_dll:
ImageLoaded|endswith: '.dll'
SignatureStatus|contains:
- 'unsigned'
- 'invalid'
filter_system_paths:
ImageLoaded|startswith:
- 'C:\Windows\'
- 'C:\Program Files\Common Files\'
condition: selection_signed_parent and selection_unsigned_dll and not filter_system_paths
falsepositives:
- Legitimate software shipping unsigned plugins
- Developer machines with custom DLL builds
level: high
tags:
- attack.defense_evasion
- attack.t1574.002
---
title: ValleyRAT C2 Network Connection - Void Arachne
id: 2c8e1b44-9a5f-4c2d-b3e7-8d1f6a4c9e02
status: experimental
description: Detects outbound connections to known ValleyRAT command-and-control infrastructure attributed to Void Arachne
references:
- https://securelist.com/valleyrat-backdoor-adware/121175/
author: Security Arsenal Threat Intelligence
date: 2026/08/31
logsource:
category: network_connection
product: windows
detection:
selection:
DestinationIp:
- '103.45.66.18'
- '192.253.225.173'
condition: selection
falsepositives:
- Unlikely; these IPs are confirmed C2
level: critical
tags:
- attack.command_and_control
- attack.t1071
---
title: ValleyRAT Known Sample Hash Execution
id: 5d7f3a92-1c8b-4e6d-92a4-6b3c8f1e5d09
status: experimental
description: Detects execution of known ValleyRAT trojanized QN Wallpaper installer samples by MD5 hash
references:
- https://securelist.com/valleyrat-backdoor-adware/121175/
author: Security Arsenal Threat Intelligence
date: 2026/08/31
logsource:
category: process_creation
product: windows
detection:
selection:
Hashes|contains:
- 'c24e99f9437feacaa63766a3cde3fe3d'
- '07ddbbe2c71c45577a7a4fbcdba0df91'
- '8a626d844943da3456b044f38deae3a2'
condition: selection
falsepositives:
- None expected
level: critical
tags:
- attack.execution
- attack.t1204.002
// ValleyRAT / Void Arachne hunt: C2 connections + suspicious DLL loads from user-writable paths
// Microsoft Sentinel / Microsoft 365 Defender
let C2IPs = dynamic(["103.45.66.18", "192.253.225.173"]);
let KnownHashes = dynamic(["c24e99f9437feacaa63766a3cde3fe3d", "07ddbbe2c71c45577a7a4fbcdba0df91", "8a626d844943da3456b044f38deae3a2"]);
union isfuzzy=true
(
DeviceNetworkEvents
| where TimeGenerated > ago(90d)
| where RemoteIP in (C2IPs)
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessFolderPath, RemoteIP, RemotePort, ActionType, HuntStage="C2 Connection"
),
(
DeviceImageLoadEvents
| where TimeGenerated > ago(90d)
| where MD5 in (KnownHashes) or SHA1 in (KnownHashes) or SHA256 in (KnownHashes)
| project TimeGenerated, DeviceName, InitiatingProcessFileName, FileName, FolderPath, MD5, HuntStage="Known Hash Load"
),
(
DeviceImageLoadEvents
| where TimeGenerated > ago(30d)
// Sideloading heuristic: DLL loaded from AppData/Temp/Public alongside wallpaper-themed installers
| where FolderPath has_any ("\\AppData\\", "\\Temp\\", "\\Public\\", "\\Downloads\\")
| where FileName endswith ".dll"
| where InitiatingProcessFileName has_any ("wallpaper", "qn", "wp", "desk") or InitiatingProcessFolderPath has "wallpaper"
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessFolderPath, FileName, FolderPath, MD5, HuntStage="Sideload Heuristic"
),
(
DeviceProcessEvents
| where TimeGenerated > ago(30d)
| where FileName has_any ("wallpaper", "qnwallpaper") or ProcessCommandLine has_any ("wallpaper", "qn ")
| project TimeGenerated, DeviceName, FileName, FolderPath, ProcessCommandLine, InitiatingProcessFileName, MD5, HuntStage="Installer Execution"
)
| order by TimeGenerated desc
# ValleyRAT / Void Arachne endpoint IOC hunt script
# Run elevated on suspected hosts. Checks C2 connections, known hashes, sideload artifacts, and persistence.
$c2Ips = @("103.45.66.18", "192.253.225.173")
$knownMd5 = @("c24e99f9437feacaa63766a3cde3fe3d", "07ddbbe2c71c45577a7a4fbcdba0df91", "8a626d844943da3456b044f38deae3a2")
$findings = @()
Write-Host "[1/5] Checking active and recent TCP connections to ValleyRAT C2..." -ForegroundColor Cyan
$conns = Get-NetTCPConnection -ErrorAction SilentlyContinue | Where-Object { $c2Ips -contains $_.RemoteAddress }
foreach ($c in $conns) {
$proc = Get-Process -Id $c.OwningProcess -ErrorAction SilentlyContinue
$findings += "[C2 CONNECTION] $($c.RemoteAddress):$($c.RemotePort) <- PID $($c.OwningProcess) ($($proc.ProcessName)) [$($c.State)]"
}
Write-Host "[2/5] Checking DNS cache and netstat history artifacts..." -ForegroundColor Cyan
$dnsCache = Get-DnsClientCache -ErrorAction SilentlyContinue | Where-Object { $c2Ips -contains $_.Data }
foreach ($d in $dnsCache) { $findings += "[DNS CACHE] $($d.Entry) -> $($d.Data)" }
Write-Host "[3/5] Scanning user-writable paths for known ValleyRAT hashes..." -ForegroundColor Cyan
$scanPaths = @("$env:APPDATA", "$env:LOCALAPPDATA", "$env:TEMP", "C:\Users\Public", "C:\ProgramData")
foreach ($path in $scanPaths) {
if (Test-Path $path) {
Get-ChildItem -Path $path -Recurse -Include *.dll,*.exe -ErrorAction SilentlyContinue | ForEach-Object {
$h = (Get-FileHash -Algorithm MD5 -Path $_.FullName -ErrorAction SilentlyContinue).Hash
if ($knownMd5 -contains $h.ToLower()) { $findings += "[HASH MATCH] $($_.FullName) MD5=$h" }
}
}
}
Write-Host "[4/5] Hunting wallpaper-themed executables with adjacent DLLs (sideload indicator)..." -ForegroundColor Cyan
Get-ChildItem -Path "C:\Users\","C:\Program Files","C:\Program Files (x86)","C:\ProgramData" -Recurse -Include *.exe -ErrorAction SilentlyContinue |
Where-Object { $_.Name -match "wallpaper|^qn" } | ForEach-Object {
$adjacent = Get-ChildItem -Path $_.DirectoryName -Filter *.dll -ErrorAction SilentlyContinue
foreach ($dll in $adjacent) {
$sig = Get-AuthenticodeSignature -FilePath $dll.FullName -ErrorAction SilentlyContinue
if ($sig.Status -ne "Valid") { $findings += "[SIDELOAD SUSPECT] Signed EXE: $($_.FullName) | Unsigned DLL: $($dll.FullName)" }
}
}
Write-Host "[5/5] Checking Run keys and scheduled tasks for wallpaper-themed persistence..." -ForegroundColor Cyan
$runKeys = @("HKCU:\Software\Microsoft\Windows\CurrentVersion\Run", "HKLM:\Software\Microsoft\Windows\CurrentVersion\Run")
foreach ($rk in $runKeys) {
if (Test-Path $rk) {
(Get-ItemProperty $rk).PSObject.Properties | Where-Object { $_.Value -match "wallpaper|qn" } |
ForEach-Object { $findings += "[RUN KEY] $rk\$($_.Name) = $($_.Value)" }
}
}
Get-ScheduledTask -ErrorAction SilentlyContinue | Where-Object { $_.TaskName -match "wallpaper|qn" -or $_.Actions.Execute -match "wallpaper|qn" } |
ForEach-Object { $findings += "[SCHEDULED TASK] $($_.TaskName) -> $($_.Actions.Execute) $($_.Actions.Arguments)" }
Write-Host "`n===== FINDINGS =====" -ForegroundColor Yellow
if ($findings.Count -eq 0) { Write-Host "No ValleyRAT indicators found on this host." -ForegroundColor Green }
else { $findings | ForEach-Object { Write-Host $_ -ForegroundColor Red }; $findings | Out-File "$env:TEMP\valleyrat_hunt_$(Get-Date -Format 'yyyyMMdd_HHmmss').txt" }
Response Priorities
Immediate (0–4 hours)
- Block both C2 IPs (
103.45.66.18,192.253.225.173) at egress firewall, proxy, and EDR network control layers. Raw-IP C2 means egress filtering is your only network control — DNS controls are irrelevant here. - Push the three MD5s to EDR blocklists and email/web gateway file-detention rules.
- Deploy the Sigma rules and run the KQL hunt across the full 90-day retrospective window; sideloaded implants are quiet and infections likely predate this pulse.
- Run the PowerShell hunt script on any endpoint with QN Wallpaper or similar wallpaper utilities installed.
24 Hours
- Credential exposure assessment is mandatory. ValleyRAT performs keylogging and clipboard monitoring — treat every confirmed infection as a full credential compromise for any account used on that host. Force resets for domain credentials, browser-stored passwords, and any credentials copied via clipboard (password manager usage windows, RDP, VPN).
- Review clipboard-adjacent risk: cryptocurrency addresses, session tokens, and MFA recovery codes entered on infected hosts.
- Isolate confirmed hosts and capture memory before remediation — sideloaded payloads may exist only in the signed process's memory space.
- Interview affected users on download source: identify the distribution vector (malvertising, SEO poisoning, third-party app stores) to scope exposure.
1 Week
- Attack surface hardening: block or restrict installation of non-business software, particularly localized utility/freeware installers, via application control (WDAC/AppLocker) with publisher-based rules that still verify DLL directory trust — publisher trust alone is exactly what this campaign abuses.
- Enable Microsoft Defender ASR rules for untrusted/unsigned process spawning and Office/script abuse; enable Attack Surface Reduction rule "Block executable files from running unless they meet a prevalence, age, or trusted list criterion."
- Implement egress policy review: alert on any workstation establishing direct-to-IP (non-DNS-resolved) outbound connections — a strong generic signal for this class of implant.
- Feed sideloading-behavior detections into your detections-as-code pipeline; Void Arachne rotates hashes and lures, but the signed-binary + adjacent-unsigned-DLL pattern is durable tradecraft.
- Brief APAC-region business units and IT on the trojanized-software lure; enforce approved-software catalogs for Chinese-language utility tools.
This briefing is based on AlienVault OTX pulse data published 2026-08-31. TLP:WHITE — may be distributed without restriction.
Related Resources
Security Arsenal Incident Response Managed SOC & MDR Services AlertMonitor Threat Detection From The Dark Side Intel Hub
Is your security operations ready?
Get a free SOC assessment or see how AlertMonitor cuts through alert noise with automated triage.