Skip to main content
Hard difficultyNetwork & Infrastructure25-40 minutes
SIEMFirewall

DNS Tunneling Investigation

When DNS monitoring detects anomalous query patterns, high-entropy subdomains, unusually long query strings, excessive TXT record requests, or high query volume to a single domain, investigate for DNS tunneling. Attackers encode data in DNS queries and responses to exfiltrate data or maintain C2 channels that bypass firewalls and web proxies. The APT34 (OilRig) group and the DNSMessenger backdoor are notable real-world examples of DNS tunneling for espionage and persistent access.

Overview

DNS tunneling exploits the DNS protocol to transport non-DNS data, enabling attackers to bypass security controls that do not inspect DNS traffic. Because DNS is essential for network operations and is almost never blocked, it provides an ideal covert channel. Data is encoded in DNS query labels (subdomains) for outbound communication and in TXT or CNAME responses for inbound communication. The Iranian APT34 (OilRig) group used DNS tunneling extensively for espionage operations against government and energy targets.

The DNSMessenger backdoor communicated entirely through DNS TXT records, leaving no HTTP/HTTPS footprint. Tools like iodine, dnscat2, and Cobalt Strike DNS beacon make DNS tunneling accessible to attackers at all skill levels. This playbook teaches you to detect, investigate, and shut down DNS tunneling activity.

When You See This

  1. 1

    DNS analytics alert on high query volume (100+ queries/hour) from a single host to one domain

  2. 2

    DNS query strings contain long, high-entropy subdomains (e.g., aGVsbG8gd29ybGQ.tunnel.evil.com)

  3. 3

    Excessive TXT record queries from non-mail-server hosts

  4. 4

    Network baseline deviation for DNS traffic volume from a specific endpoint

  5. 5

    DNS response sizes significantly larger than typical A/AAAA responses

Investigation Steps

  1. 1

    Analyze the DNS query patterns

    Pull all DNS queries from the suspect host to the suspect domain. Calculate the average query length, entropy of subdomains, query frequency, and record types requested. Normal DNS queries are short (< 30 chars) and infrequent. DNS tunneling queries are long (50-250 chars), frequent, and often use TXT or NULL record types.

    SIEM
    index=dns src_ip="suspect_host" query="*.suspect-domain.com" | eval query_length=len(query) | stats count, avg(query_length) as avg_len, max(query_length) as max_len, values(query_type) as record_types by query_domain
    index=dns src_ip="suspect_host" | stats count by query_domain | sort -count | head 20

    Decision Point

    If: Average query length > 50 characters AND query volume > 100/hour to a single domain

    Yes → Strong DNS tunneling indicators. Proceed to determine the tunneling tool and purpose.

    No → May be legitimate (CDN, ad networks, cloud services generate many DNS queries). Verify the domain reputation and purpose.

  2. 2

    Identify the tunneling tool

    Different DNS tunneling tools have recognizable patterns. iodine uses NULL records and has a characteristic handshake. dnscat2 uses TXT or CNAME records with specific encoding patterns. Cobalt Strike DNS beacon uses A records with encoded hostnames. Identifying the tool helps determine attacker sophistication and capabilities.

    SIEM
    index=dns src_ip="suspect_host" query_domain="suspect-domain.com" | stats count by query_type | sort -count
    index=dns src_ip="suspect_host" query="*.suspect-domain.com" | head 50 | table _time, query, query_type, answer
  3. 3

    Determine if data is being exfiltrated

    Calculate the total data volume being tunneled by summing query and response sizes. Compare with the time window to estimate throughput. DNS tunneling is slow (typically 10-50 KB/s) but can exfiltrate significant data over hours or days. If the total outbound data encoded in queries is substantial, this may be data exfiltration rather than just C2.

    SIEM
    index=dns src_ip="suspect_host" query="*.suspect-domain.com" | eval encoded_bytes=len(query)-len(query_domain)-1 | stats sum(encoded_bytes) as total_encoded_bytes, count | eval estimated_data_KB=round(total_encoded_bytes*0.75/1024,2)
  4. 4

    Identify the source process

    Correlate the DNS queries with endpoint process data. Identify which process is generating the tunneling traffic. This may be a dropped binary, a legitimate tool being abused, or malware using DNS as its sole communication channel.

    XDR
    index=endpoint dest_host="suspect_host" process_name!="svchost.exe" dns_query="*.suspect-domain.com" | stats count by process_name, process_path, process_hash
  5. 5

    Block and contain

    Sinkhole or block the tunneling domain at the DNS resolver level. Add the domain to firewall deny lists. Isolate the affected host. If the DNS tunneling was being used for C2, the attacker loses control of the implant; but check for backup communication channels (HTTP, HTTPS) that may activate when DNS fails.

    FirewallSIEM

