![]() |
![]() |
|
November 17, 2005New Microsoft Threat Modeling SlidedeckAs promised, Dan has sent me his slidedeck that he presented at the Westcoast Security Forum, which you can now download from my blog here. I'd like to point out a few interesting things I learned from it. First off... I LOVE the fact he uses the Common Criteria for Information Technology Security Evaluation to show the security concept and relationships on "why" threat modeling matters. I thought it was a smart idea to show that this isn't a "Microsoft" thing.
I also was surprised to learn that in the updated threat modeling process at Microsoft, the step to build threat trees is now considered an optional step. The main reason seems to be that you REALLY need to have a security guru who understands the system and the threats to it to properly define the tree in any sort of useful depth. (To those of my students that I have taught secure coding to, this is what I call attack trees). It is interesting that Microsoft found that in practice, this should be an optional step. I can't say I disagree here. If I had to sacrifice anything during a threat model for the sake of time, it would be the attack tree that wouldn't get done. So I guess I shouldn't be all that surprised. I also liked the changes in the data flow diagrams (DFD). Now these aren't actually changes, as they are defined in the Threat Modeling book and Writing Secure Code (Second Edition). What is different is the clarity of showing privilege boundaries and defining that generally going two levels deep in a DFD is far enough. I also really appreciated how Dan showed implementation examples of the different components in a DFD, and more importantly... common DFD "bugs" and how to fix them. Actually... I think that was critical to his presentation, as I have seen myself having to correct those same exact things when further reviewing my own threat models. Then Dan did something that actually impressed me. As information security professionals, one of the common realisms we understand is that of the three pillars of information security that fall under the CIA triad. Without them, you cannot build a secure system. For those that don't know, the CIA triad is composed of the principles of :
Why I was impressed was the fact Dan showed how STRIDE categories fit against the CIA triad. Very few developers get that. Very few even consider their software from an infosec point of view, which is probably why I have a job. :) This, to me, shows a maturing in how Microsoft is viewing threat modeling and secure software development as a whole. When I hear people saying things like spoofing and tampering are anti-I in the CIA triad, I blush. They get it! They really do. I also appreciated the fact Dan presented a very simple chart showing Threat Types by Asset Type. One of the things I have found over time is the fact that after you do a few DFDs, you notice common patterns and solutions to the same problems. His chart broke that down quickly, and in a simple manner. I might actually have to steal that one for my presentations. Hope that's ok Dan. :) Anyways, there is a lot for you to see and read. Feel free to download his slidedeck and check it out. Posted by SilverStr at November 17, 2005 08:32 AM | TrackBackComments
Give Dan a heads up to clean up the PPT's document properties. They list Cory Simmonsen as the author... Posted by: Louis Leone at November 17, 2005 01:15 PM |
![]() ![]()
My 5 Favorite Books
Writing Secure Code
Secure Programming Cookbook Security Engineering Secure Coding Principles & Practice Inside the Security Mind ![]()
My 5 Favorite Papers
Smashing the Stack
Penetration Studies Covert Channel Analysis of Trusted Systems DoD Trusted Computer System Evaluation Criteria NSA Security Recommendation Guides ![]()
Archives
April 2007
March 2007 February 2007 January 2007 December 2006 November 2006 October 2006 September 2006 August 2006 July 2006 June 2006 May 2006 April 2006 March 2006 February 2006 January 2006 December 2005 November 2005 October 2005 September 2005 August 2005 July 2005 June 2005 May 2005 April 2005 March 2005 February 2005 January 2005 December 2004 November 2004 October 2004 September 2004 August 2004 July 2004 June 2004 May 2004 April 2004 March 2004 February 2004 January 2004 December 2003 November 2003 October 2003 September 2003 August 2003 July 2003 June 2003 May 2003 April 2003 March 2003 February 2003 January 2003 December 2002 November 2002 October 2002 September 2002 August 2002 July 2002 ![]() |
|