
- ADVANTAGES OF MICROSOFT FREE THREAT MODELING HOW TO
- ADVANTAGES OF MICROSOFT FREE THREAT MODELING CODE
There are not a lot of tools that aid in this dimension (see the next section on Simulation-like question answering).Įdit : Another important aspect here is how best to store the mitigations - and their mapping to threats.

ADVANTAGES OF MICROSOFT FREE THREAT MODELING HOW TO
However, we might be unable to completely mitigate all threats, so we need to decide how to allocate the engineering effort we have in a rational manner to manage the risk. If we can mitigate all threats, then great. Once threats have been enumerated, next we need to decide how to make decisions about them. How to determine which mitigations to apply? These all enable easy analysis using other tools as well as for YAML and JSON human-readable storage in version control. Some tools like threagile, threat-modeling, and pytm store the enumerated threats in YAML, JSON, and in the case of pytm, a SQL dump. pandas if one wants to perform further analysis).

But, the spreadsheet has the advantage of being something that one can export as CSV and store in version control (although not in the most readable format, but one could then load the CSV in e.g. The downside of the spreadsheet approach is that it’s a bit awkward to perform deeper analysis on, as well as follow one-to-many relationships. sort all threats by risk score, which you might do in order to determine which are the most important threats on which to focus your engineering effort. The downside is that it’s not easy (as it is with a spreadsheet) to e.g. The advantage of a ticketing system is that it’s easy to crosslink with mitigations or individual development tickets being implemented. a private GitHub repository) or a spreadsheet to store enumerated threats. In terms of storing the threats once enumerated, a first-order approach is to use an existing ticketing system (e.g. The threat modeling may also use existing attack libraries (like MITRE CAPEC) to aid in threat enumeration. Some of the above mentioned tools provide assistance for the threat enumeration process, using an existing methodology like STRIDE-per-element (in the case of Microsoft TMT and Threat Dragon), although these can only be used as an aid and need to be critically evaluated by the threat modeler to determine their relevance, and to add other potentially relevant threats. Some tools like OWASP Threat Dragon, Microsoft’s TMT and draw.io also provide a GUI to aid in this step. All of these tools enable one to generate the data flow diagrams from the version controlled DFD data.
ADVANTAGES OF MICROSOFT FREE THREAT MODELING CODE
On an continuous basis having the DFD elements and data flows stored in a version-controllable format like XML (as draw.io does), YAML (as threagile or threat-modeling does) or directly as code (as pytm does) is ideal. How to generate and store the diagrams?įor an initial iteration, taking a picture of a sketch or whiteboard drawing can be sufficient. When going about the above steps, several questions immediately come up, some of which have existing solutions in the ecosystem, and some of which do not.

This means that tools or processes that can aid the threat modeler perform these tasks on a continuous basis can be of great value. if attacker capabilities or motivations change. Even if a design remains static, the threats and mitigations should still be evaluated periodically as the threat landscape may evolve, e.g.

When the design of a system is modified, the threat modeling exercise may be performed again, resulting in needing to pass through the above steps again. determines which mitigations should be applied.Īutomated tools can potentially aid the threat modeler in each of these stages.enumerates threats using the diagram(s) as an aid, and then.generates at least one Data Flow Diagram (DFD) or other diagrams that model the software,.When performing software-centric threat-modeling on an application 1, one typically:
