Penetration Testing & Vulnerability Scanning Flashcards
What is a penetration test?
A penetration test (AKA pen test), reveals security weaknesses through real-world attacks. Results from the test can help an organization better understand their security systems, prioritize risks, and identify areas of improvement. These tests are active evaluations.
What is the difference between a vulnerability scan and a penetration test?
Vulnerability scanning is only intended to programmatically identify vulnerabilities. Penetration tests goes even further to exploit the vulnerabilities and gain access. Both can be a risk to an organization, but penetration tests are a higher risk and should only be conducted within a defined program of governance with senior management.
Testing methodology: What is a black box test?
A black box test is where the tester has no knowledge of inner workings of the system or source code. An application is just being tested for functionality.
Testing methodology: What is a white box test?
A white box test is where the tester has knowledge of either the inner workings of the system or source code. This test is more transparent and efficient, as well as cost-effective. It is the more common type of test and sometimes called clear box or glass box test.
Testing methodology: What is a gray box test?
Gray box testing combines black and white box testing. The tester has some understanding or limited knowledge of the inner workings.
What are the components of a penetration test?
- Verify that a threat exists (understand the threat and its extent)
- Bypass security controls (mimic real world attacker)
- Actively test security controls (active techniques seek to identify if controls are properly implemented)
- Exploit vulnerability (resulting exploit verifies the vulnerability and should lead to mitigation techniques and controls)
What are the four primary phases of a penetration test?
- Planning - Provide clarity with the plan and goals. It’s important to have a documented plan that includes rules and expectations.
- Discovery - Includes information gathering & scanning and vulnerability analysis.
- Attack - Initial exploitation, escalation of privilege, pivoting, persistence.
- Reporting - After testing, a comprehensive report should be delivered that at least includes vulnerability identified, actions taken and the results, mitigation techniques, and some sort of quantification of the risk.
What does a vulnerability scan do?
It identifies vulnerabilities, misconfigurations, and a lack of security controls. The results of a scan should be organized based on the relative security snd value associated with each identified threat. The organization can then prioritize the vulnerabilities to address first.
Interpreting results leads to one of three approaches: do nothing ad no risk was found, fixing or eliminating vulnerability, or accept security gap and implement mitigation controls.
What are the three goals of a comprehensive vulnerability scan?
- Identify vulnerability
- Identify common misconfiguration
- Identify lack of security controls
How does a vulnerability scanner work?
A vulnerability scanner is a software utility that scans a range of IP addresses and tests for known vulnerabilities in software configuration and accessible services. It relies on a database of known vulnerabilities.
What is the difference between intrusive and non-intrusive scan?
Intrusive scans combine verification of actual vulnerabilities by trying to exploit the vulnerability. Non-intrusive scans help organizations mitigate disruptions as a result of the vulnerability assessment.
What is the difference between credentialed and non-credentialed scans?
Non-credentialed scans are less invasive and provide outsiders point of view. Credentialed scans obtain more info, resulting in a more complete vulnerability status with greater certainty. Credentialed scans help reduce false positives.
What is a race condition?
A race condition involves software, specifically how a program executes a sequence of code. Usually occurs when code sequences are competing over the same resource or acting concurrently. It exploits a small window of time in which one action impacts another. These out of sequence actions can result in a system crash, data loss, or allow attackers to escalate their privileges.
What is resource exhaustion?
Resource exhaustion can occur when software doesn’t properly manage resources (memory, CPU, storage, etc) and the system completely consumes or exhausts its resources. This can happen with a DoS attack.
How does architecture and design impact continued vulnerabilities?
Clear oversight for the design of systems is important to security. If poorly documented, it can result in system sprawl and loss of visibility and control. This can include: unpatched software, weak configurations, poor access management controls, lack of backups, downtime, less resiliency to change.