T1584.008 IBM QRadar · QRadar

Detect Network Devices in IBM QRadar

Adversaries may compromise third-party network devices that can be used during targeting. Network devices, such as small office/home office (SOHO) routers, may be compromised where the adversary's ultimate goal is not Initial Access to that environment, but rather to leverage these devices to support additional targeting. Once an adversary has control, compromised network devices can be used to launch additional operations, such as hosting payloads for Phishing campaigns, enabling Content Injection operations, or serving as proxy relay nodes in Operational Relay Box (ORB) networks. Real-world usage includes Volt Typhoon proxying traffic through geographically co-located SOHO routers to evade geo-anomaly detection, APT28 compromising Ubiquiti devices to harvest credentials from phishing pages, ZIRCONIUM/APT31 building large-scale ORB networks from compromised SOHO and IoT devices, and Leviathan using SOHO devices as C2 relay infrastructure. These techniques are particularly difficult to detect because the compromise occurs entirely outside the victim environment — detection must focus on the downstream observable: when compromised devices interact with the victim's perimeter.

MITRE ATT&CK

Tactic
Resource Development
Technique
T1584 Compromise Infrastructure
Sub-technique
T1584.008 Network Devices
Canonical reference
https://attack.mitre.org/techniques/T1584/008/

QRadar Detection Query

IBM QRadar (QRadar)
sql
-- T1584.008 — Compromised Infrastructure: Network Devices
-- Requires 'Compromised_SOHO_ORB_IPs' Reference Set populated via TI feed automation
-- (e.g., QRadar Reference Data API or STIX/TAXII connector importing ORB/SOHO indicators)
-- Queries both events (auth + firewall) and flows (NetFlow/sFlow) tables
SELECT
  DATEFORMAT(starttime, 'YYYY-MM-dd HH:mm:ss') AS event_time,
  SOURCEIP(sourceip) AS source_ip,
  DESTINATIONIP(destinationip) AS destination_ip,
  destinationport AS destination_port,
  username,
  CATEGORYNAME(category) AS event_category,
  LOGSOURCETYPENAME(logsourcetypeid) AS log_source_type,
  qidname(qid) AS event_name,
  magnitude,
  'TI_Match_CompromisedNetworkDevice_Event' AS detection_type
FROM events
WHERE
  starttime > (CURRENT_TIMESTAMP - 86400000)
  AND INREFERENCESET(SOURCEIP(sourceip), 'Compromised_SOHO_ORB_IPs')
  AND NOT INCIDR('10.0.0.0/8', sourceip)
  AND NOT INCIDR('172.16.0.0/12', sourceip)
  AND NOT INCIDR('192.168.0.0/16', sourceip)
  AND NOT INCIDR('127.0.0.0/8', sourceip)
  AND NOT INCIDR('169.254.0.0/16', sourceip)
UNION ALL
SELECT
  DATEFORMAT(starttime, 'YYYY-MM-dd HH:mm:ss') AS event_time,
  SOURCEIP(sourceip) AS source_ip,
  DESTINATIONIP(destinationip) AS destination_ip,
  destinationport AS destination_port,
  NULL AS username,
  'Network Flow' AS event_category,
  APPLICATIONNAME(applicationid) AS log_source_type,
  'Inbound Network Flow from Compromised Device' AS event_name,
  magnitude,
  'TI_Match_CompromisedNetworkDevice_Flow' AS detection_type
FROM flows
WHERE
  starttime > (CURRENT_TIMESTAMP - 86400000)
  AND INREFERENCESET(SOURCEIP(sourceip), 'Compromised_SOHO_ORB_IPs')
  AND NOT INCIDR('10.0.0.0/8', sourceip)
  AND NOT INCIDR('172.16.0.0/12', sourceip)
  AND NOT INCIDR('192.168.0.0/16', sourceip)
  AND NOT INCIDR('127.0.0.0/8', sourceip)
ORDER BY event_time DESC
high severity medium confidence

