Introduction¶
Threat modeling is about identifying security risks early by thinking like an attacker. It is a proactive and holistic approach to identifying, analysing, and addressing potential threats and risks within a system or application. The process focuses on understanding how an attacker might exploit weaknesses and on implementing measures to mitigate those risks at an early stage. By doing so, it supports informed decision-making around application security.
Beyond producing a model diagram, the threat modeling process also delivers a prioritised set of security improvements. These enhancements can be applied across multiple stages of development, including conception, requirements gathering, design, and implementation. As a fundamental component of Security by Design, threat modeling ensures that security considerations are not an afterthought but an integral part of the engineering lifecycle.
Learning Objectives¶
By the end of this section, you will be able to:
Detect issues early in the software development life cycle (SDLC)
Identify and define system security requirements
Establish a structured approach to addressing both requirements and existing weaknesses
Anticipate attack vectors, including those specific to CMS platforms or unique system characteristics
Maintain a proactive stance to stay ahead of potential attackers
Understand threat actors by considering their motivations, skills, and capabilities
