Back to Intelligence

DPRK Hangro VPN Infrastructure + Hotejka Help TDS: OTX Pulse Analysis — Certificate Anomalies, Tech Support Scam Delivery & Enterprise Detection Pack

SA
Security Arsenal Team
October 21, 2026
9 min read

Threat Summary

Two concurrent OTX pulses illuminate opposite ends of the state-sponsored and crimeware spectrum — and both demand enterprise attention.

Pulse 1 — DPRK Hangro Infrastructure (Revisited): A deep technical investigation into Hangro, North Korea's state-operated VPN and mail relay product, reveals a significant infrastructure refresh. Hangro services operate from servers in Pyongyang and the Russian Far East, with six newly identified network assignments sitting inside Chinese address space — a classic DPRK cross-border obfuscation pattern. Most critically, a new certificate hierarchy deployed in July 2026 differs materially from the 2024 baseline, and both hierarchies contain cryptographic anomalies where signatures fail verification. Invalid or self-inconsistent certificate chains on state infrastructure are a hallmark of hand-rolled PKI — and a detection gift for defenders. Hostnames tied to silibank (mail.silibank.net.kp, mail.silibank.com) and smtp.star-co.net.kp confirm Hangro's dual role as mail relay and VPN concentrator, with SoftEther in the stack. Enterprises should treat any observed TLS session or DNS resolution touching this infrastructure as a high-fidelity DPRK signal.

Pulse 2 — Hotejka / Help TDS: Infoblox's analysis exposes the Help Traffic Distribution System (TDS), operated since April 2017 by the Russian-language affiliate program Hotejka — assessed as a rebrand of ROI777. The operation monetizes tech support scams at scale: victims in the US, Australia, Belgium, Canada, France, Japan, and Sweden are funneled through compromised websites, malvertising, social media, and spam into fake Microsoft security alerts that lock the browser. The endgame payload is UltraViewer — a legitimate remote access tool (RAT-by-abuse) that scammers coerce victims into installing, granting full interactive control of the endpoint. The TDS uses browser fingerprinting and geolocation for selective targeting and abuses Cloudflare Pages for resilient, low-cost scam hosting. Predictive DNS detection is effective because Hotejka registers infrastructure in bulk, trackable clusters (roi-traffic.icu, hotejka.ink, fosetya.shop, goalods.lol, hotcname.help).

Collective picture: DPRK is hardening state VPN/mail infrastructure with anomalous PKI across Russian Far East and Chinese address space, while Russian-speaking crimeware affiliates industrialize RAT-based social engineering through TDS infrastructure. Both rely on victims' or defenders' blind spots in DNS, TLS validation, and remote-access-tool governance.

Threat Actor / Malware Profile

Hangro (DPRK State Infrastructure)

  • Nature: State VPN and mail relay product serving DPRK government and financial entities (silibank linkage).
  • Distribution: Not victim-side malware — this is adversary infrastructure. Exposure occurs when DPRK operators traverse Hangro endpoints or when tooling misconfigurations leak hostnames (ps.ppokkugi.com).
  • C2 / Communications: SoftEther-based VPN tunneling; SMTP relay over star-co.net.kp; TLS sessions presenting the July 2026 certificate hierarchy with signatures that fail verification.
  • Persistence / Anti-Analysis: Cross-border hosting (Pyongyang + Russian Far East + Chinese netblocks), rotating certificate hierarchies, and infrastructure compartmentalization by function (mail vs. VPN vs. C2 staging).

Hotejka / Help TDS → UltraViewer

  • Distribution: Malvertising, compromised sites, social media lures, spam → TDS redirect chain → fake Microsoft alert browser-lock pages hosted on Cloudflare Pages.
  • Payload behavior: Victim is socially engineered into installing UltraViewer, granting the scammer full interactive remote control — typically followed by banking fraud, gift-card extortion, or staging of secondary payloads (credential theft, crypto drainers).
  • C2 Communication: UltraViewer's legitimate relay infrastructure (which makes blocking the RAT vendor's domains a policy decision, not just an IOC decision); TDS C2 via fast-flux affiliate domains (hotejka.ink, roi-traffic.icu, lib1.biz) and IPv4 91.196.33.144.
  • Persistence: UltraViewer installs as a service/startup item; scammers often enable auto-start and hide the tray icon.
  • Anti-Analysis: Browser fingerprinting + geolocation gating at the TDS layer ensures sandboxes and non-target regions see benign content; Cloudflare Pages provides reputable-IP hosting that defeats naive reputation filters.

