Home Hacking Tools Routersploit – A Free Framework for Exploiting Embedded Devices

Routersploit – A Free Framework for Exploiting Embedded Devices

by Unallocated Author

Routersploit is an open source framework used for exploiting vulnerabilities in embedded devices like routers. Routersploit is loaded with various modules that help the tool perform its functionality. These modules can be divided into the following categories.

(a) Scanner Modules: Scanner modules are responsible for finding the vulnerabilities in the routers or embedded devices.

(a) Exploits Modules:  Exploits modules are used to make use of the vulnerabilities identified by the scanners.

(b) Payloads Modules: Payloads modules are responsible for generating the payloads that can be injected in routers and the devices that are connected with the seized router.

(c) Generic Modules: Generic modules are used for launching the generic attacks.

Routersploit Installation Process

routersploit cloning

Routersploit can be installed by cloning the github repository. However, there are few dependencies that need to be installed to make the Routersploit work properly. These dependencies include the Python3-pip, Paramiko, Requests, Beautifilsoup4, Pysnmp, and Pycrypto packages. All these packages can be installed used the following command.

apt-get install python3-pip requests paramiko beautifulsoup4 pysnmp pycrypto

Once installed, Routersploit tool along with other required files can be installed using the following commands.

git clone https://www.github.com/threat9/routersploit
cd routersploit
python3 -m pip install -r requirements.txt
python3 rsf.py

Vulnerability Scanning Using Routersploit

routersploit scanning vulnerabilities

Once installed, most of the work is done automatically by the tool. We just need to provide the target to Routersploit to scan. Suppose, we want to test the router with an IP address We can launch Routersploit using the following commands.

use scanners/autopwn
set target

The tool runs numerous scanning modules to search for possible vulnerabilities within the target device. If there are any breaches that can be exploited, the tool displays them in the result section as shown in the following screenshot.

routersploit scanning results

We can use the Exploits and Payloads module for the found vulnerabilities to gain control of the router.

routersploit exploits and payloads

The paypload is injected in the target to gain full access to the router.

routersploit router access gained

Routers can be one of those devices that are forgotten about by many security teams. We have witnessed a recent hack of a Russian bank due to an unpatched router, causing the bank a loss of $1 Million. With Routersploit, the penetration testers can check for vulnerabilities and potentially if they can gain administrative access to the routers.

Routers should be considered of utmost importance within a network, as once exploited they can be utilised to inject malware within the connected devices, monitor traffic going in our out of the compromised devices, and redirect traffic for personal gain. Therefore, Routersploit plays an important role in finding known vulnerabilities within devices and subsequently avoid them from being exploited.

What Bunny rating does it get?

RouterSploit is a fantastic, easy to use tool that helps discover and exploit high risk router vulnerabilities, one minor point that was annoying was having to troubleshoot during some of the installation to get it working. As a result we have decided to give this tool an amazing rating of 4.5/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

Do NOT follow this link or you will be banned from the site!

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