WHAT IS PENETRATION TESTING?
Penetration testing, also known as pen testing, security pen testing, and security testing, is a form of ethical hacking. It describes the intentional launching of simulated cyberattacks by “white hat” penetration testers using strategies and tools designed to access or exploit computer systems, networks, websites, and applications. Although the main objective of pen testing is to identify exploitable issues so that effective security controls can be implemented, security professionals can also use penetration testing techniques, along with specialized testing tools, to test the robustness of an organization's security policies, its regulatory compliance, its employees' security awareness, and the organization's ability to identify and respond to security issues and incidents such as unauthorized access, as they occur.
As a simulated cyberattack, ethical hacking techniques help security professionals evaluate the effectiveness of information security measures within their organizations. The pen test attempts to pierce the armor of an organization’s cyber defenses, checking for exploitable vulnerabilities in networks, web apps, and user security. The objective is to find weaknesses in systems before attackers do.
- In the case of networks, the high-level goal is to strengthen security posture by closing unused ports, troubleshooting services, calibrating firewall rules, and eliminating all security loopholes.
- In the case of web applications, pen testing is designed to identify, analyze, and report on common web application vulnerabilities such as buffer overflow, SQL injection, cross-site scripting, to name just a few.
- Pen testing can also be used to attempt to gain privileged access to sensitive systems or to steal data from a system that is believed to be secure.
In the context of web application security, penetration testing is often used to augment a web application firewall (WAF).
COMMON PEN TESTING STRATEGIES
Based on the objectives of the organization, here are some commonly used penetration testing strategies:
- External testing: This involves attacks on the organization's network perimeter using procedures performed from outside the organization's systems, e.g., the Extranet and Internet.
- Internal testing: Performed from within the organization’s environment, this test attempts to understand what could happen if the network perimeter were successfully penetrated or what an authorized user could do to penetrate specific information resources within the organization's network.
- Blind testing: In this case, the tester tries to simulate the actions of a real hacker. The testing team has little or no information about the organization but instead must rely on publicly available information (such as corporate website, domain name registry, etc.) to gather information about the target and conduct its penetration tests.
- Double blind testing: In this exercise, only a few people within the organization are made aware of the testing. The IT and security staff are not notified or informed beforehand, and as such, they are "blind" to the planned testing activities. Double-blind testing helps test an organization's security monitoring and incident identification processes, as well as its escalation and response procedures.
- Targeted testing: Also known as the lights-turned-on approach, target testing involves both IT and penetration testing teams. Testing activities and information concerning the target and the network design are known going in. Targeted tests require less time and effort than a blind test, but typically don’t provide as complete a picture of an organization's security vulnerabilities and response capabilities as other testing strategies.
COMMON PEN TESTING TOOLS
Pen testing gives IT teams a different perspective on how to fortify defenses, and it adds an effective set of tools and services to the security professional’s arsenal.These include:
- Port scanners
- Vulnerability scanners
- Application scanners
- Web application assessment proxies
1. The Network Mapper: NMAP is a tool that discovers weaknesses in an enterprise’s network environment. It can also be used for auditing purposes. NMAP takes raw data packets that have just been created and uses them to determine:
- What hosts are available on a particular network trunk or segment
- The information about the services which are being provided by these hosts
- What operating system is being used (also known as “fingerprinting”)
- The versions and the types of data packet filters/firewalls being used by any particular host
By using NMAP, organizations can create a virtual map of the network segment, and from there, pinpoint the major areas of weakness that a cyber attacker could potentially penetrate. NMAP can be used at any stage in the pen testing process, and it is a free open-source tool available at this link: www.nmap.org.
2. Metasploit: Rather than a single tool, Metasploit provides a package of different pen testing tools. It is a framework that is constantly evolving to keep up with today’s ethical hackers, who are able to contribute their knowledge to this platform as well. Powered by the PERL platform, Metasploit comes with an entire host of built-in exploits which can be used to execute various kinds of pen test, and these are even customizable. For example, it already comes with a built-in network sniffer, and various access points from which to mount and coordinate various kinds of cyber-based attacks.
3. Wireshark: Wireshark is an actual network protocol and data packet analyzer that can point out what is happening with the network and assess traffic for vulnerabilities in real time. By reviewing connection-level information as well as the constituents of data packets, it highlights their characteristics, origin, destination, and more. While it flags potential weaknesses, a penetration testing tool is still required to exploit them.
4. The Web Application Attack and Audit Framework: W3AF is a pen testing suite created by the software developers at Metasploit. Its main purpose is to find and try to exploit any security weaknesses in web-based applications, and it consists of many tools that can root out these kinds of threats.
5. John the Ripper: JTR is a fast, efficient password cracker, currently available for many flavors of operating system (Unix, macOS, Windows, DOS, BeOS, and OpenVMS). It can be used by pen testers to detect weak passwords and address the inherent weaknesses in typical password use. JTR has been created and developed on an open source platform, and it can be found at this link: http://www.openwall.com/john/.
Note: A key advantage of using open-source pen testing tools is the fact that they are constantly being refined by contributors and other cybersecurity professionals. This helps ensure that they stay at the forefront of the ever-changing threat landscape.
MANUAL OR AUTOMATED
Pen testing can be performed manually or it can be automated. Pen testing using automated testing tools optimizes resources by automating elements of the penetration testing process so vulnerability identification can be performed continuously and without human intervention. In order to provide insights critical to the organization’s ability to fine-tune its security policies and patch detected vulnerabilities, penetration testing needs to expose security flaws that would allow attackers user, system, network, or application access. The process involves gathering information about possible targets, identifying potential entry points, attempting to break in – either virtually or actually – and reporting back findings to the organization’s security team.
With so many moving parts, automated testing tools save time and typically produce better penetration test results than manual efforts. Costly breaches, loss of data, compromised systems, users, and applications – these are all things that bring high risk to the enterprise. Pen testing, particularly automated pen testing, can be a very effective tool to help prevent real-world attacks and mitigate these kinds of vulnerabilities. They also deliver fewer false positives and lower AppSec costs.
The Open Web Application Security Project (OWASP) offers pen testing methodologies, pen testing guides, a penetration testing framework, and a Penetration Testing Execution Standard (PTES). PTES separates penetration testing into seven phases, and these act as a roadmap for global companies as they manage their pen testing efforts:
- Pre-engagement interactions
- Intelligence gathering
- Threat modeling
- Vulnerability analysis
- Post exploitation
THE BOTTOM LINE
With cyberattacks increasingly sophisticated and forever on the rise, it is more important than ever that organizations perform regular penetration testing to identify their exposures, block holes, and ensure that cyber controls are working as intended. These tests help the organization take a proactive stance as it seeks out weaknesses in its infrastructure (hardware), applications (software), and people in order to develop effective controls that are continuous and able to keep up with the ever evolving cyber threat landscape.
Penetration testing is also known as pen testing or ethical hacking. It describes the intentional launching of simulated cyberattacks that seek out exploitable vulnerabilities in computer systems, networks, websites, and applications. Although the main objective of pen testing is to identify security weaknesses, penetration testing tools can also be used to test the robustness of an organization's security policy, its regulatory compliance, its employees' security awareness, and the organization's ability to identify and respond to security incidents as they occur.
A pen test can be automated using security tools or it can be performed manually. In order to provide insights critical to the organization’s ability to fine-tune its security policies and patch detected vulnerabilities, penetration tests need to expose vulnerabilities that would allow attackers system access. The process involves gathering information about possible targets, identifying potential entry points, attempting to break in – either virtually or actually – and reporting back findings to the organization’s security team.
Contrast Security is the world’s leading provider of security technology that enables software applications to protect themselves against cyberattacks, heralding the new era of self-protecting software. Contrast's patented deep security instrumentation is the breakthrough technology that enables highly accurate assessment and always-on protection of an entire application portfolio, without disruptive scanning or expensive security experts. Only Contrast has sensors that work actively inside applications to uncover vulnerabilities, prevent data breaches, and secure the entire enterprise from development, to operations, to production.
Contrast Assess automates elements of the penetration testing process so vulnerability identification can be performed continuously. Contrast addresses the most common vulnerabilities, enabling penetration testers to focus on more complex vulnerabilities such as business logic flaws. To learn more about Contrast portfolio of products:
- Automated Penetration Testing - Used to optimize resources by automating pen testing
- Make Your Software Self-Protecting- Used to automatically detect and fix vulnerabilities and defend against targeted attacks and bots.