IOC Analysis

TypeExamplesOperationalization
Hostnames (.kp / DPRK)mail.silibank.net.kp, smtp.star-co.net.kp, hangro.net.kpDNS sinkhole + alerting. Any enterprise resolution of .net.kp space is a near-certain incident — investigate the requesting host immediately.
Domains (DPRK-adjacent)silibank.com, ps.ppokkugi.comBlock at DNS/web proxy; hunt proxy logs retroactively 90 days.
FileHash-SHA256 (Hangro tooling)b8810eae…ad01, 5a2f8145…214bLoad into EDR blocklists (Defender: Custom Indicators; CrowdStrike: Custom IOCs). Sweep VDI and jump hosts first — DPRK tooling surfaces on admin systems.
Domains (Hotejka TDS)roi777.com, roi-traffic.icu, hotejka.ink, lib1.biz, fosetya.shop, goalods.lol, hotcname.helpDNS block. Note the lexical clustering: feed these to a predictive-domain tool (Infoblox, DNSTwist, or RDAP-based bulk-registration clustering) to preempt successor domains.
IPv491.196.33.144Block at egress firewall + retro-hunt netflow/proxy for 180 days.

Tooling: Use urlscan.io and VirusTotal to pivot on the TDS domains (screenshots reveal the fake Microsoft alert templates). Use Censys/Shodan certificate search to hunt the Hangro certificate hierarchy by issuer/subject anomalies — invalid-signature certs are rare in the wild and highly pivotable. Decode SoftEther fingerprints with JA3/JA4 TLS fingerprinting in Zeek or Suricata.

Detection Engineering

YAML
---
title: DPRK Hangro Infrastructure TLS or DNS Contact
description: Detects DNS resolution or TLS SNI contact with known Hangro / DPRK state VPN and mail relay infrastructure identified in OTX pulse (July 2026 certificate hierarchy refresh).
status: experimental
date: 2026/10/22
author: Security Arsenal Threat Intel
logsource:
    category: dns
    product: windows
    service: dns-client
detection:
    selection:
        QueryName|contains:
            - 'silibank.net.kp'
            - 'star-co.net.kp'
            - 'hangro.net.kp'
            - 'silibank.com'
            - 'ppokkugi.com'
    condition: selection
falsepositives:
    - Threat research sandbox activity
level: critical
tags:
    - attack.command_and_control
    - attack.t1071
    - attack.t1572
---
title: Hotejka Help TDS Domain Resolution
description: Detects DNS queries to Hotejka / ROI777 Help TDS infrastructure used to deliver fake Microsoft tech support scam pages via Cloudflare Pages and malvertising redirect chains.
status: experimental
date: 2026/10/22
author: Security Arsenal Threat Intel
logsource:
    category: dns
detection:
    selection:
        QueryName|contains:
            - 'roi777.com'
            - 'roi-traffic.icu'
            - 'hotejka.ink'
            - 'lib1.biz'
            - 'fosetya.shop'
            - 'goalods.lol'
            - 'hotcname.help'
    condition: selection
falsepositives:
    - Security research
detection_notes: Follow up by checking whether the requesting host subsequently installed UltraViewer or an unknown RMM tool.
level: high
tags:
    - attack.initial_access
    - attack.t1189
    - attack.command_and_control
