Lion Cipher Lab

Detect DNS tunneling and exfiltration in your logs (Zeek dns.log)

Why it matters

DNS is the one protocol almost every network lets out unfiltered — which is exactly why attackers hide in it. By encoding stolen data (or a live command channel) into the subdomain labels of lookups to a domain whose name server they control, they smuggle bytes past firewalls that would block a raw upload in a heartbeat, and pull answers back inside TXT or NULL records. It is slow and noisy on the wire, and that noise is your opening: a DNS tunnel leaves a shape no normal browsing makes — a flood of long, random-looking subdomains under one parent domain, odd record types, and a huge count of…

What you'll learn

Steps in this lab

  1. What DNS tunneling is, and why attackers love DNS
  2. The tells — what a tunnel looks like that normal DNS doesn't
  3. The dns.log fields that matter
  4. When to reach for this — and when NOT to
  5. Generate a benign tunnel-SHAPED signal — safely, on your own box
  6. Turn the capture into dns.log with Zeek
  7. Here is your dns.log — baseline it before you hunt
  8. Hunt 1 — volume per parent domain
  9. Hunt 2 — long, high-entropy labels and odd record types
  10. Hunt 3 — unique-subdomain count and ratio per parent
  11. The false positives — baseline and allowlist before you alert
  12. Write the detection — rule of thumb, then Sigma/Suricata-style
  13. The judgment — limits, and how a pro does it better

Open the full interactive lab →