Ways to Best Use Penetration Testing Tools
While pentesting tools are usually used in the context of a larger security assessment of a network or service, there’s nothing holding back sysadmin’s or developers from deploying the exact same tools to validate the strength of their own work.
Top Pentesting ToolsBelow is a list of the best pentesting tools to tackle different penetration testing tasks. We also included what each tool is best used for and which platforms they’re supported on.
1. Powershell-SuiteThe PowerShell-suite is a collection of PowerShell scripts that extract information about the handles, processes, DLLs, and many other aspects of Windows machines. By scripting together specific tasks, you can quickly navigate and check which systems on a network are vulnerable to exploit.
- Best Used For: Easily automated tasks to discover weak exploitable assets on a network.
- Supported Platforms: Windows
2. ZmapZmap is a lightweight network scanner that is capable of scanning everything from a home network to the entire Internet. This free network scanner is best used to gather baseline details about a network. If you only have an IP range to go off of, use to get a lay of the land quickly.
- Best Used For Information gathering and initial triage of the attack landscape.
- Supported Platforms: Zmap is supported on various Linux platforms and macOS
3. XrayXray is an excellent network mapping tool that uses the OSINT framework to help guide its tactics. Xray uses wordlists, DNS requests, and any API keys to help identify open ports on a network from the outside looking in.
- Best Used For: Pentesters tasked with gaining access to a network with no help
- Supported Platforms: Linux and Windows
4. SimplyEmailSimplyEmail is an email recon tool used to help gather associated information found on the internet based on someone’s email address. SimplyEmail is based on the harvester solution and works to search the internet for any data that can help provide intelligence around any given email address.
- Best Used For Pentesters looking to create account lists for enterprise testing engagements.
- Supported Platforms: Docker, Kali, Debian, Ubuntu, macOS
5. WiresharkWireshark is likely the most widely used network protocol analyzer across the world. Network traffic captured via Wireshark can show what protocols and systems are live, what accounts are most active, and allow attackers to intercept sensitive data.
- Best Used For Deep level network visibility into communications.
- Supported Platforms: Windows, Linux, macOS, Solaris
6. HashcatHashcat is one of the fastest password recovery tools to date. By downloading the Suite version, you have access to the password recovery tool, a word generator, and a password cracking element. Dictionary, combination, brute-force, rule-based, toggle-case, and Hybrid password attacks are all fully supported. Best of all is hashcat has a great online community to help support the tool with patching, a WiKi page, and walkthroughs.
- Best Used For Up and coming pentesters or system recovery specialists looking for the best password recovery tool to stake a claim in their business.
- Supported Platforms: Linux, Windows, and macOS
7. John the RipperJohn the Ripper is the original password cracking tool. Its sole purpose is to find weak passwords on a given system and expose them. John the Ripper is a pentesting tool that can be used for both a security and a compliance perspective. John is famous for its ability to expose weak passwords within a short timeframe quickly.
- Best Used For: Password cracking for novices
- Supported Platforms: Windows, Unix, macOS, Windows
8. HydraHydra is another password cracking tool but with a twist. Hydra is the only password pentesting tool that supports multiple protocols and parallel connections at once. This feature allows a penetration tester to attempt to crack numerous passwords on different systems at the same time without losing connection if unbeaten.
- Best Used For: Password cracking for professionals
- Supported Platforms: Linux, Windows, Solaris, macOS
9. Aircrack-ngAircrack-ng is a wireless network security tool that is an all in one package for penetration testing. Aircrack-ng has four primary functions that make it the ultimate standout in its class; It does monitoring of network packets, attacking via packet injection, testing of WiFi capabilities, and finally, password cracking.
- Best Used For Command-line heavy users that prefer to script out attacks or defense measures.
- Supported Platforms: Windows, OS X Solaris, Linux
10. Burp SuiteFor pentesting web applications, Burp Suite is your go-to tool. Incorporating not only vulnerability scanning but Fully Proxy capturing and command injection services as well. Burps UI is fully optimized for the working professional with built-in profiles to allow you to save your configurations on a per-job basis.
- Best Used For Enterprise professionals in charge of application security
- Supported Platforms: Windows, macOS, and Linux
11. MetasploitComparable to Burp Suite, Metasploit started as an open-source solution and has gained some traction over the years. Some of the tasks that can be accomplished in Metasploit from a pentesting perspective include vulnerability scanning, listening, exploiting known vulnerabilities, evidence collection, and project reporting.
- Best Used For Pentesters managing several different companies at once or have multiple applications to be tested.
- Supported Platforms: Windows, macOS, and Linux
12. NiktoNikto is a loud and proud web application scanning solution. It is open-source and contains features like a web server scanner, a pre-packaged list of potentially dangerous files, and a misconfiguration checker as well. Nikto is not stealthy, nor does it try to be; it doesn’t try to hide its presence, but it will get the job done.
- Best Used For Enterprise Pentesters or SOCs that have the full permission to scan systems in a purple team type exercise. Best used to help build out monitoring around scanning activity within a SOC environment.
- Supported Platforms: Windows and Linux
13. FuzzdbFuzzdb is a special kind of penetration testing tool as it contains pre-built attack payloads to run against web applications to discover if vulnerabilities are genuinely exploitable. On top of being able to simulate attack patterns, Fuzzdb can run discovery scans and perform analysis on the responses received from these scans to narrow better the focus of where vulnerabilities exist.
- Best Used For Pentesting professionals that are hired to attempt to exploit vulnerabilities.
- Supported Platforms: Windows, Linux, and macOS
14. NMAP/ZenMapNMAP is a pentesters best friend. This network security mapping tool gives you a quick look at the open ports on any given network. NMAP commands allow you to dig into the feasibility of specific network-level vulnerabilities. NMAP also has a friendly GUI interface called ZenMap that is easy to use for any skill level. NMAP also comes with a debugging tool, a comparison tool for comparing scan results, and a packet generation tool as well.
- Best Used For: All skill level pentesters or security professionals to validate and test vulnerability management.
- Supported Platforms: Linux, Microsoft Windows, FreeBSD, OpenBSD, Solaris, IRIX, Mac OS X, HP-UX, NetBSD, Sun OS, and Amiga
15. sqlmapSqlmap is an open-source penetration tool that helps bring validity to possible SQL injection flaws that may affect your database servers. This automated testing tool comes with a slew of detailed features, including DB fingerprinting, remote commands, and its detection engine.
- Best Used For Expert Pentesters strictly focusing on exploiting databases.
- Supported Platforms: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase and SAP MaxDB
16. MobSFFor mobile platform vulnerability discovery, MobSF is your tool. This hacking tool is an all in one platform for pen-testing and vulnerability discovery via static and dynamic application analysis. MobSF also has built-in REST APIs to provide an integrated experience into your development pipeline. ModSF is ultimately a vulnerability scanner for mobile applications.
- Best Used For Enterprise or individual mobile application vulnerability pentesting.
- Supported Platforms: Android, iOS, and Windows
17. Linux-Exploit-SuggesterLinux-Exploit-Suggester is an excellent tool for on the fly security testing of Linux systems without dealing with the overhead of a beefy vulnerability scanner. LES was created for system admins to get a quick sense of the. Based on its lightweight compatibility, LES is a great vulnerability catalog for pentesters looking to get a quick overview of a systems configuration, without creating too much noise via resource consumption.
- Best Used For: Pentesters to quickly find a potential host that is vulnerable to start crafting an exploit without drawing too much attention to themselves.
- Supported Platforms: Linux
18. ApktoolApktool is for those Pentesters or security researchers that are attempting to reverse engineer malware to determine a way to better protect against it. Apktool only supports 3rd party, android applications. Apktool’s feature set includes being able to disassemble and reassemble to original form, debugging and help to automate repetitive tasks.
- Best Used For Pentesters looking to craft a custom payload specific to a company’s android application or security researchers looking to find a fix for a known android vulnerability.
- Supported Platforms: Android
19. Resource HackerResource Hacker is a windows specific file editor that allows anyone to decompile a windows file and recompile it at a later time. The great thing about this reverse engineering tool is that it comes with a GUI interface that makes it easy for novice pentesters to learn and use.
- Best Used For Novice file editor for windows files.
- Supported Platforms: Windows
20. IDAIDA is the Kleenex of disassembler tools as it is widely supported and used in commercial validation testing. IDA is interactive as a disassembler as well as a debugger, thus providing you with a whole solution as a professional. Best of all, it supports all major OS system types.
- Best Used For Professional level malware disassembly.
- Supported Platforms: Windows, Linux, macOS
21. RadareLastly, we have Radare, which is one of the most widely accepted and versatile disassembly tools available. Some of its features include multiple OS and mobile OS support, file system forensics, data carving capabilities, and visualizing data structures.
- Best Used For: experienced pentesters who have a vast knowledge of multiple platforms.
- Supported Platforms: Linux, *BSD, Windows, OSX, Android, iOS, Solaris and Haiku
22. Email or Chat SoftwareIf it is available to you, the best way to send out compromised data is through the account you compromised in the first place. Most of the time you will have the ability to use the user’s account to send ether emails out or you could try to use the installed enterprise chat solution in place to accomplish the same outcome. For pentesters trying to remain anonymous, this is a great technique as long as you limit the size of the emails so that it isn’t detected as an anomaly by any DLP solution that might be watching.
- Best Used For: Pentesters trying to remain anonymous and test the detection capabilities of any DLP solutions in place.
- Supported Platforms: Supported on most OS
23. SrmSrm stands for Secure remove, and it takes the hassle out, ensuring a file is entirely removed from a system. As a pentester, Srm is great for removing temporary files created while accessing a system, If your intent is to cover up your tracks, Srm is the tool required to remove any rootkit files that may have been used during the exploit process. Srm removes and rewrites over the data location to ensure all traces of the data are thoroughly wiped from the system. Best of all, it is a command-line program that is quick to set up and use.
- Best Used For: permanent file deletion, not even forensics software can recover.
- Supported Platforms: Unix and Windows
24. CatfishCatfish is a pentesting tool that is used by many to quickly search for specific files that tend to contain sensitive data or can provide them with additional access (like a password file). Catfish allows the end-user to explore a system for any files containing a particular string within its name. It is simple but highly effective at what it does.
- Best Used For Quick file name searching on a machine.
- Supported Platforms: Linux based OS
Performing penetration tests is an essential part of verifying that systems are secure. Using the right penetration testing tools saves time and helps to improve your overall security