Exploit Pack is a completely encompassing open-source penetration testing framework used for security assessment of networks and web applications. It really can do everything and the proof is in how many exploits it has which is more than 38000. You read that right and will have the opportunity to see a demo of this in action below.
The tool is best known for information gathering, targets enumeration, Exploitation, and incidents reporting. Exploit Pack is loaded with a pool of exploits that can be used to test the security of targets, depending on their type (host/server/web application) and security flaws. The exploits available in Exploit Pack can be used against all operating systems (Linux, Windows, UNIX, SCO, Minix, OSX, Solaris, etc.). Apart from pre-loaded exploits, the framework also supports custom exploits (scripts) from penetration testers.
Exploit Pack Installation
Exploit Pack is a Java-based GUI tool, released under GPLv3 license that is available as free (community) edition as well as a premium package. The free edition has around 400 exploits with core penetration testing features. The paid version has over 38K exploits with all the advanced penetration testing features. Java is the main requirement for Exploit Pack to work since the tool itself is built in Java. Linux users having DEB packages can install Java 8 by running the following commands.
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" >> /etc/apt/sources.list echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" >> /etc/apt/sources.list sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886 sudo apt-get update sudo apt-get install oracle-java8-installer
All users (including Linux) can also directly download Java Package from the following official Oracle repository.
After Java installation, download Exploit Pack from the following official Exploit Pack download page.
Once the download is completed, unzip the downloaded package to extract all the files and directories of Exploit Pack.
How Exploit Pack Works
Navigate to Exploit Pack directory to execute the ExploitPack.jar in order to run the framework. Linux users can execute the following command to run Exploit Pack.
java -jar ExploitPack.jar
(*In our case, it is ExploitPack_12.jar)
Exploit Pack Interface: The following screenshot shows an overview of Exploit Pack dashboard. We can divide the dashboard into three panels: i-e left, right, and middle panel.
The main features of the left panel are Exploits, Utilities, and Targets. Exploits tab contains all the available exploits that can be used during penetration testing. The Utilities tab contains the hacking/scanning tools (modules) like NMAP, fuzzing tools, etc. The Targets tab lists all the targets with associated penetration testing results. The middle panel is where we can configure the targets in order to run the modules or exploits. The right section contains the code/scripts of exploits used. We can edit the existing exploit or even add new exploits/scripts by using the functionalities/tabs available in the right panel of Exploit Pack.
Basic (Path) Configuration: Before running any exploit, we need to configure the interpreter and NMAP path. Normally, Exploit Pack defines an interpreter (Ruby, Bash, Perl, Powershell, etc.) required to run an exploit. However, the tool requires a default interpreter in case there is no interpreter selected by Exploit Pack. In our case, we have defined Python as our default interpreter for Exploit Pack. Save the configurations and restart the Exploit Pack.
Exploits and Modules: We can either use exploits (from Exploits) or modules (from Utilities) for information gathering or exploiting vulnerabilities of target hosts or web applications. The Exploits section contains a very long list of exploits divided into various categories as shown in the following screenshot.
The Utilities section contains different modules (tools), such as Nmap-scanner, SMTP-VRFY, FuzzerLocal, FuzzerTCP, Denial of Service, Agent-XSS, GDB-Connector, Agent-VBS, and Reverse-Shell. All these modules except NMAP are written and maintained by Exploit Pack developers. Exploit Pack provides brief information about each module added under Utilities section.
Nmap-scanner Example: Here we present Nmap-scanner example to demonstrate the working of Exploit Pack framework. The other modules can be used in a similar way with little or no modifications in configuration settings. In order to run Nmap-scanner, we need to define the target IP address, ports, and other optional settings as shown in the following screenshot.
After defining the target, select the Nmap-scanner from Auxiliary list and hit the execute button from the bottom left of the tool. Exploit Pack runs Nmap-scanner in background and compiles results in Targets section. The Targets section lists all the targets along with their scan results. Our target machine was a locally hosted Windows machine with an IP address of 10.0.2.40. The Nmap results compiled by Exploit Pack can be seen in the following screenshot.
The process of using Exploits is similar to Auxiliary modules. Penetration testers can tweak the exploits from the dashboard and save configurations before running the exploits.
Exploit Pack is an advanced level penetration testing framework that can assess the security of any operating system, server, or web application with built-in modules, exploits, and custom integration features. Security experts can add their own list of exploits and modules to enhance the performance of Open source Exploit Pack framework.