Response playbooks, investigation guides, and Atomic Red Team tests are Pro-only. Upgrade to unlock the full detection package for THREAT-DNSTunnel-Exfil.
Upgrade to ProDetect DNS Tunneling for Covert Data Exfiltration in CrowdStrike LogScale
DNS tunneling encodes stolen data inside the query names (and occasionally TXT/NULL record responses) of DNS lookups, exploiting the fact that DNS is almost universally permitted outbound even in tightly filtered network environments. OilRig/APT34 has repeatedly built DNS-based communication into its custom malware families, using DNS resolution as both a C2 and exfiltration channel to survive proxy and firewall egress controls. FIN7 has used DNS tunneling against point-of-sale and retail environments where HTTP(S) egress was more tightly monitored than DNS. APT41 has deployed publicly available DNS tunneling frameworks such as dnscat2 during intrusions where direct HTTP(S) exfiltration was blocked. Commodity tooling in this space — iodine, dnscat2, DNSExfiltrator, and PacketWhisper — all share the same observable signature: large volumes of DNS queries for subdomains of an attacker-controlled domain, where the subdomain label itself is a base32/base64/hex-encoded chunk of stolen data, together with an abnormal skew toward TXT/NULL/CNAME query types and elevated NXDOMAIN rates (since many tunneling implementations use non-existent subdomains purely as a data-carrying vehicle). This detection deliberately focuses on DNS query-log analytics rather than endpoint process telemetry, since it catches tunneling traffic that a purely process-based detection would miss (e.g., DNS tunneling from a compromised network appliance, or malware that resolves names via direct socket calls rather than a monitored DNS client process) and is a good complement to the process-execution-based detections already covered on the parent T1048.003 page.
MITRE ATT&CK
- Tactic
- Exfiltration
LogScale Detection Query
#event_simpleName=DnsRequest
| DomainName=/.{40,}/
| groupBy([ComputerName, DomainName], function=[count(as=QueryCount)])
| QueryCount >= 50
| sort(field=QueryCount, order=desc) CrowdStrike LogScale (Falcon) query surfacing DNS requests (DnsRequest events) with unusually long domain name strings (40+ characters), grouped by host and domain. Intended as a first-pass filter to feed a follow-on aggregation (grouping by the registered parent domain across hosts, over a rolling window) to confirm DNS-tunneling volume before alerting, since a single long domain name is not sufficient evidence on its own.
Data Sources
Required Tables
False Positives & Tuning
- CDN/telemetry services using long, unique subdomains — tag known legitimate parent domains in a Falcon reference list and exclude via a NOT filter
- Certificate transparency and mail security TXT lookups generating long encoded domain names
Other platforms for THREAT-DNSTunnel-Exfil
Testing Methodology
Validate this detection against 1 adversary technique 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.
- Test 1Simulate DNS Tunneling Data Exfiltration via iodine
Expected signal: DNS query logs showing a burst of long, base32-encoded subdomain queries against tunnel.testdomain.example with a high proportion of NULL/TXT query types.
Unlock playbooks & atomic tests with Pro
Get the full detection package for THREAT-DNSTunnel-Exfil — response playbook and atomic red team tests, plus investigation guidance and hunting queries.
df00tech Pro — £29/user/month
Related Detections
Tactic Hub
Detection Variants (2)
Different telemetry and tradecraft for the same technique — pick the one that matches the data you collect.
- THREAT-DNSTunneling-ExfiltrationData Exfiltration via DNS Tunneling ToolsUse for endpoint DNS telemetry — Sysmon EID 22 / MDE DeviceDnsEvents; adds process attribution and tool fingerprints (iodine, dnscat2, DNSExfiltrator).
- THREAT-Exfiltration-ICMPTunnelData Exfiltration via ICMP TunnelingUse when the carrier is ICMP rather than DNS — pairs ping/tunneler process flags with firewall, NetFlow or Zeek ICMP records, which EDR network telemetry does not log.