Three concurrent OTX pulses, all modified within the last 48 hours, collectively paint a picture of a criminal tooling ecosystem that has matured past DNS-dependent infrastructure and is now leaning heavily on trusted-channel abuse: legitimate remote access tooling, collaboration platforms, and raw IP communication.
Pulse 1 — Direct-to-IP (D2IP) at scale. Analysis of 4 million dynamic malware reports confirms that 45.32% of malware samples with C2 activity bypass DNS entirely, connecting straight to hard-coded IP addresses. D2IP accounts for 23.17% of all C2 connection attempts. This behavior spans Phorpiex (ransomware dropper), Mozi and Mirai (IoT botnets), SectopRAT, and Boatnet — meaning DNS-sinkhole and DNS-filter-centric defenses have a structural blind spot covering nearly half of observed C2 traffic. Education, government, and transportation verticals are named targets.
Pulse 2 — Worm-like ScreenConnect propagation. Multiple unrelated organizations were hit by attacks beginning with social engineering, leading to rogue ScreenConnect RMM installations. The chain executes four sequential VBScript payloads (1.vbs → 4.vbs) that profile the host, enumerate installed security products, establish persistence, and ultimately deploy XMRig cryptocurrency miners. Modified ScreenConnect clients exhibit worm-like self-propagation across unrelated hosts — a significant escalation from typical RMM abuse. C2 resolves to homehub.opik.net:443 and IPv4 45.13.237.190.
Pulse 3 — Microsoft Teams help desk weaponization. Threat actors are impersonating internal IT help desks over Microsoft Teams voice calls, socially engineering users into granting remote access or executing payloads, then moving laterally across the network. Eight IPv4 indicators (e.g., 5.181.3.106, 178.130.47.46, 80.66.72.215) represent the supporting infrastructure.
Synthesis: The common thread is detection-surface evasion. Whether bypassing DNS via D2IP, hiding behind signed legitimate RMM binaries, or abusing an authorized collaboration platform for initial access, these campaigns deliberately operate where perimeter and DNS-layer controls do not inspect. Attribution across all three pulses is currently Unknown, consistent with commodity-criminal or initial-access-broker (IAB) tooling rather than a single named APT.
Threat Actor / Malware Profile
Phorpiex / Mozi / Mirai / SectopRAT / Boatnet (D2IP Cluster)
- Distribution: Phorpiex historically propagates via malspam and P2P worm behavior, acting as a dropper for ransomware and spam modules. Mirai/Mozi/Boatnet target IoT and edge devices via default credentials and known exploits. SectopRAT spreads via malicious browser extensions and cracked software.
- Payload behavior: Hard-coded C2 IPv4 addresses embedded in the binary or config — no domain lookup occurs. This defeats DNS sinkholes, DNS firewalls, and domain-reputation scoring.
- C2 communication: Raw TCP/UDP direct to IP, frequently on non-standard ports. D2IP represents 23.17% of all observed C2 attempts — a volume far too large to dismiss as noise.
- Persistence: Phorpiex uses registry Run keys and disables Windows Defender components; Mirai/Mozi persist on device flash or reinfect via scanning.
- Anti-analysis: DNS bypass is itself the evasion — sandboxes and SOC tooling that key on domain telemetry simply never see the callback.
Rogue ScreenConnect + XMRig Chain
- Distribution: Social engineering lures (vishing/malvertising-style pretexts) trick users into installing a modified, attacker-controlled ScreenConnect client.
- Payload behavior: Sequential VBScript staging —
1.vbsprofiles the system,2.vbsenumerates installed AV/EDR products,3.vbsestablishes persistence,4.vbspulls additional tooling. Final-stage payload is XMRig Monero mining. - C2 communication: ScreenConnect relay traffic to
homehub.opik.net:443and45.13.237.190, masquerading as legitimate RMM session traffic. - Persistence: ScreenConnect installs as a Windows service (attacker-configured instance name), providing durable SYSTEM-level access independent of the miner payload.
- Anti-analysis: VBScript security-product enumeration enables conditional execution — payloads can abort or alter behavior when EDR is detected. The worm-like spread across unrelated hosts suggests credential reuse or automated internal scanning via the RMM itself.
Teams Help Desk Impersonation
- Distribution: External Teams chat/voice calls spoofing internal IT support display names, requesting screen-share or remote-control sessions and credential disclosure.
- Objective: Initial access and lateral movement; the eight IPv4 IOCs likely represent proxy/VPN egress or post-access C2 used after the human-layer compromise.
IOC Analysis
The indicator set breaks into three operational classes:
File hashes (MD5/SHA1/SHA256 — bulk of the D2IP pulse): The SHA256 values (9639f7eb..., e3513922..., 01a96eea..., bf242774...) and legacy MD5/SHA1 pairs are dynamic-analysis sample hashes for Phorpiex/Mozi/SectopRAT-family binaries. Operationalize via EDR blocklists and retro-hunts. Note: hash-based detection has a short shelf life against repacked commodity malware — pair every hash block with the behavioral rules in the Detection Engineering section.
IPv4 indicators (ScreenConnect + Teams pulses): 45.13.237.190 (ScreenConnect relay), plus the Teams-campaign octet (5.181.3.106, 178.130.47.46, 80.66.72.215, 185.155.99.161, 45.8.157.185, 2.56.172.214, 185.234.67.53, 136.0.20.6). These are the highest-value indicators here because the D2IP trend means network-layer egress blocking is now the control of last resort. Push to perimeter firewall deny lists, EDR network protection policies, and proxy blocks. Retro-hunt 90 days of NetFlow/firewall logs.
URL/domain indicators: http://homehub.opik.net:443 — a DDNS-style hostname fronting the rogue ScreenConnect relay. Block at DNS and resolve-and-block at IP layer; treat any historical resolution as a compromise signal.
Tooling guidance: Enrich hashes via OTX pulsing, VirusTotal, and MalwareBazaar. NetFlow/Zeek/Suricata will surface D2IP C2 that DNS tooling cannot. For ScreenConnect, inventory all installed instances via software inventory (the legitimate tool is rarely sanctioned everywhere — unauthorized installs are inherently suspicious).
Detection Engineering
---
title: Direct-to-IP C2 Communication Without Prior DNS Query
id: 7d3f1a2e-9b4c-4e8a-a1f5-2c6d8e9f0a1b
status: experimental
description: Detects outbound network connections to external IPs by suspicious processes where no corresponding DNS resolution occurred, consistent with D2IP C2 behavior observed in Phorpiex, Mozi, Mirai, SectopRAT and Boatnet samples (45.32% of C2-active malware per OTX pulse).
author: Security Arsenal Threat Intelligence
date: 2026/09/03
references:
- https://unit42.paloaltonetworks.com/malware-bypass-dns-direct-to-ip/
logsource:
category: network_connection
product: windows
detection:
selection_initiated:
Initiated: 'true'
selection_external:
DestinationIp|cidr:
- '0.0.0.0/0'
filter_private:
DestinationIp|cidr:
- '10.0.0.0/8'
- '172.16.0.0/12'
- '192.168.0.0/16'
- '127.0.0.0/8'
- '169.254.0.0/16'
filter_known_good_ports:
DestinationPort:
- 123
filter_browsers_updaters:
Image|endswith:
- '\chrome.exe'
- '\msedge.exe'
- '\firefox.exe'
- '\svchost.exe'
condition: selection_initiated and selection_external and not filter_private and not filter_known_good_ports and not filter_browsers_updaters
falsepositives:
- Applications with hard-coded update servers
- Internal monitoring agents using IP-based beacons
level: high
tags:
- attack.command_and_control
- attack.t1071
- attack.t1572
---
title: Rogue ScreenConnect Installation and VBScript Staging Chain
id: 8e4a2b3f-0c5d-5f9b-b2a6-3d7e9f0a1b2c
status: experimental
description: Detects execution of sequential numbered VBScript payloads (1.vbs-4.vbs) and unauthorized ScreenConnect client installation, matching the worm-like RMM abuse campaign deploying XMRig miners via social engineering.
author: Security Arsenal Threat Intelligence
date: 2026/09/03
references:
- https://www.huntress.com/blog/rogue-screenconnect-installations
logsource:
category: process_creation
product: windows
detection:
selection_vbs_staging:
ParentImage|endswith:
- '\wscript.exe'
- '\cscript.exe'
CommandLine|contains:
- '1.vbs'
- '2.vbs'
- '3.vbs'
- '4.vbs'
selection_screenconnect_child:
ParentImage|contains:
- 'ScreenConnect.ClientService.exe'
- 'ScreenConnect.WindowsClient.exe'
Image|endswith:
- '\cmd.exe'
- '\powershell.exe'
- '\wscript.exe'
- '\cscript.exe'
- '\msiexec.exe'
condition: 1 of selection_*
falsepositives:
- Legitimate help desk scripted remediation via sanctioned RMM (verify authorized ScreenConnect instances first)
level: critical
tags:
- attack.command_and_control
- attack.t1219
- attack.execution
- attack.t1059.005
- attack.impact
- attack.t1496
---
title: ScreenConnect Service Persistence with Suspicious Instance Name
id: 9f5b3c4a-1d6e-6a0c-c3b7-4e8f0a1b2c3d
status: experimental
description: Detects creation of ScreenConnect Windows services with non-standard or obfuscated instance names, a persistence mechanism used in rogue RMM worm campaigns alongside VBScript loaders.
author: Security Arsenal Threat Intelligence
date: 2026/09/03
logsource:
product: windows
service: system
definition: Event ID 7045 - A service was installed in the system
detection:
selection:
EventID: 7045
ServiceName|contains:
- 'ScreenConnect'
filter_authorized:
ServiceName|contains:
- 'ScreenConnect Client (YOUR-AUTHORIZED-INSTANCE-ID)'
condition: selection and not filter_authorized
falsepositives:
- Sanctioned IT/helpdesk ScreenConnect deployments (maintain authorized instance name in filter)
level: high
tags:
- attack.persistence
- attack.t1543.003
- attack.command_and_control
- attack.t1219
// Hunt: D2IP C2, rogue ScreenConnect activity, and Teams-campaign infrastructure
// Sentinel tables: DeviceNetworkEvents, DeviceProcessEvents, DeviceEvents
let CampaignIPs = dynamic(["45.13.237.190","5.181.3.106","178.130.47.46","80.66.72.215","185.155.99.161","45.8.157.185","2.56.172.214","185.234.67.53","136.0.20.6"]);
let D2IPWindow = 7d;
// Part 1: Direct hits on known campaign infrastructure
let KnownBadNet = DeviceNetworkEvents
| where TimeGenerated > ago(D2IPWindow)
| where RemoteIP in (CampaignIPs) or RemoteUrl contains "homehub.opik.net"
| project TimeGenerated, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, RemoteIP, RemotePort, RemoteUrl
| extend HuntType = "Known IOC Network Hit";
// Part 2: Rogue ScreenConnect execution + VBScript staging chain
let ScreenConnectChain = DeviceProcessEvents
| where TimeGenerated > ago(D2IPWindow)
| where (ProcessCommandLine has_any ("1.vbs","2.vbs","3.vbs","4.vbs") and FileName in~ ("wscript.exe","cscript.exe"))
or (InitiatingProcessFileName has "ScreenConnect" and FileName in~ ("cmd.exe","powershell.exe","wscript.exe","msiexec.exe"))
| project TimeGenerated, DeviceName, FileName, ProcessCommandLine, InitiatingProcessFileName, InitiatingProcessCommandLine, SHA256
| extend HuntType = "Rogue RMM / VBS Staging";
// Part 3: D2IP behavior - outbound connections from processes with NO prior DNS query for that destination
let NoDnsProcesses = DeviceNetworkEvents
| where TimeGenerated > ago(D2IPWindow)
| where RemoteIPType == "Public" and ActionType == "ConnectionSuccess"
| where isempty(RemoteUrl)
| where InitiatingProcessFileName !in~ ("chrome.exe","msedge.exe","firefox.exe","svchost.exe","msmpeng.exe")
| summarize Connections = count(), DistinctIPs = dcount(RemoteIP), IPs = make_set(RemoteIP, 10)
by DeviceName, InitiatingProcessFileName, InitiatingProcessSHA256
| extend HuntType = "D2IP Pattern (No DNS Resolution)";
KnownBadNet
| union ScreenConnectChain
| union (NoDnsProcesses | where DistinctIPs > 3)
| sort by TimeGenerated desc
# Security Arsenal - IOC & Artifact Hunt: D2IP / Rogue ScreenConnect / Teams Campaign
# Run elevated. Outputs CSV findings per host.
$ErrorActionPreference = 'SilentlyContinue'
$Findings = @()
# --- Known campaign IPs (ScreenConnect + Teams help desk campaigns) ---
$CampaignIPs = @("45.13.237.190","5.181.3.106","178.130.47.46","80.66.72.215",
"185.155.99.161","45.8.157.185","2.56.172.214","185.234.67.53","136.0.20.6")
# 1. Active & historical network connections to campaign IPs
Get-NetTCPConnection | Where-Object { $CampaignIPs -contains $_.RemoteAddress } | ForEach-Object {
$Findings += [pscustomobject]@{ Type="ActiveConn-CampaignIP"; Detail="$($_.LocalAddress):$($_.LocalPort) -> $($_.RemoteAddress):$($_.RemotePort) (PID $($_.OwningProcess))"; Severity="CRITICAL" }
}
$dnsCache = Get-DnsClientCache | Where-Object { $_.Entry -like "*opik.net*" -or $_.Data -in $CampaignIPs }
foreach ($d in $dnsCache) { $Findings += [pscustomobject]@{ Type="DNSCache-IOC"; Detail="$($d.Entry) -> $($d.Data)"; Severity="HIGH" } }
# 2. Rogue ScreenConnect services (persistence) - flag ANY instance, verify against authorized list
$AuthorizedSC = "ScreenConnect Client (YOUR-AUTHORIZED-INSTANCE-ID)"
Get-CimInstance Win32_Service | Where-Object { $_.Name -like "ScreenConnect*" -and $_.Name -ne $AuthorizedSC } | ForEach-Object {
$Findings += [pscustomobject]@{ Type="Rogue-ScreenConnect-Service"; Detail="$($_.Name) | $($_.PathName) | State=$($_.State)"; Severity="CRITICAL" }
}
# 3. VBScript staging artifacts in temp/user dirs (1.vbs-4.vbs chain)
$SearchPaths = @("$env:TEMP","$env:APPDATA","$env:LOCALAPPDATA","$env:PUBLIC","C:\ProgramData")
foreach ($p in $SearchPaths) {
Get-ChildItem -Path $p -Recurse -Include "1.vbs","2.vbs","3.vbs","4.vbs" -ErrorAction SilentlyContinue | ForEach-Object {
$Findings += [pscustomobject]@{ Type="VBS-Staging-Artifact"; Detail="$($_.FullName) | Modified=$($_.LastWriteTime)"; Severity="HIGH" }
}
}
# 4. XMRig artifacts - common miner process names, install paths, and Run-key persistence
$MinerNames = @("xmrig.exe","xmrig-notls.exe","miner.exe","system64.exe")
Get-Process | Where-Object { $MinerNames -contains $_.ProcessName + ".exe" -or $_.ProcessName -like "*xmrig*" } | ForEach-Object {
$Findings += [pscustomobject]@{ Type="XMRig-Process"; Detail="$($_.ProcessName) | Path=$($_.Path) | PID=$($_.Id)"; Severity="CRITICAL" }
}
$RunKeys = @("HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run",
"HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run")
foreach ($rk in $RunKeys) {
(Get-ItemProperty $rk).PSObject.Properties | Where-Object { $_.Value -match "xmrig|miner|\.vbs|screenconnect" } | ForEach-Object {
$Findings += [pscustomobject]@{ Type="Suspicious-RunKey"; Detail="$rk | $($_.Name) = $($_.Value)"; Severity="HIGH" }
}
}
# 5. Scheduled tasks referencing VBS loaders or miner paths
Get-ScheduledTask | Where-Object { ($_.Actions.Execute + $_.Actions.Arguments) -match "\.vbs|xmrig|wscript.*temp|screenconnect" } | ForEach-Object {
$Findings += [pscustomobject]@{ Type="Suspicious-ScheduledTask"; Detail="$($_.TaskName) | $($_.Actions.Execute) $($_.Actions.Arguments)"; Severity="HIGH" }
}
# 6. Sample hashes from D2IP pulse - scan common staging dirs
$BadHashes = @("9639f7ebc6a6d69d7bf5b8bc869e7783a1406088f192868624ad8919e9bfd1d4",
"e3513922666c202c1ae5c06eea277ba10477868d6d89ce2819f4f8ff9070bc85",
"01a96eeafb72042b3f69afd21b4c9155dbfe7f97ab3dca392972ad531a075ac2",
"bf24277400cc453d530e4277d3bd24e96c5e409adef6970518bdc59205aa0241")
foreach ($p in $SearchPaths) {
Get-ChildItem -Path $p -Recurse -File -Include *.exe,*.dll,*.vbs,*.ps1 -ErrorAction SilentlyContinue | ForEach-Object {
$h = (Get-FileHash $_.FullName -Algorithm SHA256).Hash.ToLower()
if ($BadHashes -contains $h) { $Findings += [pscustomobject]@{ Type="Known-Malware-Hash"; Detail="$($_.FullName) | $h"; Severity="CRITICAL" } }
}
}
# --- Output ---
$Findings | Sort-Object Severity | Format-Table -AutoSize
$Findings | Export-Csv -Path ".\OTX-Hunt-Findings-$(Get-Date -Format 'yyyyMMdd-HHmm').csv" -NoTypeInformation
if (-not $Findings) { Write-Host "[+] No indicators found on this host." -ForegroundColor Green }
Response Priorities
Immediate (0-4 hours)
- Block all nine IPv4 indicators (
45.13.237.190,5.181.3.106,178.130.47.46,80.66.72.215,185.155.99.161,45.8.157.185,2.56.172.214,185.234.67.53,136.0.20.6) at perimeter firewall, proxy, and EDR network protection layers. - Block and sinkhole
homehub.opik.netat DNS and add IP-layer blocking for its resolutions — remember the D2IP finding: DNS controls alone are insufficient. - Push the SHA256/MD5/SHA1 hashes from the D2IP pulse into EDR block lists and trigger retro-hunts across the full telemetry retention window.
- Inventory every ScreenConnect instance in the environment. Any instance not matching your authorized, IT-managed deployment is treated as rogue until proven otherwise — isolate the host immediately.
- Run the PowerShell hunt script on any host that recently received IT-helpdesk contact via Teams.
24 Hours
- Force password resets for any user who engaged with a Teams help desk contact or installed software at the direction of an unsolicited support call — the Teams campaign and ScreenConnect chain both imply credential exposure and token theft potential.
- Review Entra ID / IdP sign-in logs for anomalous sessions (new device, impossible travel, token replay) tied to those users; revoke active refresh tokens.
- Confirm MFA enforcement on RMM consoles and disable inbound external Teams calls/chats from non-federated tenants, or restrict to an allowlist.
- Deploy the Sigma and KQL detections to production; validate with a purple-team replay of the 1.vbs→4.vbs staging chain.
1 Week
- Close the D2IP architectural gap: since 45% of C2 skips DNS, egress filtering must shift to default-deny outbound with destination-IP reputation and protocol inspection (TLS fingerprinting/JA3 where feasible). DNS-layer controls alone now cover a minority of C2 channels.
- RMM governance: implement application control (WDAC/AppLocker) allowing only sanctioned remote-access tools; alert on any new RMM service installation (Event ID 7045) environment-wide.
- Harden education, government, and transportation-facing assets per the D2IP pulse's named targeting: patch IoT/edge devices, disable Telnet, rotate default credentials (Mirai/Mozi/Boatnet vectors).
- Run a help-desk-verification awareness campaign: establish and communicate an out-of-band verification procedure (callback to a known internal number) for all IT-support contact, including Teams calls.
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.