Home Hacking Tools ARPwner – A GUI Based ARP and DNS Spoofing Tool

ARPwner – A GUI Based ARP and DNS Spoofing Tool

by Unallocated Author

ARPwner is a GUI based tool that can perform tasks like ARP and DNS spoofing. Through ARP and DNS spoofing, the attackers can steal sensitive information by eavesdropping on the network. Address Resolution Protocol, simply called ARP, is a communication protocol that is used to map IP addresses to physical addresses, e.g MAC address of the computer systems and devices in the local network. ARP uses a table called ARP cache to maintain the correlation between the IP addresses and the MAC addresses of the local network devices. ARPwner manipulates the cache by sending the spoofed ARP messages on the local network to correlate the MAC address of the attacker’s machine with the IP address of the target machine, usually the default gateway. With that step, the entire traffic passes through the attacker’s machine. In this way, any internet traffic meant for other machines in the network can be analyzed by the attacker. The attacker can also target the IP address of a specific user machine to refine the incoming traffic. Similarly, in DNS spoofing, the DNS cache is manipulated with fake entries.

How to Install ARPwner

arpwner cloning

ARPwner requires pypcap module to operate.  The pypcap can be installed as follows.

apt-get install python-pypcap

The ARPwner setup files can be downloaded by cloning the github repository as follows.

git clone https://github.com/ntrippar/ARPwner

How ARPwner Works

open arpwner

After installation, move to the ARPwner directory to run the main.py file using the following commands.

cd ARPwner
python main.py

This will open the ARPwner user interface as shown in the following screenshot.

arpwner gui

The tool is loaded with different plugins that can log account details running under different protocols, such as HTTP, FTP, IRC, IMAP, NNTP, SMTP, POP3, and TELNET. We can enable or disable any of the available plugins to collect data according to the goals.

To start the ARP or DNS spoofing, select the target interface listed under the ‘ARP’ tab. In our case, it is ‘eth0’. The next step is to scan the network. This can be achieved by providing the IP address range. Once the IP address range is provided, the tool lists all the available online devices in the local network. Any IP address can be added to the ‘Target’ list to intercept the traffic, such as password credentials of specific services accessed by the user during the sniffing process. The ARP and DNS spoofing options can be set ON and OFF by just clicking the options from the ‘ARP’ tab.

Arp tab options

What Bunny rating does it get?

Overall, the tool is very handy to collect useful information by monitoring the local network traffic. The tool is not only capable of spoofing the network, but also utilises SSL mitigations by using SSLStrip, as a result we will be awarding this tool a rating of 4 out of 5 bunnies.

Want to learn more about ethical hacking?

We have a  networking hacking course that is of a similar level to OSCP, get an exclusive 95% discount HERE

Do you know of another GitHub related hacking tool?

Get in touch with us via the contact form if you would like us to look at any other GitHub ethical hacking tools.

You may also like

Latest Hacking News

Privacy Preference Center


The __cfduid cookie is used to identify individual clients behind a shared IP address and apply security settings on a per-client basis.

cookie_notice_accepted and gdpr[allowed_cookies] are used to identify the choices made from the user regarding cookie consent.

For example, if a visitor is in a coffee shop where there may be several infected machines, but the specific visitor's machine is trusted (for example, because they completed a challenge within your Challenge Passage period), the cookie allows Cloudflare to identify that client and not challenge them again. It does not correspond to any user ID in your web application, and does not store any personally identifiable information.

__cfduid, cookie_notice_accepted, gdpr[allowed_cookies]


DoubleClick by Google refers to the DoubleClick Digital Marketing platform which is a separate division within Google. This is Google’s most advanced advertising tools set, which includes five interconnected platform components.

DoubleClick Campaign Manager: the ad-serving platform, called an Ad Server, that delivers ads to your customers and measures all online advertising, even across screens and channels.

DoubleClick Bid Manager – the programmatic bidding platform for bidding on high-quality ad inventory from more than 47 ad marketplaces including Google Display Network.

DoubleClick Ad Exchange: the world’s largest ad marketplace for purchasing display, video, mobile, Search and even Facebook inventory.

DoubleClick Search: is more powerful than AdWords and used for purchasing search ads across Google, Yahoo, and Bing.

DoubleClick Creative Solutions: for designing, delivering and measuring rich media (video) ads, interactive and expandable ads.



The _ga is asssociated with Google Universal Analytics - which is a significant update to Google's more commonly used analytics service. This cookie is used to distinguish unique users by assigning a randomly generated number as a client identifier. It is included in each page request in a site and used to calculate visitor, session and campaign data for the sites analytics reports. By default it is set to expire after 2 years, although this is customisable by website owners.

The _gat global object is used to create and retrieve tracker objects, from which all other methods are invoked. Therefore the methods in this list should be run only off a tracker object created using the _gat global variable. All other methods should be called using the _gaq global object for asynchronous tracking.

_gid works as a user navigates between web pages, they can use the gtag.js tagging library to record information about the page the user has seen (for example, the page's URL) in Google Analytics. The gtag.js tagging library uses HTTP Cookies to "remember" the user's previous interactions with the web pages.

_ga, _gat, _gid