Domain 6: Security Assessment and Testing Flashcards

1
Q

Penetration Testing Methodology

A

1 • Planning
2 • Reconnaissance
3 • Scanning (also called enumeration)
4 • Vulnerability assessment
5 • Exploitation
6 • Reporting

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Static Testing

A

Test the code passively; the code is not running. This
includes walkthroughs, syntax checking, and code reviews.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Static Testing

A

Test the code passively; the code is not running. This
includes walkthroughs, syntax checking, and code reviews.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Dynamic Testing

A

Tests the code while executing it.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

White Box Software Testing

A

Gives the tester access to program source code, data structures, variables, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Black Box Testing

A

Gives the tester no internal details: the software is treated as a black box that receives inputs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Traceability Matrix (sometimes called a Requirements Traceability Matrix, or RTM)

A

Can be used to map customer’s requirements to the software testing plan: it “traces” the “requirements,” and ensures that they are being met.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Fuzzing (Fuzz Testing)

A

A type of black box testing that enters random, malformed data as inputs into software programs to determine if they will crash.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Combinatorial Software Testing

A

A black-box testing method that seeks to identify and test all unique combinations of software inputs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Misuse Case (Negative) Testing

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Abuse Cases

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Unit Testing

A

Low-level tests of software components, such as
functions, procedures or objects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Installation Testing

A

Testing software as it is installed and first operated.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Integration Testing

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Regression Testing

A

Testing software after updates, modifications, or patches.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Acceptance Testing

A

Testing to ensure the software meets the customer’s operational requirements. When this testing is done directly by the customer, it is called User Acceptance Testing.

17
Q

Test Coverage Analysis & Four Main Criteria

A

The number of functions in a system or application that are tested and can be expressed as a percentage of the total system that has been tested or a specific number of things tested, such as functions or modules. Four main criteria:
• Branch coverage ensures that each branch in a control statement has been executed.
• Condition coverage requires each Boolean expression in the code to be validated for both true and false conditions.
• Function coverage makes sure that every function in the program is called.
• Statement coverage validates the execution of every statement in the program