Detects inbound events and network flows from IPs matching the 'Compromised_SOHO_ORB_IPs' QRadar reference set, which must be populated via an external TI feed integration covering VoltTyphoon, APT28, APT31, Leviathan, and ORB/SOHO router botnet infrastructure. The UNION ALL combines event-based detections (authentication, firewall log sources) with flow-based detections (NetFlow, sFlow, QFlow) to ensure full perimeter coverage. INCIDR filters exclude RFC1918 and loopback ranges to reduce noise from misconfigured log sources.

Data Sources

QRadar Reference Set: Compromised_SOHO_ORB_IPs (populated by TI feed integration via Reference Data API or STIX/TAXII)Firewall log sources (Cisco ASA, Palo Alto Networks, Fortinet FortiGate, Check Point)Authentication log sources (Microsoft Active Directory, RADIUS, VPN gateway logs)Network flow collectors (QRadar QFlow processor, NetFlow v9/IPFIX, sFlow)QRadar event pipeline (DSM-parsed events from all configured log sources)

Required Tables

eventsflows

False Positives & Tuning

  • Legitimate business partner or third-party vendor egress IPs that fall within ranges previously flagged as compromised SOHO infrastructure, particularly where the provider's IP block has been partially or fully reassigned after a botnet takedown
  • Cloud NAT gateway or shared egress IPs from hyperscale providers (AWS, Azure, GCP) appearing in SOHO/ORB TI feeds due to brief adversary use of co-tenanted infrastructure before account termination
  • Reference set staleness where an IP from a dismantled SOHO botnet campaign has been cleaned, returned to a legitimate ISP customer, and is now generating legitimate traffic but remains in the QRadar reference set
  • Anycast or geographic load-balancing IPs whose routing paths through certain regions cause them to appear associated with historically compromised SOHO infrastructure in GeoIP-based TI attribution
Download portable Sigma rule (.yml)

Other platforms for T1584.008


Testing Methodology

Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.

  1. Test 1Simulate SOHO Proxy Authentication via curl Through External Proxy

    Expected signal: Firewall logs record the connection originating from PROXY_IP (the relay device), not the actual test host. Network flow records show only the proxy-to-target leg of the connection. If PROXY_IP were in the threat intelligence feed tagged as SOHO/ORB infrastructure, the KQL ThreatIntelligenceIndicator join and SPL threat_intel_ips lookup would fire. Sysmon Event ID 3 on the test host shows the outbound connection to PROXY_IP:PROXY_PORT.

  2. Test 2Authentication Attempt from Residential ISP IP Address

    Expected signal: Web server access logs record the X-Forwarded-For IP (98.27.145.200) as the source. If authentication maps to Windows Security Event ID 4625 (failed logon) or 4624 (success), the IpAddress field should capture the forwarded residential IP. Azure AD SigninLogs would show the source IP in the IPAddress field. The residential IP hunting query (first hunting query) would flag this IP if it appeared in SigninLogs with a residential ASN classification.

  3. Test 3Scan for Exposed SOHO Management Ports on Local Network Segment

    Expected signal: Sysmon Event ID 3 (Network Connection) captures each connection attempt from the nmap process to each scanned port. Firewall logs on a production system would show the sequential port probe pattern. Network IDS/IPS systems should fire on port scanning signatures. The management port hunting query (second hunting query) would fire if this originated from an external IP targeting perimeter infrastructure.

  4. Test 4Validate Threat Intelligence Pipeline for SOHO/ORB Indicators

    Expected signal: DNS query to 1.1.1.1:53 generates Sysmon Event ID 22 (DNS Query) and Event ID 3 (Network Connection to 1.1.1.1:53). Firewall logs record the outbound UDP/TCP connection to 1.1.1.1:53. If /tmp/ti_test_soho.csv is loaded into the SIEM as a threat intelligence lookup, the connection source IP (1.1.1.1) matches the test TI entry tagged as SOHO/ORB.

Unlock Pro Content

Get the full detection package for T1584.008 including response playbook, investigation guide, and atomic red team tests.

Response PlaybookInvestigation GuideHunting QueriesAtomic Red Team TestsTuning Guidance

Related Detections