Three freshly-published OTX pulses converge on a single theme: adversaries are industrializing the delivery layer — poisoning developer package registries, weaponizing shortcut files in spear-phishing, and running ransomware operations with AI-assisted attack planning. This briefing synthesizes the telemetry and ships a working detection pack.
Threat Summary
Pulse 1 — NuGet Supply-Chain Surveillance Implant (pepesoft.exe). Eleven malicious .NET command-line tools published to NuGet masquerade as game cheats for Albion Online, GTA5RP, GrandRP, and Throne and Liberty. Each package is a first-stage downloader that resolves its true C2 via DNS-over-HTTPS (DoH) to evade local DNS controls, requests UAC elevation under the pretext of "resyncing system time," and pulls a second-stage PyInstaller-packaged payload named pepesoft.exe. The implant performs hardware fingerprinting, screenshot exfiltration, telemetry via Google Sheets, and is controlled through a Telegram bot — a full covert host-surveillance stack hidden inside developer tooling.
Pulse 2 — Kimsuky July 2026 APT Wave (XenoRAT). AhnLab's trend reporting attributes a multi-pronged spear-phishing campaign against South Korean entities to Kimsuky, delivering XenoRAT through malicious LNK files. Seven attack variants (A–G) chain PowerShell, AutoIt-compiled payloads, curl.exe-based downloads, and DLL side-loading, with staging hosted on legitimate platforms including GitHub, Google Drive, and Dropbox. The objective is persistent espionage-grade access with keylogging and information-stealing capability.
Pulse 3 — Aurora Ransomware Affiliate Exposed ("Caught in 4K"). A misconfigured server belonging to a Russian-speaking Aurora ransomware affiliate leaked the operator's complete toolkit, shell history, and AI-assisted attack planning via Cursor. Victimology spans Manufacturing, Agriculture, Finance, Transportation, Retail, Technology, and Healthcare in the US and Germany. The playbook includes Active Directory compromise, ADCS exploitation, CVE-2017-0144 (EternalBlue) propagation, an Aurora encryptor written in Zig, and ESXi hypervisor encryption — with recovered keys exposing ransom negotiations and cryptocurrency laundering flows.
Collectively: initial access is cheap and creative (package registries, LNK phishing), commodity RATs and surveillance implants ride legitimate services for C2 (Telegram, Google Sheets, DoH), and ransomware affiliates operate with corporate-grade discipline — including AI tooling. Assume any one of these vectors is live against your estate.
Threat Actor / Malware Profile
pepesoft.exe — NuGet Game-Cheat Implant
- Distribution: Malicious NuGet .NET tool packages disguised as game cheats/utilities; supply-chain compromise of developer and gamer machines alike.
- Payload behavior: First stage resolves C2 via DNS-over-HTTPS; requests UAC elevation masquerading as a system-time resync; downloads and executes the PyInstaller second stage (pepesoft.exe).
- C2: Telegram bot command channel; Google Sheets used as a telemetry/exfiltration sink — blending with sanctioned SaaS traffic.
- Collection: Screenshot capture and exfiltration, hardware fingerprinting (host enumeration).
- Anti-analysis/evasion: DoH bypasses DNS-layer inspection; PyInstaller packing hinders static triage; abuse of trusted cloud services defeats domain reputation controls.
XenoRAT — Kimsuky July 2026 Wave
- Distribution: Spear-phishing with weaponized LNK files targeting South Korean organizations.
- Execution chain: LNK → PowerShell and/or AutoIt scripts →
curl.exedownloads → DLL side-loading for final payload execution. - C2 / staging: Abuse of GitHub, Google Drive, and Dropbox for payload hosting and retrieval.
- Capability: Keylogging, credential theft, host surveillance, remote command execution.
- Persistence/evasion: DLL side-loading against legitimate signed binaries; living-off-the-land binaries (powershell.exe, curl.exe) to minimize dropped artifacts.
Aurora Ransomware (affiliate operation)
- Intrusion tradecraft: Active Directory compromise with ADCS exploitation for privilege escalation; lateral movement via CVE-2017-0144 (EternalBlue/SMBv1).
- Payload: Aurora encryptor written in Zig; targets Windows hosts and ESXi hypervisors for mass VM encryption.
- Operational maturity: Leaked shell history and Cursor AI-assisted attack planning; structured ransom negotiation and cryptocurrency laundering pipelines; dedicated .onion negotiation infrastructure (
ijexszhscln27nl263lmcd7tx3jttkhm4wjhd4e3y6r4csdbfyeprvid.onion).
IOC Analysis
The indicator set spans three operationalization categories:
| Type | Source Pulse | SOC Action |
|---|---|---|
| FileHash-SHA256 (8) | NuGet / pepesoft.exe | Push to EDR blocklists and custom AV indicators; retro-hunt file creation events; flag any PyInstaller-built binary matching hashes |
| FileHash-MD5 (5) | Kimsuky XenoRAT | Load into sandbox detonation queue for config extraction (C2, mutexes); MD5 collision risk means pair with behavioral detections |
| Domain (.onion, 1) | Aurora ransomware | Block Tor egress at the perimeter; alert on any internal DNS/proxy attempts to resolve or reach Tor infrastructure; monitor for leaked-credential chatter referencing the negotiation portal |
Tooling guidance:
- Hash indicators → Microsoft Defender for Endpoint custom indicators / CrowdStrike / SentinelOne blocklists.
- MD5 samples → detonate in ANY.RUN, Joe Sandbox, or Cuckoo to recover XenoRAT C2 configs and update network detections.
- The .onion → threat intel platforms (Recorded Future, MISP) for enrichment; correlate with ransom-payment crypto wallet monitoring.
- Hash-only pulses have short half-lives: prioritize behavioral detections (DoH abuse, LNK→script chains, ESXi shutdown commands) below.
Detection Engineering
---
title: Suspicious DNS-over-HTTPS Usage and pepesoft Implant Execution
id: 7f3a1b2e-4c5d-4e6f-9a8b-1c2d3e4f5a01
status: experimental
description: Detects pepesoft.exe NuGet supply-chain implant execution, PyInstaller child process behavior, and DNS-over-HTTPS evasion to public DoH resolvers (dns.google, cloudflare-dns.com) consistent with OTX pulse of malicious NuGet game-cheat tools.
author: Security Arsenal Threat Intelligence
references:
- https://socket.dev/blog/11-malicious-nuget-tools-pose-as-game-cheats
date: 2026/08/28
tags:
- attack.command_and_control
- attack.t1071.001
- attack.t1105
- attack.t1059
logsource:
category: process_creation
product: windows
detection:
selection_pepe:
Image|endswith: '\pepesoft.exe'
selection_nuget_child:
ParentImage|endswith:
- '\dotnet.exe'
- '\nuget.exe'
Image|endswith:
- '\powershell.exe'
- '\curl.exe'
- '\cmd.exe'
selection_doh:
CommandLine|contains:
- 'dns.google'
- 'cloudflare-dns.com'
- 'dns-query'
- 'application/dns-message'
condition: 1 of selection_*
falsepositives:
- Legitimate developer tooling invoking package managers; browsers with DoH enabled
level: high
---
title: Kimsuky XenoRAT LNK Spear-Phishing Execution Chain
id: 8b4c2d3f-5e6f-4a7b-8c9d-2e3f4a5b6c02
status: experimental
description: Detects LNK files spawning PowerShell, curl.exe, or AutoIt payloads and subsequent DLL side-loading, matching Kimsuky July 2026 XenoRAT spear-phishing tradecraft reported by AhnLab.
author: Security Arsenal Threat Intelligence
references:
- https://asec.ahnlab.com/en/95171
date: 2026/08/28
tags:
- attack.initial_access
- attack.t1566.001
- attack.t1204.002
- attack.t1218
- attack.t1574.002
logsource:
category: process_creation
product: windows
detection:
selection_lnk_parent:
ParentImage|endswith: '\explorer.exe'
CommandLine|contains: '.lnk'
selection_child:
Image|endswith:
- '\powershell.exe'
- '\pwsh.exe'
- '\curl.exe'
- '\mshta.exe'
- '\rundll32.exe'
selection_download_cradle:
CommandLine|contains:
- 'http://'
- 'https://'
- 'github.com'
- 'drive.google.com'
- 'dropbox.com'
condition: selection_lnk_parent and selection_child and selection_download_cradle
falsepositives:
- Enterprise software deployment shortcuts
level: high
---
title: Aurora Ransomware ESXi Encryption and AD Pre-Encryption Staging
id: 9d5e3f4a-6b7c-4d8e-9f0a-3b4c5d6e7f03
status: experimental
description: Detects Aurora ransomware affiliate behaviors including ESXi VM mass shutdown prior to encryption, SMBv1/EternalBlue-era lateral movement (CVE-2017-0144), vssadmin shadow deletion, and suspicious Zig-compiled encryptor execution patterns.
author: Security Arsenal Threat Intelligence
references:
- https://www.cloudsek.com/blog/aurora-ransomware-affiliate-ai-attack-planning-crypto-payments
date: 2026/08/28
tags:
- attack.impact
- attack.t1486
- attack.t1490
- attack.t1210
logsource:
category: process_creation
product: windows
detection:
selection_shadow_delete:
Image|endswith:
- '\vssadmin.exe'
- '\wmic.exe'
- '\bcdedit.exe'
CommandLine|contains:
- 'delete shadows'
- 'shadowcopy delete'
- 'recoveryenabled no'
selection_esxi_staging:
CommandLine|contains:
- 'vim-cmd vmsvc/power.off'
- 'esxcli vm process kill'
selection_smbv1_probe:
CommandLine|contains:
- 'EnableSMB1Protocol'
- 'mrxsmb10'
condition: 1 of selection_*
falsepositives:
- Legitimate hypervisor administration; backup maintenance windows
level: critical
// Kimsuky XenoRAT LNK phishing + pepesoft DoH surveillance + Aurora staging — unified hunt
let DoHResolvers = dynamic(["dns.google", "cloudflare-dns.com", "mozilla.cloudflare-dns.com", "doh.opendns.com"]);
let KnownHashes = dynamic([
"d5385526f2f3e52c7d96087611c6cd4e479bf61828400efdb3ca09406d981609",
"9a2091e6625fc11cfd8f39c17aa271604e66322ee045028946274b988103e35b",
"900ddb81d27e03967209fee4d17d13deb68eef0e1f10936eb520ca10575cb49e",
"ab58a90eb3682c6dc3389cd700a64f68a19c0dac3d0fa8e3df97ae041f96d4e1",
"e6e1049158ceb1971c61388349c81fa6047a7aecb4ff2089ef54a50dcc35dbc0",
"d9f7ca9f93a7d188d51db308877b15d0beae932ca0bf4705384fbedf54b454c1",
"4d13f1136b13c871c65141b77ec7208488334ac4be511800196adcd328666305",
"011926de3d0cc2b970627b9bf0de003e731f8576602dff756d2ab54a9de61972",
"a4af136d159a8eb96b54924fa80355ca52874913301300f55af7d67ae97edcfe",
"eb0aab1e892d7e09e2c7bcf1d21fd83c1743ed9196b3efac6c78482fb0d99207"
]);
union isfuzzy=true
(DeviceProcessEvents
| where TimeGenerated > ago(7d)
| where FileName =~ "pepesoft.exe"
or SHA256 in~ (KnownHashes)
or (ProcessCommandLine has_any (DoHResolvers) or ProcessCommandLine has "dns-query")
or (InitiatingProcessFileName =~ "explorer.exe" and ProcessCommandLine has ".lnk" and FileName in~ ("powershell.exe","curl.exe","mshta.exe","rundll32.exe"))
or (ProcessCommandLine has_any ("delete shadows","vim-cmd vmsvc/power.off","recoveryenabled no"))
| project TimeGenerated, DeviceName, FileName, ProcessCommandLine, InitiatingProcessFileName, SHA256, AccountName),
(DeviceNetworkEvents
| where TimeGenerated > ago(7d)
| where RemoteUrl has_any (DoHResolvers)
or RemoteUrl has "api.telegram.org"
or RemoteUrl has "sheets.googleapis.com" and InitiatingProcessFileName !in~ ("chrome.exe","msedge.exe","firefox.exe")
| project TimeGenerated, DeviceName, InitiatingProcessFileName, RemoteUrl, RemoteIP, RemotePort)
| sort by TimeGenerated desc
# OTX Pulse Hunt — pepesoft / XenoRAT / Aurora host artifacts
# Run elevated on endpoints; output JSON for SIEM ingestion
$ErrorActionPreference = 'SilentlyContinue'
$results = @()
# 1. pepesoft.exe and NuGet-tool implant artifacts
$pepePaths = @("$env:TEMP\pepesoft.exe","$env:APPDATA\pepesoft.exe","$env:USERPROFILE\.dotnet\tools","$env:LOCALAPPDATA\Programs")
foreach ($p in $pepePaths) {
Get-ChildItem -Path $p -Recurse -Filter "pepesoft.exe" -Force | ForEach-Object {
$results += [PSCustomObject]@{Check='PepeSoftBinary'; Path=$_.FullName; SHA256=(Get-FileHash $_.FullName -Algorithm SHA256).Hash}
}
}
# 2. Known-bad SHA256 sweep in common staging dirs
$badHashes = @("d5385526f2f3e52c7d96087611c6cd4e479bf61828400efdb3ca09406d981609","9a2091e6625fc11cfd8f39c17aa271604e66322ee045028946274b988103e35b","a4af136d159a8eb96b54924fa80355ca52874913301300f55af7d67ae97edcfe","eb0aab1e892d7e09e2c7bcf1d21fd83c1743ed9196b3efac6c78482fb0d99207")
Get-ChildItem "$env:TEMP","$env:APPDATA","$env:USERPROFILE\Downloads" -Recurse -Include *.exe,*.dll -Force | ForEach-Object {
$h = (Get-FileHash $_.FullName -Algorithm SHA256).Hash
if ($badHashes -contains $h) { $results += [PSCustomObject]@{Check='KnownBadHash'; Path=$_.FullName; SHA256=$h} }
}
# 3. XenoRAT persistence: Run keys, scheduled tasks with suspicious LOLBins
$runKeys = @("HKCU:\Software\Microsoft\Windows\CurrentVersion\Run","HKLM:\Software\Microsoft\Windows\CurrentVersion\Run")
foreach ($k in $runKeys) {
(Get-ItemProperty $k).PSObject.Properties | Where-Object { $_.Value -match 'powershell|curl|mshta|rundll32|\.lnk' } | ForEach-Object {
$results += [PSCustomObject]@{Check='SuspiciousRunKey'; Key=$k; Name=$_.Name; Value=$_.Value}
}
}
Get-ScheduledTask | Where-Object { $_.Actions.Execute -match 'powershell|curl|mshta' -and $_.TaskPath -notmatch 'Microsoft' } | ForEach-Object {
$results += [PSCustomObject]@{Check='SuspiciousScheduledTask'; Name=$_.TaskName; Action=$_.Actions.Execute}
}
# 4. Recent LNK execution artifacts (Kimsuky delivery vector)
Get-ChildItem "$env:APPDATA\Microsoft\Windows\Recent" -Filter *.lnk -Force | Where-Object { $_.LastWriteTime -gt (Get-Date).AddDays(-7) } | ForEach-Object {
$results += [PSCustomObject]@{Check='RecentLNK'; Path=$_.FullName; LastWrite=$_.LastWriteTime}
}
# 5. Network: Telegram C2, DoH resolvers, Google Sheets exfil
Get-NetTCPConnection -State Established | Where-Object { $_.RemotePort -in 443,853 } | ForEach-Object {
$proc = (Get-Process -Id $_.OwningProcess).ProcessName
if ($proc -match 'pepesoft|python|dotnet|autoit') {
$results += [PSCustomObject]@{Check='SuspiciousEgress'; Process=$proc; Remote=$_.RemoteAddress; Port=$_.RemotePort}
}
}
# 6. Aurora staging: SMBv1 enabled + shadow copy status
$smb1 = (Get-WindowsOptionalFeature -Online -FeatureName SMB1Protocol).State
if ($smb1 -eq 'Enabled') { $results += [PSCustomObject]@{Check='SMBv1Enabled'; State=$smb1} }
$shadows = (vssadmin list shadows 2>$null)
if (-not $shadows -match 'shadow copies') { $results += [PSCustomObject]@{Check='NoShadowCopies'; Note='Possible pre-encryption deletion'} }
$results | ConvertTo-Json -Depth 4
Response Priorities
Immediate (0–4 hours)
- Push all 8 SHA256 hashes and 5 MD5 hashes to EDR/AV blocklists; trigger retro-hunts across 30 days of file telemetry.
- Block Tor egress and alert on any resolution attempts tied to
ijexszhscln27nl263lmcd7tx3jttkhm4wjhd4e3y6r4csdbfyeprvid.onion. - Hunt for pepesoft.exe execution, unexpected DoH traffic from non-browser processes, and LNK→PowerShell/curl chains using the KQL above.
- Inventory endpoints with NuGet/.NET tool installations and audit for the malicious game-cheat packages.
24 Hours
- XenoRAT is credential-stealing and keylogging capable: force password resets and MFA re-verification for any user on a host with confirmed XenoRAT or pepesoft telemetry; revoke active sessions and refresh tokens.
- Audit Telegram and Google Sheets egress for non-standard process lineage — screenshot exfil and bot-controlled implants rely on these channels.
- Detonate the MD5 samples in a sandbox to extract XenoRAT C2 infrastructure and add network-layer detections.
- Verify ESXi hosts are not exposing management interfaces and confirm no unauthorized
vim-cmd/esxcliactivity.
1 Week
- Disable SMBv1 estate-wide and validate EternalBlue (MS17-010 / CVE-2017-0144) patch compliance — the Aurora affiliate still relies on it.
- Harden ADCS against ESC1–ESC8 abuse paths; audit certificate templates and enrollment permissions.
- Implement application control (WDAC/AppLocker) blocking unsigned PyInstaller binaries and LNK execution from user-writable paths; restrict
curl.exeand script interpreters to approved use cases. - Enforce package-registry policy: require allow-listed NuGet sources and signature verification for .NET tool installation in developer environments.
- Test immutable backups and hypervisor-layer recovery for ESXi — the Aurora playbook ends with VM encryption at scale.
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.