Today in this article you will learn about penetration testing, its types, some examples of penetration testing tools, and the different stages of penetration testing.
What is penetration testing?
Penetration testing (also known as pen testing or ethical hacking) is a simulated cyber attack by a security expert with the intention to find and exploit vulnerabilities in a computer system.
This exercise is performed to identify the weaknesses of a system that attackers could take advantage of and can gain the access to system features or important data. This can help an organization in strengthening its security policies.
Types of penetration testing
Different types of penetration testing are –
External pen testing – In this type of penetration testing, an ethical hacker or security expert targets externally available assets such as the organization’s website, email, domain name servers, etc to gain some valuable information.
Internal pen testing – This type of pen testing is performed on the company’s internal network where the tester can also has the access to an application behind the firewall. This is useful in finding attacks by a malicious insider or in case the credentials of an employee are stolen due to a phishing attack.
Single-blind testing – It is also known as closed box pen-testing. In this ethical hacker is given no prior background information besides the name of the target company. This gives the security personnel or team a real-time look into how an actual attack takes place.
Double-blind testing – This is also known as covert pen-testing. In this, almost no one in the company including security personnel are aware of the simulated attack that is going to happen.
Targeted testing – This is also known as open box pen-testing. In this ethical hacker will be provided with some information ahead of the time regarding the security information of the targeted company. The purpose of this is to give security team the real-time feedback from a hacker’s perspective.
How penetration testing is performed?
Penetration testing is performed in different stages. Each stage is explained below in the detail.
- Planning and information gathering – This is the starting phase of pentest in which a security expert or pen tester defines their end goal and starts gathering data and information that will be used in the coming phases to simulate an attack.
- Scanning – In this gathered information is utilized to discover things like ports, services, and subdomains for web apps on the targeted system.
- Vulnerability assessment – In this stage, the pen tester gains initial knowledge of the system and identifies the potential security weakness which can be used to gain access to the system.
- Exploitation – This is the phase where the real action begins, by using the results from the vulnerability assessment and scanning pen tester starts exploiting the vulnerability by using different techniques such as cross-site scripting, SQL injection, etc, and human intuition and their background details for validation.
- Analysis – This stage includes the analysis and review of the vulnerabilities which is compiled into a detailed report. The report includes information such as vulnerabilities in the system, sensitive data that can be accessed, and the time up to which the pen tester was able to access the system.
- Utilizing the testing results – In this stage information or report was given by the pen tester is analyzed by security personnel to bring the application security solutions, fix system vulnerabilities and protect against future attacks.
Some examples of penetration testing tools
Some examples of different types of penetration testing tools are given below –
- Information gathering – Nmap, Zenmap, Stealth Scan
- Vulnerability analysis – Ohrwurm, Powerfuzzer, Sfuzz, Bed
- Web application analysis – Burpsuite, Httrack, Sqlmap, Vega, wpscan
- Database assessment tools – Bbsql, Jsql injection, Oscanner, Sqlninja
- Password attack – Hashcat, Crunch, Johnny, Aircrack-ng, Kismet
- Exploitation tools – Armitage, Metasploit, Searchsploit, Beef XSS framework
- Reporting tools – Dradis, Pipal, Faraday IDE, Magictree
- Reverse engineering tools – Apktools, Ollydbg, Flasm, etc.
So here you have learned about penetration testing and its different stages I hope you now understood it.
Now if you have a query or feedback then write us in the comments below.