CSLLP Secure Software Testing 1 — Questions and Answers
Question 1: Which testing methodology tests software from the outside without knowledge of the internal code or architecture?
- White-box testing
- Gray-box testing
- Black-box testing (Correct answer)
- Static analysis
Correct answer: Black-box testing
Black-box testing simulates an external attacker's perspective, probing the application through its interfaces without access to source code, design documents, or internal logic.
Question 2: What is the primary goal of penetration testing?
- To measure application performance under high load
- To actively exploit vulnerabilities in a controlled manner to assess the real-world impact of security weaknesses (Correct answer)
- To verify that all unit tests pass in the CI/CD pipeline
- To ensure compliance with coding standards
Correct answer: To actively exploit vulnerabilities in a controlled manner to assess the real-world impact of security weaknesses
Penetration testing simulates real attack scenarios to discover and demonstrate the exploitability of vulnerabilities and their potential business impact.
Question 3: Dynamic Application Security Testing (DAST) differs from SAST because it:
- Requires access to the source code
- Tests the running application by sending inputs and observing responses (Correct answer)
- Focuses on reviewing infrastructure configuration
- Only identifies logic flaws rather than coding errors
Correct answer: Tests the running application by sending inputs and observing responses
DAST tests a running application from the outside, sending crafted requests to find vulnerabilities such as injection flaws, authentication weaknesses, and misconfigurations.
Question 4: What does 'test coverage' measure in software security testing?
- The percentage of requirements reviewed by the security team
- The proportion of code paths, branches, or requirements exercised by the test suite (Correct answer)
- The number of vulnerabilities found per test cycle
- The time required to complete a full security test cycle
Correct answer: The proportion of code paths, branches, or requirements exercised by the test suite
Test coverage metrics quantify how much of the application's code or functionality is exercised by tests, helping identify untested areas that may contain hidden vulnerabilities.
Question 5: Which testing technique systematically explores all possible input values and states to find edge cases that trigger security flaws?
- Regression testing
- Boundary value analysis (Correct answer)
- Smoke testing
- Load testing
Correct answer: Boundary value analysis
Boundary value analysis tests inputs at and around the boundaries of valid ranges, since off-by-one errors and buffer overflows often occur at these edges.
Question 6: What is the purpose of security regression testing?
- To test new features for security vulnerabilities
- To verify that previously fixed vulnerabilities have not been reintroduced by new code changes (Correct answer)
- To perform annual penetration tests of production systems
- To test the application against the latest threat intelligence
Correct answer: To verify that previously fixed vulnerabilities have not been reintroduced by new code changes
Security regression testing re-runs tests for previously identified and fixed vulnerabilities after each change to ensure the fixes remain intact and have not been inadvertently broken.
Which testing methodology tests software from the outside without knowledge of the internal code or architecture?