Common Mistakes

  1. 1

    Dismissing high DNS query volume as normal without checking the query content and entropy

  2. 2

    Blocking the DNS domain without identifying the source process; the malware remains on the host and may switch channels

  3. 3

    Not calculating total data exfiltrated; even slow DNS tunneling can move gigabytes over days

  4. 4

    Assuming DNS tunneling requires exotic tools; Cobalt Strike, one of the most common post-exploitation frameworks, has built-in DNS beaconing

Escalation Criteria

  • Confirmed DNS tunneling with encoded data in queries

  • Significant data volume estimated in the tunneling channel (suggesting exfiltration)

  • The tunneling process is linked to a known malware family or C2 framework

Practice This Investigation

SOCSimulator provides hands-on training rooms where you work through real-world attack scenarios, including dns tunneling investigation investigations with live SIEM alerts. Build analyst muscle memory with zero consequences. Free forever.

12,000+ analysts trained
4.9/5 rating
Free forever tier

Frequently Asked Questions

Why do attackers use DNS tunneling?
DNS traffic is rarely blocked or deeply inspected by firewalls and web proxies because it is essential for network operations. DNS tunneling lets attackers bypass security controls that focus on HTTP/HTTPS traffic. Even organizations with sophisticated network monitoring often have blind spots in DNS analysis. APT34 and other nation-state groups have used DNS tunneling for years because of this gap.
How fast is DNS tunneling?
DNS tunneling is slow compared to HTTP; typically 10-50 KB/s for data exfiltration. However, this is sufficient for stealing documents, credentials, or database exports over hours or days. For C2 communication, the low bandwidth is not a limitation because commands and responses are small.
How do I practice DNS tunneling detection?
SOCSimulator includes network scenarios with DNS tunneling patterns that you analyze in the SIEM and firewall consoles. Practice calculating query entropy and identifying tunneling signatures. Start free forever.
Technique

Application Layer Protocol (T1071) — Detection Training

Adversaries may communicate using OSI application layer protocols to avoid detection and network filtering by blending i…

Read more
Technique

Protocol Tunneling (T1572) — Detection Training

Adversaries may tunnel network communications to and from a victim system within a separate protocol to avoid detection …

Read more
Technique

Exfiltration Over Alternative Protocol (T1048) — Detection Training

Adversaries may steal data by exfiltrating it over a different protocol than that used for command and control. Data exf…

Read more
Glossary

What is IDS? — SOC Glossary

An Intrusion Detection System (IDS) monitors network traffic or host activity for signs of malicious behavior, policy vi…

Read more
Glossary

What is IPS? — SOC Glossary

An Intrusion Prevention System (IPS) is an active network security control deployed inline that inspects traffic in real…

Read more
Glossary

What is NDR? — SOC Glossary

Network Detection and Response (NDR) is a security platform that passively monitors network traffic using machine learni…

Read more
Career Path

Security Engineer Career Guide — Salary & Skills

Security Engineers build and maintain the infrastructure that SOC analysts depend on. You deploy SIEMs, configure firewa…

Read more
Career Path

SOC Analyst (Tier 1) Career Guide — Salary & Skills

Tier 1 SOC Analysts are the front line. You monitor alert queues, triage incoming detections, classify them as true or f…

Read more
Comparison

SOCSimulator vs LetsDefend — Comparison

SOCSimulator wins on operational realism. You get multi-tool shift simulation with SLA pressure, noise injection, and al…

Read more
Comparison

SOCSimulator vs TryHackMe — Comparison

SOCSimulator is the better tool for dedicated SOC analyst preparation. TryHackMe is the better tool for broad cybersecur…

Read more
Playbook

Phishing Email Investigation — Investigation Playbook

When a phishing email is reported or detected, investigate by analyzing email headers for spoofing indicators, inspectin…

Read more
Playbook

Brute Force Attack Investigation — Investigation Playbook

When authentication logs show repeated failed login attempts against one or more accounts, investigate by identifying th…

Read more

We use cookies to improve your experience and measure usage. Learn more