What is Penetration Testing?
Penetration testing, or pen testing, is the simulation of real-world attacks in order to test an organization’s detection and response capabilities. While some might consider pen tests as just a vulnerability scan meant to check the box on a compliance requirement, the exercise should actually be much more.
The purpose of pen testing is not just to test your environment’s vulnerabilities, but to test your people and processes against likely threats to your organization as well. Knowing which adversaries are more likely to target you allows pen testers to mimic the specific tactics, techniques, and procedures (TTPs) of those specific adversaries – giving an organization a much more realistic idea of how a breach might occur.
Front Lines Report
Every year our services team battles a host of new adversaries. Download the Cyber Front Lines report for analysis and pragmatic steps recommended by our services experts.Download Now
Penetration Testing Steps
In most cases a penetration test will follow the steps laid out in the MITRE ATT&CK framework. If you’re not familiar with the MITRE framework, it is a knowledge base of known adversarial tactics, techniques, and procedures that occur along various phases of a breach’s life cycle.
Following this framework offers a way for pen testers to create a model for a specific adversary’s behavior, thereby allowing them to more accurately mimic the attack during the test. Currently, there are twelve tactics along the Mitre Enterprise matrix:
- Initial access tactic refers to the vectors hackers exploit to access an environment
- Execution refers to the techniques used to execute the adversary’s code after gaining access to the environment
- Persistence tactics are actions that allow attackers to maintain presence in a network
- Privilege escalation refers to the actions taken by an adversary to gain higher access into a system
- Defense evasion tactics are techniques used by penetrators that allow them to go unnoticed by a system’s defenses.
- Credential access refers to techniques used to obtain credentials from users or admins
- Discovery refers to the learning process through which adversaries better understand the system and the access they currently possess
- Lateral movement is used by adversaries to obtain remote system access and control
- Collection tactics are those that are used by attackers for gathering targeted data
- Command and control are tactics used to establish communication between the compromised network and the controlled system
- Exfiltration are the actions adversaries take to remove sensitive data from the system
- Impact tactics are those that are meant to affect a business’s operations
It’s important to note that the above tactics used in a pen test are dependent on the tactics of the adversary being mimicked.
Types of Penetration Testing
When considering to conduct a pen test, it’s important to remember that there is not a one-size-fits-all test. Environments, industry risks, and adversaries are different from one organization to the next. Furthermore, there isn’t just one type of pen test that will serve all the needs of an organization.
There are several types of pen tests that are designed to meet the specific goals and threat profile of an organization. Below are some of the most common types of pen tests.
1. Internal Pen Testing
Assesses your organization’s internal systems to determine how an attacker could move laterally throughout your network: The test includes system identification, enumeration, vulnerability discovery, exploitation, privilege escalation, lateral movement, and objectives.
2. External Pen Testing
Assesses your Internet-facing systems to determine if there are exploitable vulnerabilities that expose data or unauthorized access to the outside world: The test includes system identification, enumeration, vulnerability discovery, and exploitation.
3. Web Application Pen Test
Evaluates your web application using a three-phase process: First is reconnaissance, where the team discovers information such as the operating system, services and resources in use. Second is the discovery phase, where the team attempts to identify vulnerabilities. Third is the exploitation phase, where the team leverages the discovered vulnerabilities to gain unauthorized access to sensitive data.
4. Insider Threat Pen Test
Identifies the risks and vulnerabilities that can expose your sensitive internal resources and assets to those without authorization: The team assesses weaknesses such as deauthentication attacks, misconfigurations, session reuse, and unauthorized wireless devices.
5. Wireless Pen Testing
Identifies the risks and vulnerabilities associated with your wireless network: The team assesses weaknesses such as deauth attacks, mis-configurations, session reuse, and unauthorized wireless devices.
6. Physical Pen Testing
Identifies the risks and vulnerabilities to your physical security in an effort to gain access to a corporate computer system: The team assesses weaknesses such as social engineering, tail-gating, badge cloning and other physical security objectives.
Why is Penetration Testing Important?
1. Reduce Attack Surface
Testing the different components of your IT environment is a continuous and often daunting task that can include applications, networks, firewalls, wireless, mobile, insider threats — the list goes on. Yet, understanding the latest attack techniques — and testing and assessing your defenses against those types of attacks — is critical to improving your cybersecurity posture.
Identifying vulnerabilities requires more than simply running a scan of your IT environment to stop today’s sophisticated attacks. It is one thing to identify that a vulnerability exists, but it is something completely different to be able to exploit that vulnerability and see how far you can penetrate into the network and systems
2. Battle Test Your Playbook
No matter how sound your incident response playbook is, it’s not much use if it’s never actually been tested in combat. By far, the number one benefit of penetration testing is that it gives your team the invaluable training of going head-to-head with an adversary – without the damaging consequences of losing.
Pen tests give security professionals unparalleled insight into how a real cyberattack occurs, and what it takes to detect and stop one. The more practice a pen tester gets defending against real adversary TTPs, the more prepared and confident they’ll be when the real thing comes around.
3. Budget Prioritization
A pen test helps an organization focus its security dollars where they are needed most, saving money over the long run by preventing wasteful expenditures over the broader security landscape.
4. Expose Blind Spots
When outside pen testers are involved, the organization gains an objective perspective that exposes blind spots that could be missed by internal IT teams due to a lack of expertise or unfamiliarity with the latest threats. Pen testers can also transfer knowledge to internal teams, improving their skills and increasing their ability to respond to threats independently once the engagement is over.
5. Tool Efficacy
Organizations that have invested heavily in leading security brands may believe their environments are nearly invulnerable, but this assumption is misguided unless they’ve tested their systems against an attack. A pen test helps the IT team understand which investments are working and which need to be tuned or replaced.
2021 CrowdStrike Global Threat Report
Download the 2021 Global Threat Report to uncover trends in attackers’ ever-evolving tactics, techniques, and procedures that our teams observed this past year.Download Now
What are Pen Testing tools?
Penetration testing tools are used to help pen testers conduct tests faster and more efficiently. Pen testers often use a suite of pen testing tools depending on the type of test they are conducting. But broadly speaking, pen testing tools help to identify, verify, and prioritize vulnerabilities that testers can then try to exploit.
These tools can be either free, open source software or made commercially available. It’s important to note that pen testing tools are not meant to replace testers.
Some of the most widely used tools include:
- John the Ripper
- Network Mapper (Nmap)
Pen testers aren’t the only ones who use pen testing tools. Threat actors are often observed leveraging pen testing tools for malicious purposes. One is example is Cobalt Strike.
Cobalt Strike is a commercial penetration testing tool that gets loaded into RAM and allows the attackers to open a connection to the infected machine, manage and download additional modules, log keystrokes and conduct port scanning. COBALT SPIDER, a threat actor tracked by CrowdStrike, got their name because they’ve been observed exploiting vulnerabilities through the use of the Cobalt Strike Beacon payload.
When Should You Conduct a Penetration Test?
The most important time to conduct a pen test is before a breach occurs. Many organizations don’t make the effort until after they’ve been successfully attacked — when they’ve already lost data, intellectual property and reputation. However, if you have experience a breach, a post breach remediation pentest should be conducted to ensure mitigations are effective.
Best practices suggest conducting a pen test alternatively while the system is in development or installed, and right before it’s put into production. The dangers of running a pen test too late are that updated to the code are most costly and code change windows are usually smaller.
Pen tests are not a one-and-done proposition. They should be conducted whenever changes are made and/or at least annually. Factors including company size, infrastructure, budget, regulatory requirements, and emerging threats will determine the appropriate frequency.