Domain 6: Security Assessment and Testing Flashcards
Penetration Testing Methodology
1 • Planning
2 • Reconnaissance
3 • Scanning (also called enumeration)
4 • Vulnerability assessment
5 • Exploitation
6 • Reporting
Static Testing
Test the code passively; the code is not running. This
includes walkthroughs, syntax checking, and code reviews.
Static Testing
Test the code passively; the code is not running. This
includes walkthroughs, syntax checking, and code reviews.
Dynamic Testing
Tests the code while executing it.
White Box Software Testing
Gives the tester access to program source code, data structures, variables, etc.
Black Box Testing
Gives the tester no internal details: the software is treated as a black box that receives inputs.
Traceability Matrix (sometimes called a Requirements Traceability Matrix, or RTM)
Can be used to map customer’s requirements to the software testing plan: it “traces” the “requirements,” and ensures that they are being met.
Fuzzing (Fuzz Testing)
A type of black box testing that enters random, malformed data as inputs into software programs to determine if they will crash.
Combinatorial Software Testing
A black-box testing method that seeks to identify and test all unique combinations of software inputs.
Misuse Case (Negative) Testing
Designed to assess how a system or application responds to unexpected inputs or situations, and identifies vulnerabilities which might be exploitable under these unexpected circumstances.
Abuse Cases
A specification of a deliberate, harmful interaction between a user and a system. They are often used to identify security requirements by specifying the ways a system could be abused by a malicious actor and are an integral part of threat modeling.
Unit Testing
Low-level tests of software components, such as
functions, procedures or objects.
Installation Testing
Testing software as it is installed and first operated.
Integration Testing
Testing multiple software components as they are combined into a working system. Subsets may be tested, or Big Bang integration testing tests all integrated software components.
Regression Testing
Testing software after updates, modifications, or patches.