The objective of this lab is for students to gain the first-hand experience on the remote DNS cache poisoning attack, also called the Kaminsky DNS attack. DNS (Domain Name System) is the Internet's phone book; it translates hostnames to IP addresses and vice versa. This translation is through DNS resolution, which happens behind the scene. DNS Pharming attacks manipulate this resolution process in various ways, with an intent to misdirect users to alternative destinations, which are often malicious. This lab focuses on a particular DNS Pharming attack technique, called DNS Cache Poisoning attack.

In another SEED Lab, we have designed activities to conduct the same attack in a local network environment, i.e., the attacker and the victim DNS server are on the same network, where packet sniffering is possible. In this remote attack lab, packet sniffering is not possible, so the attack becomes much more challenging than the local attack.

Lab Tasks (Description)

  • For instructors: if you prefer to customize the lab description to suit your own courses, here are our Latex source files.
  • VM version: This lab has been tested on our pre-built SEEDUbuntu12.04 VM.

Recommended Time: 2 weeks

Files that are Needed

  • Zone Files for DNS Setup
    • Zone file for domain example.com: /var/cache/bind/example.com.db
    • Default zone file for DNS domain lookup:ns.dnslabattacker.net: /etc/bind/db.attacker
    • Note: If you choose different IP addresses or domain names, you need to modify the above configuration and zone files accordingly.
  • The query packet generator sample program: You can download udp.c from here, but you need to modify this program.

Suggested Reading

SEED Project