---
title: UltraViewer Remote Access Tool Installation or Execution
description: Detects installation, service registration, or execution of UltraViewer, the RAT abused by Hotejka tech support scam operators for full interactive victim control.
status: experimental
date: 2026/10/22
author: Security Arsenal Threat Intel
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        Image|endswith:
            - '\UltraViewer.exe'
            - '\UltraViewer_setup.exe'
    selection_cmd:
        CommandLine|contains:
            - 'UltraViewer'
    selection_svc:
        CommandLine|contains:
            - 'sc create'
            - 'UltraViewer'
    condition: 1 of selection_*
falsepositives:
    - Legitimate IT helpdesk deployments (maintain an approved-RMM allowlist; anything not on it is suspicious)
level: high
tags:
    - attack.command_and_control
    - attack.t1219
    - attack.persistence
    - attack.t1543.003
KQL — Microsoft Sentinel / Defender
// Security Arsenal — Hotejka TDS + UltraViewer + DPRK Hangro Hunt (Sentinel)
// Part 1: Network contact with pulse IOCs
let TDS_Domains = dynamic(["roi777.com","roi-traffic.icu","hotejka.ink","lib1.biz","fosetya.shop","goalods.lol","hotcname.help"]);
let DPRK_Hosts = dynamic(["mail.silibank.net.kp","smtp.star-co.net.kp","mail.silibank.com","hangro.net.kp","silibank.com","ps.ppokkugi.com"]);
let SuspiciousIP = "91.196.33.144";
let NetworkHits = DeviceNetworkEvents
| where TimeGenerated > ago(30d)
| where RemoteUrl in~ (TDS_Domains) or RemoteUrl in~ (DPRK_Hosts) or RemoteIP == SuspiciousIP
| project TimeGenerated, DeviceName, InitiatingProcessFileName, RemoteUrl, RemoteIP, RemotePort, ActionType;
// Part 2: UltraViewer install/execution on endpoints
let RATHits = DeviceProcessEvents
| where TimeGenerated > ago(30d)
| where FileName =~ "UltraViewer.exe" or ProcessCommandLine has "UltraViewer"
| project TimeGenerated, DeviceName, FileName, ProcessCommandLine, InitiatingProcessFileName, AccountName;
// Part 3: Browser-lock scam page contact preceding RAT install (correlate)
let ScamPages = DeviceNetworkEvents
| where TimeGenerated > ago(30d)
| where RemoteUrl has "pages.dev" and InitiatingProcessFileName in~ ("msedge.exe","chrome.exe","firefox.exe")
| project TimeGenerated, DeviceName, RemoteUrl, InitiatingProcessFileName;
union NetworkHits, RATHits
| sort by TimeGenerated desc
PowerShell
# Security Arsenal — Hotejka/UltraViewer + Hangro IOC Hunt
# Run elevated on endpoints (or via Intune/Defender Live Response). Outputs CSV of hits.
$report = @()

# 1) UltraViewer install artifacts: services, run keys, install dirs
$uvServices = Get-CimInstance Win32_Service | Where-Object { $_.Name -match 'UltraViewer' -or $_.PathName -match 'UltraViewer' }
foreach ($s in $uvServices) { $report += [pscustomobject]@{Type='Service'; Indicator=$s.Name; Detail=$s.PathName; State=$s.State} }

$runKeys = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run','HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run'
foreach ($k in $runKeys) {
    if (Test-Path $k) {
        (Get-ItemProperty $k).PSObject.Properties | Where-Object { $_.Value -match 'UltraViewer' } |
        ForEach-Object { $report += [pscustomobject]@{Type='RunKey'; Indicator=$_.Name; Detail=$_.Value; State=$k} }
    }
}

$uvPaths = "$env:ProgramFiles\UltraViewer","${env:ProgramFiles(x86)}\UltraViewer","$env:APPDATA\UltraViewer"
foreach ($p in $uvPaths) { if (Test-Path $p) { $report += [pscustomobject]@{Type='FilePath'; Indicator=$p; Detail='UltraViewer install directory present'; State='Exists'} } }

