Security is a hot topic today(certainly with the recent Sony hack). Integrating security into an application cannot be an afterthought but should be an integrated part of the software development lifecycle. One approach to tackle this problem is the Security Development Lifecycle as adopted by Microsoft:
The Security Development Lifecycle (SDL) is a software development process that helps developers build more secure software and address security compliance requirements while reducing development cost.
Threat modeling is an invaluable part of the Security Development Lifecycle (SDL) process. By applying a structured approach to threat scenarios during the design phase of development helps teams more effectively and less expensively identify security vulnerabilities, determine risks from those threats, and establish appropriate mitigations. One tool to help you do this is – Microsoft Threat Modeling Tool 2014. It’s available as a free download from Microsoft Download Center here.
Microsoft Threat Modeling Tool 2014 comes with a base set of threat definitions using STRIDE categories. This set includes only suggested threat definitions and mitigations which are automatically generated to show potential security vulnerabilities for your data flow diagram. You should analyze your threat model with your team to ensure you have addressed all potential security pitfalls. To offer more flexibility, Microsoft Threat Modeling Tool 2014 gives users the option to add their own threats related to their specific domain.
More information:
- Microsoft Security Development Lifecycle (SDL)
- Uncover Security Design Flaws Using the STRIDE Approach
- Getting Started with Threat Modeling: Elevation of Privilege (EoP) Game
- Reinvigorate your Threat Modeling Process
- Threat Models Improve Your Security Process
- Threat Modeling: Designing for Security (BOOK)