Security testing

Last updated

Security testing is a process intended to detect flaws in the security mechanisms of an information system and as such help enable it to protect data and maintain functionality as intended. [1] Due to the logical limitations of security testing, passing the security testing process is not an indication that no flaws exist or that the system adequately satisfies the security requirements.

Contents

Typical security requirements may include specific elements of confidentiality, integrity, authentication, availability, authorization and non-repudiation. [2] Actual security requirements tested depend on the security requirements implemented by the system. Security testing as a term has a number of different meanings and can be completed in a number of different ways. As such, a Security Taxonomy helps us to understand these different approaches and meanings by providing a base level to work from.

History

Early concepts of security testing emerged alongside the development of computer security in the 1960s and 1970s, when government and academic institutions began exploring methods to evaluate system vulnerabilities. The U.S. Department of Defense’s Trusted Computer System Evaluation Criteria (TCSEC), published in 1985, introduced formal evaluation requirements for secure system design and testing. [3] During the 1990s, the rise of networked systems and the internet popularized penetration testing and vulnerability assessment as practical approaches to identify security weaknesses before adversaries could exploit them. [4] Modern security testing integrates continuous and automated methods, aligning with secure software development lifecycles and DevSecOps practices. [5]

Confidentiality

Integrity

Integrity of information refers to protecting information from being modified by unauthorized parties

Authentication

This might involve confirming the identity of a person, tracing the origins of an artifact, ensuring that a product is what its packaging and labelling claims to be, or assuring that a computer program is a trusted one.

Authorization

Availability

Non-repudiation

Taxonomy

Common terms used for the delivery of security testing:

Tools

See also

References

  1. M Martellini, & Malizia, A. (2017). Cyber and chemical, biological, radiological, nuclear, explosives challenges : threats and counter efforts. Springer.
  2. "Introduction to Information Security" US-CERT https://www.us-cert.gov/security-publications/introduction-information-security
  3. "Department of Defense Trusted Computer System Evaluation Criteria (DoD 5200.28-STD)" (PDF). U.S. Department of Defense via NIST CSRC. 1985-12-26. Retrieved 2025-11-10.
  4. Wysopal, Chris; Nelson, Lucas; Dai Zovi, Dino; Dustin, Elfriede (2006-11-17). The Art of Software Security Testing: Identifying Software Security Flaws. Addison-Wesley Professional. ISBN   978-0-321-30486-5.
  5. "OWASP Software Assurance Maturity Model (SAMM)". OWASP. Retrieved 2025-11-10.
  6. "Container Security Verification Standard". GitHub . 20 July 2022.
  7. "Infrastructure as Code Security - OWASP Cheat Sheet Series".
  8. "OWASP DevSecOps Guideline - v-0.2 | OWASP Foundation".
  9. "Component Analysis | OWASP Foundation".