# 2) Hangro tooling file hashes (EDR-independent sweep of common staging dirs)
$hashes = @('b8810eae6ead0ec3a606300c5e3fe9c7af23f836719596e9519f73b4e1e7ad01','5a2f81451d6c921a7ab845b1856f67d71c76196cc34ace5ef7c7e8e471c3214b')
Get-ChildItem -Path "$env:TEMP","$env:USERPROFILE\Downloads","C:\ProgramData" -Recurse -File -ErrorAction SilentlyContinue |
ForEach-Object {
    $h = (Get-FileHash $_.FullName -Algorithm SHA256 -ErrorAction SilentlyContinue).Hash
    if ($hashes -contains $h.ToLower()) { $report += [pscustomobject]@{Type='FileHash'; Indicator=$h; Detail=$_.FullName; State='MALICIOUS'} }
}

# 3) Active/recent network connections to TDS IPv4 and DNS cache hits for pulse domains
$conns = Get-NetTCPConnection -ErrorAction SilentlyContinue | Where-Object { $_.RemoteAddress -eq '91.196.33.144' }
foreach ($c in $conns) { $report += [pscustomobject]@{Type='NetConn'; Indicator=$c.RemoteAddress; Detail="State=$($c.State) LocalPort=$($c.LocalPort)"; State=$c.OwningProcess} }

$dnsCache = Get-DnsClientCache -ErrorAction SilentlyContinue | Where-Object { $_.Entry -match 'silibank|star-co\.net\.kp|hangro\.net\.kp|ppokkugi|roi777|roi-traffic|hotejka|lib1\.biz|fosetya|goalods|hotcname' }
foreach ($d in $dnsCache) { $report += [pscustomobject]@{Type='DNSCache'; Indicator=$d.Entry; Detail=$d.Data; State='Resolved'} }

# 4) Scheduled tasks referencing UltraViewer (persistence)
Get-ScheduledTask | Where-Object { ($_.Actions.Execute -match 'UltraViewer') -or ($_.TaskName -match 'UltraViewer') } |
ForEach-Object { $report += [pscustomobject]@{Type='SchTask'; Indicator=$_.TaskName; Detail=$_.Actions.Execute; State=$_.State} }

$report | Format-Table -AutoSize
$report | Export-Csv -Path "$env:ProgramData\OTX_Hunt_$($env:COMPUTERNAME)_$(Get-Date -Format yyyyMMdd).csv" -NoTypeInformation
Write-Host "Hunt complete. $($report.Count) indicator(s) found. CSV written to ProgramData."

Response Priorities

Immediate (0-4h):

  • Block all pulse IOCs: the seven Hotejka TDS domains, IPv4 91.196.33.144, and the DPRK hostnames/domains (.net.kp space, silibank.com, ppokkugi.com) at DNS, proxy, and egress firewall.
  • Load the two Hangro SHA256 hashes into EDR custom blocklists and sweep endpoints — prioritize jump boxes, admin workstations, and systems with financial application access.
  • Audit installed software for UltraViewer and any unapproved RMM; uninstall and isolate hosts where found.

24 Hours:

  • For any host that ran UltraViewer: assume interactive hands-on-keyboard access occurred. Force credential resets for all accounts used on that machine, revoke sessions/tokens, and review for wire-fraud or gift-card purchase attempts (tech support scams monetize fast).
  • Retro-hunt proxy/DNS logs 90-180 days for TDS domain contact; any hit triggers the browser-lock → RAT-install kill chain review.
  • Review outbound TLS for sessions with invalid or self-inconsistent certificates — Hangro's broken-signature PKI is a behavioral detection opportunity beyond IOCs.

1 Week:

  • Implement an RMM allowlist policy: only sanctioned remote-access tools execute; alert on all others (LOLRMM project patterns).
  • Deploy predictive DNS blocking for bulk-registered scam TLDs (.icu, .lol, .ink, .shop) feeding TDS infrastructure.
  • Add JA3/JA4 fingerprinting for SoftEther to network monitoring and alert on TLS sessions presenting unverifiable certificate chains to unusual geographic endpoints.
  • Run a user-awareness micro-module on tech support scam browser-lock pages — the single most effective control against the Hotejka kill chain's first mile.

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.