Understanding threat modeling and its benefits
A threat is a possible event that might take advantage of weaknesses in an application’s design or system architecture, resulting in undesirable consequences. Anyone interacting with an application, whether from within or outside an organization, can be a source of such events. As technologies evolve, the number of threats grows. To prevent threats from exploiting system flaws, threat modeling methods can be applied in the design phase to inform defensive measures.
Threat modeling is a structured approach to identifying potential threats and vulnerabilities in software and system designs. Once found, we can prioritize them according to probabilities and make a plan of mitigations that we can put in place to stop or reduce the effects of these threats.
While threat modeling can be done at any point, it is best integrated in the planning phase, before the code is written, when the software architecture is being decided. This...