Threat modeling
There are multiple approaches and tools in threat modeling, but at its core, there are three main areas: mapping data flows, analyzing attack surfaces, and assessing the impacts of failure.
The Open Web Application Security Project (OWASP) has a three-step threat-modeling process:3
- Decompose the application.
- Determine and rank threats.
- Determine countermeasures and mitigation.
Decompose the application
This starts with understanding the use cases for the application. For example, with a game, one use case might be to play the game, while another might be to top up tokens from the in-app store.
Then, identify the entry points where an attacker could interact with the application, resources, and assets that would be of interest to an attacker, and the trust levels and access rights the application grants to external entities such as users, tech support, moderators...