<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Microsoft Application Threat Modeling Blog</title><link>http://blogs.msdn.com/threatmodeling/default.aspx</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>TAM 3.0</title><link>http://blogs.msdn.com/threatmodeling/archive/2009/06/30/tam-3-0.aspx</link><pubDate>Tue, 30 Jun 2009 21:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9810063</guid><dc:creator>talhahm</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9810063.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9810063</wfw:commentRss><description>&lt;P&gt;Been a little quiet lately on TAM related news but head over to Channel9 to hear &lt;A href="http://channel9.msdn.com/posts/Jossie/Thread-Analysis--Modeling-Tool-TAM-30/" mce_href="http://channel9.msdn.com/posts/Jossie/Thread-Analysis--Modeling-Tool-TAM-30/"&gt;RV talk about what's upcoming for TAM 3.0&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9810063" width="1" height="1"&gt;</description></item><item><title>Beautiful Security</title><link>http://blogs.msdn.com/threatmodeling/archive/2009/06/26/beautiful-security.aspx</link><pubDate>Fri, 26 Jun 2009 04:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9804748</guid><dc:creator>talhahm</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9804748.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9804748</wfw:commentRss><description>&lt;P&gt;My colleague &lt;A href="http://twitter.com/curphey" mce_href="http://twitter.com/curphey"&gt;Mark Curphey &lt;/A&gt;made available a &lt;A href="http://securitybuddha.files.wordpress.com/2009/06/beautifulsecuritycogsandleversmarkcurphey.pdf" mce_href="http://securitybuddha.files.wordpress.com/2009/06/beautifulsecuritycogsandleversmarkcurphey.pdf"&gt;chapter&lt;/A&gt; he wrote for a recently released &lt;A href="http://www.amazon.com/Beautiful-Security-Leading-Experts-Explain/dp/0596527489" mce_href="http://www.amazon.com/Beautiful-Security-Leading-Experts-Explain/dp/0596527489"&gt;security&amp;nbsp;book&lt;/A&gt;. I had a chance to read his chapter and it’s an absolutely fantastic read with some great thoughts! It’s a must read even if you have even a passing interest in the information security landscape.&lt;/P&gt;
&lt;P&gt;Check out more &lt;A href="http://securitybuddha.com/2009/06/22/free-pdf-download-of-beautiful-security-chapter-tomorrows-security-cogs-and-levers-here/" mce_href="http://securitybuddha.com/2009/06/22/free-pdf-download-of-beautiful-security-chapter-tomorrows-security-cogs-and-levers-here/"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;-Talhah&amp;nbsp; &lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9804748" width="1" height="1"&gt;</description></item><item><title>Tax Season... So Threat Model This...</title><link>http://blogs.msdn.com/threatmodeling/archive/2009/03/17/tax-season-so-threat-model-this.aspx</link><pubDate>Tue, 17 Mar 2009 22:23:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9484991</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9484991.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9484991</wfw:commentRss><description>&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;Tax Season! I came across a scenario that I wanted to share…&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;Scenario&lt;/SPAN&gt;&lt;/U&gt;&lt;/B&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;: You have some tax application that, let’s say, we’ll call OnlineTaxApp. You also have your online banking site where you manage your finances/investments/etc. called OnlineBankingSite. Then there is you looking to fill out your tax return. As part of the data you input into OnlineTaxApp, the application gives you an option to input your &lt;B style="mso-bidi-font-weight: normal"&gt;credentials from OnlineBankingSite&lt;/B&gt; with which the application can automatically import your interest/investment data, for example from the banking site. The same credentials that are used to manage your entire investment portfolio and banking data now being asked to provide to a third party who only wants access to a subset of information for read-only purposes! What do you do? Do you provide your credentials? What’s the risk here?&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;Well the risk is pretty straight forward. You just don’t know how the OnlineTaxApp is going to handle your credentials. &lt;I style="mso-bidi-font-style: normal"&gt;What if&lt;/I&gt; OnlineTaxApp stores those credentials? &lt;I style="mso-bidi-font-style: normal"&gt;What if&lt;/I&gt; the developer of this particular feature is harvesting the banking credentials in the backend from OnlineTaxApp? &lt;I style="mso-bidi-font-style: normal"&gt;What if&lt;/I&gt; OnlineTaxApp is just inadvertently logging the credentials somewhere which are just waiting to get lost in the wrong hands in the future? What if…&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;Clearly lots of &lt;I style="mso-bidi-font-style: normal"&gt;what if&lt;/I&gt; scenarios that we should be able to threat model and mitigate. The question really is who is accountable for the mitigation and how should this be mitigated?&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;The user? If I had to use this OnlineTaxApp, I would have two windows open. One window would be the OnlineTaxApp and the other window would be the OnlineBankingSite. Right after I imported the data into OnlineTaxApp, I would go to the other window and immediately change my credentials to OnlineBankingSite (no reason why the tax software would need my credentials ever again after it has imported the data!)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;OnlineTaxApp? Clearly, as part of the threat model for this application, we would model the use case of the import feature where the banking credentials are used. In this use case, the spotlight would be on the question of retention for this piece of data. And the sensible thing here would be to ensure proper handling of this data as it’s being used but then followed by proper disposal (out of memory, out of storage, etc.).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;OnlineBankingSite? This is where things get interesting. As you threat model this system you would see in your access control matrix that the role associated with the user credentials has access to not only &lt;U&gt;read&lt;/U&gt; data but also &lt;U&gt;update&lt;/U&gt;, &lt;U&gt;create&lt;/U&gt; and &lt;U&gt;delete&lt;/U&gt; other records. And yet for these APIs that this site must have exposed through which it can expose certain data to third party consuming applications, it is asking for the same credentials although it is only servicing read-only data: &lt;B style="mso-bidi-font-weight: normal"&gt;clearly a violation of principles of least privilege&lt;/B&gt;. So how could this have been designed a bit better… a bit more secure? Simple, you need a separate role with separate credentials that only allow read-only access to the data. You can setup a feature where you give the user of the site an option to create temporary export accounts, for example. It is this account’s credentials that you would then supply to a tax software where it can be ensured that the privilege of this account is aligned to the minimal set of functionality (i.e., read-only) that is exposed through the APIs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;None of this is really rocket science but in today’s world of complex, interconnected systems that we develop, it often gets difficult to assess, in a systematic fashion, the security consequences of features we develop. One more reason for threat modeling! Not only that, you see in this example, why it’s critical for line-of-business type applications such as banking and tax applications, to maintain an asset-centric view… just follow the data and the bad stuff will pop up. &lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; FONT-SIZE: 10pt; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face=Calibri&gt;-Talhah&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=1&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9484991" width="1" height="1"&gt;</description></item><item><title>Updated SDL TM Tool Now Available!!</title><link>http://blogs.msdn.com/threatmodeling/archive/2009/03/03/updated-sdl-tm-tool-now-available.aspx</link><pubDate>Tue, 03 Mar 2009 20:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9457482</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9457482.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9457482</wfw:commentRss><description>&lt;P&gt;Very&amp;nbsp;excited to announce that the SDL folks have released &lt;A href="http://download.microsoft.com/download/E/5/3/E5318D25-7AEF-4A66-A147-81BBA727F2C1/SDLTM.msi" mce_href="http://download.microsoft.com/download/E/5/3/E5318D25-7AEF-4A66-A147-81BBA727F2C1/SDLTM.msi"&gt;v3.1.4 of the SDL Threat Modeling Tool&lt;/A&gt;, as the latest and greatest release to apply the DFDs and STRIDE per Element approach to threat modeling.&amp;nbsp; It's a free download, so why not check it out?&lt;/P&gt;
&lt;P&gt;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9457482" width="1" height="1"&gt;</description></item><item><title>Announcing CAT.NET CTP &amp; Anti-XSS v3 BETA</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/12/15/announcing-cat-net-ctp-anti-xss-v3-beta.aspx</link><pubDate>Mon, 15 Dec 2008 20:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9222266</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9222266.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9222266</wfw:commentRss><description>&lt;P&gt;Continuing our work&amp;nbsp;to share the tools and techniques we use internally to maintain a secure application portfolio, we today &lt;A class="" href="http://blogs.msdn.com/cisg/archive/2008/12/15/anti-xss-3-0-beta-and-cat-net-community-technology-preview-now-live.aspx" mce_href="http://blogs.msdn.com/cisg/archive/2008/12/15/anti-xss-3-0-beta-and-cat-net-community-technology-preview-now-live.aspx"&gt;announced the release of CAT.NET CTP and the next version of Anti-XSS&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Irfan (Director of ACE) posted&amp;nbsp;a &lt;A class="" href="http://blogs.msdn.com/ace_team/archive/2008/12/15/new-versions-of-anti-xss-cat-net-available-today-and-some-background-and-history-about-the-ace-team.aspx" mce_href="http://blogs.msdn.com/ace_team/archive/2008/12/15/new-versions-of-anti-xss-cat-net-available-today-and-some-background-and-history-about-the-ace-team.aspx"&gt;nice entry on the ACE Team blog going over some of the history of these tools&lt;/A&gt; and how they came about...&lt;/P&gt;
&lt;P&gt;Happy Holidays!!&lt;/P&gt;
&lt;P&gt;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9222266" width="1" height="1"&gt;</description></item><item><title>SDL Threat Modeling Tool Now Available!</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/11/20/sdl-threat-modeling-tool-now-available.aspx</link><pubDate>Thu, 20 Nov 2008 09:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9128208</guid><dc:creator>talhahm</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/9128208.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=9128208</wfw:commentRss><description>&lt;P&gt;We're really excited that our colleagues over in the SDL team have released a &lt;A class="" href="http://msdn.microsoft.com/en-us/security/dd206731.aspx" mce_href="http://msdn.microsoft.com/en-us/security/dd206731.aspx"&gt;beta of their threat modeling tool&lt;/A&gt;, as &lt;A class="" href="http://blogs.msdn.com/sdl/archive/2008/11/10/sdl-announcements-at-teched-emea.aspx" mce_href="http://blogs.msdn.com/sdl/archive/2008/11/10/sdl-announcements-at-teched-emea.aspx"&gt;one of several SDL-related announcements&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;As threat modeling matures as a discipline, there's no single 'right' way to do it.&amp;nbsp;Both the TAM tool and the SDL tool address &lt;A class="" href="http://blogs.msdn.com/threatmodeling/archive/2008/09/19/new-sdl-threat-modeling-tool-coming-soon.aspx" mce_href="http://blogs.msdn.com/threatmodeling/archive/2008/09/19/new-sdl-threat-modeling-tool-coming-soon.aspx"&gt;specific needs that our user communities have&lt;/A&gt;.&amp;nbsp; The SDL tool is intended to be software centric, while TAM is asset centric.&amp;nbsp;It's great to be in a situation where we can really distinguish between these and make tools which are focused on the needs of the different customer groups.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9128208" width="1" height="1"&gt;</description></item><item><title>New SDL Threat Modeling Tool Coming Soon!</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/09/19/new-sdl-threat-modeling-tool-coming-soon.aspx</link><pubDate>Fri, 19 Sep 2008 19:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8959455</guid><dc:creator>talhahm</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8959455.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8959455</wfw:commentRss><description>&lt;P&gt;Even though this blog’s focus has always been the ACE Threat Modeling tool and methodology which is aligned to our SDL-IT process we use for line-of-business application in Microsoft, there is another security team in Microsoft dedicated to &lt;A class="" href="http://www.microsoft.com/sdl" mce_href="http://www.microsoft.com/sdl"&gt;SDL&lt;/A&gt;. And as part of that process, they are getting ready to &lt;A class="" href="http://msdn.microsoft.com/en-us/security/cc967276.aspx" mce_href="http://msdn.microsoft.com/en-us/security/cc967276.aspx"&gt;release&lt;/A&gt; the latest incarnation of their threat modeling&amp;nbsp;tool. &lt;/P&gt;
&lt;P&gt;The man behind that tool is Adam Shostack who we’ve been working with now for some time see how we can coordinate our efforts and provide better language and messaging around the two tools we have. Progress is being made on that end as we continue to work on our respective areas for threat modeling. &lt;/P&gt;
&lt;P&gt;At a high-level, here’s one way to think of the different focus of the two tools.&lt;/P&gt;
&lt;P&gt;The focus of SDL Threat Modeling is the products we develop such as Windows and SQL Server. In that space, the final deployment pattern is not known so you don’t know if that software is going to be instantiated to manage business-critical applications with customer credit cards or your nearby cafeteria menu. As such, the focus of the methodology and tool is on the software to try to ensure security of the underlying code.&lt;/P&gt;
&lt;P&gt;In the LOB-space, we deal with applications with business objectives clearly defined, deployment pattern well understood and, most importantly, a good understanding of the data assets being managed by the application. Examples could be the application we use to manage our expenses, manage our HR data, or yes, the application we use to look up the menu of our nearby cafeteria. So in this context, we take a deliberate, asset-focused approach in trying to understand the business risk in the application and help identify controls needed to manage that risk.&lt;/P&gt;
&lt;P&gt;The tool should be out by November.&lt;/P&gt;
&lt;P&gt;-Talhah&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8959455" width="1" height="1"&gt;</description></item><item><title>Is Threat Modeling Right For You?</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/06/19/is-threat-modeling-right-for-you.aspx</link><pubDate>Thu, 19 Jun 2008 02:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8619883</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8619883.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8619883</wfw:commentRss><description>&lt;P&gt;Great post by my friend and colleague around threat modeling in a series he's doing on application security lifecycle.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;A href="http://blogs.msdn.com/akshay_aggarwal/archive/2008/06/11/application-security-development-lifecycle-5a-is-threat-modeling-right-for-you.aspx"&gt;http://blogs.msdn.com/akshay_aggarwal/archive/2008/06/11/application-security-development-lifecycle-5a-is-threat-modeling-right-for-you.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;-Talhah&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8619883" width="1" height="1"&gt;</description></item><item><title>Threat Management the bigger picture</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/05/29/threat-management-the-bigger-picture.aspx</link><pubDate>Thu, 29 May 2008 06:56:05 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8557353</guid><dc:creator>RockyH</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8557353.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8557353</wfw:commentRss><description>&lt;p&gt;Threat Modeling is one those &amp;#8216;sciences&amp;#8217; that is just now starting to gel into something that can be implemented in a semi-automated fashion.&amp;#160; With &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;/e, we have a good approach to threat modeling that is both easy on the development team, and fairly comprehensive (perhaps too much so).&amp;#160; However there are still two very different camps on the subject within Microsoft, and a few more outside. &lt;/p&gt;  &lt;p&gt;There have been a lot of advances in groups such as PTA (Practical Threat Analysis &lt;a href="http://www.ptatechnologies.com/"&gt;http://www.ptatechnologies.com/&lt;/a&gt; ) as well as a push to formalize Attack Patterns (yours truly &lt;a href="http://en.wikipedia.org/wiki/Attack_patterns"&gt;http://en.wikipedia.org/wiki/Attack_patterns&lt;/a&gt; and &lt;a href="http://www.attackpatterns.org/"&gt;http://www.attackpatterns.org/&lt;/a&gt; , Mitre / Homeland Security &lt;a href="http://capec.mitre.org/"&gt;http://capec.mitre.org/&lt;/a&gt; , and some commissioned work by Cigital &lt;a href="https://buildsecurityin.us-cert.gov/daisy/bsi/articles/knowledge/attack.html"&gt;https://buildsecurityin.us-cert.gov/daisy/bsi/articles/knowledge/attack.html&lt;/a&gt; )&amp;#160; into something that can be used to assist not only Threat Modeling, but attack activity classification as well. &lt;/p&gt;  &lt;p&gt;In any case, a thorough, and comprehensive threat modeling methodology must begin to consider these things.&amp;#160; There aren&amp;#8217;t any established standards yet, but I feel there will be in the near future. For my money, there are a&amp;#160; few key things that a TM methodology must have:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;It must consider and be adaptable to the known usage pattern (TAMe/SDL-IT {Microsoft ACE Team})and unknown usage pattern (Snyder/Swiderski, SDL {Howard/Lipner}) approaches &lt;/li&gt;    &lt;li&gt;It must be expandable to adapt to proposed standards for classification of threats, attack patterns, and mitigations&amp;#160; &lt;/li&gt;    &lt;li&gt;It must be able to model any system from software to physical devices. The standard way to break down the blocks into Threat, Attack, Mitigation will fit almost anything. &lt;/li&gt;    &lt;li&gt;There must be a clear and concise way to explain the threat, the associated attacks, and the mitigation &lt;/li&gt;    &lt;li&gt;There must be a way to loop the TM process back into the development lifecycle, as well as provide visibility up the chain to management &lt;/li&gt;    &lt;li&gt;Tooling support is critical to the success of a process like this.&amp;#160; There are way way too many manual processes and methodologies involved in writing software. We need to remove the process burden from the team, and build it into workflow of the toolset.      &lt;ol type="a"&gt;       &lt;li&gt;The tool must be intuitive to use and not require a degree to figure it out &lt;/li&gt;        &lt;li&gt;It must provide the information most important to the particular viewer in context, and in a clear uncluttered manner &lt;/li&gt;        &lt;li&gt;It must provide a comprehensive view of the security profile of the application portfolio across the organization. &lt;/li&gt;        &lt;li&gt;It must provide information relevant to auditing and regulatory compliance &lt;/li&gt;        &lt;li&gt;It must provide trend analysis across the application portfolio to identify areas where training, and process improvements need to be made. &lt;/li&gt;        &lt;li&gt;It must integrate closely with common development platforms (&lt;a href="http://msdn.microsoft.com/en-au/vstudio/products/default.aspx"&gt;Visual Studio&lt;/a&gt;, &lt;a href="http://www-306.ibm.com/software/rational/"&gt;Rational&lt;/a&gt; &lt;a href="http://www-306.ibm.com/software/awdtools/developer/rose/index.html"&gt;Rose&lt;/a&gt;/&lt;a href="http://www-306.ibm.com/software/awdtools/clearcase/index.html"&gt;Clearcase&lt;/a&gt;) to reduce the need for re-entering data of the modeled system &lt;/li&gt;        &lt;li&gt;It must provide usable output to the development, test, deployment, and operations teams in the form of &lt;u&gt;actionable tasks&lt;/u&gt;. &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;When considering existing tools and processes, I tend to go with TAM/e as it is the one our team developed and the most applicable to typical in-house software development.&amp;#160; But when I talk about it the thing I get asked the most about &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;/e is; can it integrate with modeling tools like &lt;a href="http://www-306.ibm.com/software/rational/"&gt;Rational&lt;/a&gt; Rose/ClearCase and to a lesser extent the modeling tools in Visual Studio.&amp;#160; The biggest hurdle we have to overcome is the duplication of effort around re-entering data. Teams really get turned off when they find out that not only do they have to model their solution in Simply Objects/&lt;a href="http://www-306.ibm.com/software/rational/"&gt;Rational&lt;/a&gt; but then they have to do it all over again for &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;/e.&amp;#160; &lt;/p&gt;  &lt;p&gt;I wouldn&amp;#8217;t&amp;#8217; say that tooling has to necessarily be &amp;#8216;built into Visual Studio&amp;#8217; but it certainly has to integrate with it through inputs/outputs.&amp;#160; I suppose we should also pay homage to the fact that &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;/e in this case originated from application threat modeling. &lt;/p&gt;  &lt;p&gt;Since that is our baseline, that is where we tend to start. With the capabilities of the current &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;/e system, it is quite possible to model anything through an independent client, but the ability to interoperate with existing application, and system modeling tools is critical in my opinion. &lt;/p&gt;  &lt;p&gt;Our base &lt;a href="http://blogs.msdn.com/threatmodeling/"&gt;ACE Threat Modeling&lt;/a&gt; methodology, where threats are essentially broken down into three parts, the Threat, the Attacks, and the associated mitigations, can be used in a physical world.&amp;#160; I did just such a thing with &lt;a href="http://msdn.microsoft.com/en-us/security/aa570413.aspx"&gt;TAM&lt;/a&gt;. I modeled physical attacks on an ATM for a bank as a demonstration exercise. &lt;/p&gt;  &lt;p&gt;Here&amp;#8217;s the reader&amp;#8217;s digest version:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Vandalism&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Threat&lt;/b&gt; &amp;#8211; Denial of Service due to damage of the machine     &lt;br /&gt;&lt;b&gt;&amp;#160;&amp;#160;&amp;#160; Attack&lt;/b&gt; &amp;#8211; Damage through blunt weapon attacks     &lt;br /&gt;&lt;b&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Vulnerability&lt;/b&gt; - Machines made of mostly plastic parts     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Mitigation&lt;/b&gt; - Use Cast Iron parts     &lt;br /&gt;&lt;b&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Vulnerability&lt;/b&gt; - Exposed telephone style button&lt;b&gt;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Mitigation&lt;/b&gt; &amp;#8211; Use recessed buttons     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Attack&lt;/b&gt; - Damage through vehicle intrusions     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Vulnerability&lt;/b&gt; -&amp;#160; ATM exposed in outdoor settings     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Mitigation&lt;/b&gt; &amp;#8211;&amp;#160; &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Recess ATM behind wall with only interop panel exposed     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Install Secura-Posts in front of ATMs&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Skimming&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Threat&lt;/b&gt; &amp;#8211; exposure of ATM card/account data due to the presence of skimming devices on machines     &lt;br /&gt;&amp;#160; &lt;b&gt;Attack&lt;/b&gt;-Skimming device placed over card reader slot     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Vulnerability&lt;/b&gt; &amp;#8211; User cannot tell when a skimming device is present     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;b&gt;Mitigation&lt;/b&gt; &amp;#8211; place an LCD screen along edge of card slot. When user inserts card, ask user to enter code displayed on LCD. If the user cannot see the LCD, skimming device present, notify bank personnel&lt;/p&gt;  &lt;p&gt;etc&lt;/p&gt;  &lt;p&gt;Obviously you wouldn&amp;#8217;t feed this into &lt;a href="http://msdn.microsoft.com/en-au/vsts2008/products/bb964615.aspx"&gt;Team Foundation Server&lt;/a&gt;. But you may need to feed it into the bank&amp;#8217;s risk management system. So having the ability to define exports/imports to other systems is critical.&amp;#160; As any good &amp;#8216;customer&amp;#8217; I&amp;#8217;ll leave the implementation to our development team, but if I had to speculate, I would envision this to be something like &lt;a href="http://www.microsoft.com/biztalk/en/us/default.aspx"&gt;BizTalk&lt;/a&gt;&amp;#8217;s schema transform mapping system. You have the TM schema on the left, the target schema on the right, you drag fields from on to the other and the tool creates the XSLT to make the magic happen during output. (hint hint)&lt;/p&gt;  &lt;p&gt;With this simple process in place, you can model any threat/vulnerability/mitigation from a software system, to defending a radio comms truck on a battlefield. There is a tendency, especially in academia, to over complicate things for the sake of appearing to be doing new research.&amp;#160; KISS is the key. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Comparing Risk Analysis to Threat Modeling&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;During some discussions on this topic one of the guys on our team said: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;&amp;quot;All security people know about Risk Assessment. If the end goal is to measure (loose definition) Risk, then why still call in Threat Modelling? Modelling the threats is a part of the goal (if you think about what ACE does its find the threats and vulns) but it&amp;#8217;s not the end goal and it&amp;#8217;s the end goal that customers care about, managing risk.&amp;quot;&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I&amp;#8217;m not sure I&amp;#8217;d generalize that much. Security people also care about Risk Management, not just assessment. If you can identify and assess a risk, you are only &amp;#189; way there. Doing something about it needs to be part of the process.&amp;#160; So if Threat Modeling is the first &amp;#189;, would Threat Management be a more appropriate term for the full process?&amp;#160; &lt;/p&gt;  &lt;p&gt;Hmm...the more I think about it the more I like that term.&amp;#160; It&amp;#8217;s akin to the paring of Risk assessment and Risk Management. Risk Assessment is what those rent-an-auditors do.&amp;#160; But Risk Management completes the circle.&amp;#160; Threat Modeling, provides the context and identifies the areas to be covered, but Threat Management completes the process. Threat Management should be a part of any good Risk Management strategy. &lt;/p&gt;  &lt;p&gt;Another person on the team said:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;As I understand it, threat modeling is the &lt;u&gt;combination&lt;/u&gt; of risk analysis and risk management. &lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;TAM for example provides the functionality to assign a risk to each threat, decide risk management strategy for each threat (reduce/accept/transfer/avoid) and choose appropriate countermeasures. &lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Risk analysis has these steps:-&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;1. Asset and data valuation&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;2. Identification of threats and vulnerabilities to the assets&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;3. Calculation of risk for each threat&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Risk management has the following steps:-&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;1. Choose what to do with the risk based on the risk appetite (reduce/accept/transfer/avoid the risk) &lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;2. If you choose to reduce the risk, choose a countermeasure commensurate with the level of risk.&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;em&gt;Threat modeling does all the above 5 steps and hence covers both risk assessment and management. &lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;I believe that Threat Modeling is a subset of an RA process.&amp;#160; There is more to RA/RM than threat modeling. There are many areas of RM that do not include any sort of &amp;#8216;attack&amp;#8217; portion.&amp;#160; There are many instances where RA/RM is performed on things that are not systems in any stretch of the term. While TM is a Risk Management process, it is not completely transferable as Risk Management.&amp;#160; &lt;/p&gt;  &lt;p&gt;Think of it this way, Risk Management is a base class, while Threat Management inherits from Risk Management. &lt;/p&gt;  &lt;p&gt;Risk Management ideas/principals can be used on almost anything, but Threat Management is generally restricted to implementations of things. &lt;/p&gt;  &lt;p&gt;You can have internal risks, and their mitigations, but there may not be any &amp;#8216;attacks&amp;#8217; associated with it.&amp;#160; TM comes into play where you may have nefarious entities actively or accidentally damaging your stuff. &lt;/p&gt;  &lt;p&gt;For Example, investment firms and financial organizations do a lot of RA against stock and share prices.&amp;#160; Yet there is nothing they can do to prevent them from actually crashing, and there is no attack or attacker involved.&amp;#160; This is not something you can threat model based on commonly understood or applied principals of TM.&amp;#160; You can&amp;#8217;t identify a vulnerability that you can provide an actionable mitigation for.&amp;#160; So the best you can do is plan for failure based on probability and likelihood and shore up your decisions on those plans.&lt;/p&gt;  &lt;p&gt;Threat Management is differentiated by the fact that there is an identifiable vulnerability that could be attacked intentionally or accidentally where an actionable mitigation can be executed to remove or reduce the identified vulnerability. (look, a new definition just appeared. ) &lt;/p&gt;  &lt;p&gt;So while I agree that TM is PART of an RM strategy, I believe they are distinct and different things with one being a subset of the other.&amp;#160; Ask yourself, isn&amp;#8217;t it important to be able to clearly identify the holes you can, and be able to do something about the hole itself? In standardized RM strategies, you can't do anything about the stock crashing, you can only decide if you are willing to take the chance that the value will hold or not.&amp;#160; You will either buy the stock, or you won't.&amp;#160; &lt;/p&gt;  &lt;p&gt;So, Threat Management is a part of any good Risk Management strategy.&amp;#160; It includes identifying the threats, and providing actionable items that can address a vulnerability in the system/thing being modeled. This process is essential in the larger picture of Risk Management which not only takes into account system/thing based risks, but postures, and approaches to risk in general at a higher level. &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8557353" width="1" height="1"&gt;</description></item><item><title>Using Threat Models Beyond the Design Stage</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/05/22/using-threat-models-beyond-the-design-stage.aspx</link><pubDate>Thu, 22 May 2008 04:49:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8531276</guid><dc:creator>RockyH</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8531276.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8531276</wfw:commentRss><description>&lt;p&gt;Threat Modeling is no longer the obscure magic is used to be. With the creation of tools like the &lt;a href="http://go.microsoft.com/fwlink?linkid=77002"&gt;Threat Analysis and Modeling tool&lt;/a&gt; from the ACE Team, Threat Modeling is now easier to implement, faster and more comprehensive. Threat Modeling&amp;#160; is the cornerstone of any good Secure Development Lifecycle.&amp;#160; One of the reasons it became such an important part of the process is because it provides visibility of the potential threats to an application, and how to defend against them before you start writing code.&amp;#160; Many teams that implement Threat Modeling, create their threat models, get their list of countermeasures that they have to put into the code and then go make a system.&amp;#160; People don&amp;#8217;t realize just how valuable a threat model can be to the team, beyond the development stage.&amp;#160; Another huge benefit of Threat Modeling is how it can help other teams during later phases of the development life cycle.&amp;#160; Testing, Deployment and Incident Response are some of the areas that gain huge benefits from threat models.&amp;#160; &lt;/p&gt;  &lt;p&gt;Testing teams are often focused on feature tests, performance tests and acceptance testing.&amp;#160; More and more they are checking for basic security vulnerabilities as part of the normal course of testing.&amp;#160; A Threat Model is a very suitable guide to assist the security testing process.&amp;#160; Not only does it increase the security awareness of the test team, but it will help the testers create tests to ensure that the countermeasures identified in the threat model were put in place correctly.&amp;#160; After all, if you don&amp;#8217;t test the countermeasure, how can you be sure you got it right?&lt;/p&gt;  &lt;p&gt;The TAM tool can also be used to create work items in TFS for the testers to do exactly that.&amp;#160; For each countermeasure work item that the tool generates for the developers to implement, TAM generates a corresponding test for the testers to execute to verify the countermeasure.&amp;#160; This makes creating a test plan for the application much more comprehensive and valuable. &lt;/p&gt;  &lt;p&gt;Beyond testing is the deployment phase.&amp;#160; During deployment a threat model can greatly improve the deployment teams awareness of the security profile of the application, it&amp;#8217;s attack surface, and the potential security hot spots of the application such as trust boundaries and critical data storage areas.&amp;#160; All of this information helps the deployment team increase their ability to deploy the application correctly, and give it the proper attention it deserves.&amp;#160; This will increase the efficiency of deployment, and any potential incident response activities. &lt;/p&gt;  &lt;p&gt;As much as we would like to believe that applications survive well on their own after they are deployed, there is always something that comes up.&amp;#160; We would all like to think that our applications are hack-proof and that they will never suffer a security incident.&amp;#160; But we don&amp;#8217;t know what we don&amp;#8217;t know, and can&amp;#8217;t be sure that some new attack won&amp;#8217;t be created.&amp;#160; In these situations, we need to be able to respond quickly and effectively to these sorts of incidents.&amp;#160; With a good application threat model responding to security incidents is much more efficient. &lt;/p&gt;  &lt;p&gt;With a good threat modeling practice in place, when a new attack type appears the security team examines the attack, scrutinizes it, formulates appropriate defenses, and generates awareness of the attack.&amp;#160; They can update the Attack Library in the TAM tool, and instruct teams to re-generate their threats to see if their application is subject to the new threat or not.&amp;#160; This will very quickly tell you if you have to start getting your emergency patching process rolling, or if you are safe from this new type of attack. This may not seem like much but consider what this provides in the bigger picture. &lt;/p&gt;  &lt;p&gt;With the click of a button, in the case of the TAM tool, you will instantly know if you have to patch your application immediately, or if you aren&amp;#8217;t affected by the attack.&amp;#160; With the Enterprise version of TAM, you can even see if applications you are dependent on are subject to the new attack or not.&amp;#160; If you are, the threat modeling process will notify you, provide you the countermeasure you need to implement and provide the test you need to ensure the countermeasure is implemented correctly It will also create updated reports so that the entire team is aware of the issues, their responsibilities and compliance requirements very quickly.&amp;#160; What this all means is that your patching cycles are much shorter, the application is maintained in a secure manner, which all results in increased customer satisfaction and loyalty.&amp;#160; &lt;/p&gt;  &lt;p&gt;Ultimately, you can say that good Threat Modeling practices = more customer satisfaction and loyalty.&amp;#160; After all, isn&amp;#8217;t that what we&amp;#8217;re really after? &lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8531276" width="1" height="1"&gt;</description></item><item><title>Hello Secure World</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/05/05/hello-secure-world.aspx</link><pubDate>Mon, 05 May 2008 04:49:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8459608</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8459608.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8459608</wfw:commentRss><description>&lt;P&gt;An awesome site to check out which also includes virtual labs you can leverage for secure coding!&lt;/P&gt;
&lt;P&gt;Check it out: &lt;A href="http://www.hellosecureworld.com/"&gt;www.hellosecureworld.com&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8459608" width="1" height="1"&gt;</description></item><item><title>Customizing TAM Dropdown lists</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/03/17/customizing-tam-dropdown-lists.aspx</link><pubDate>Mon, 17 Mar 2008 20:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8295427</guid><dc:creator>rvanil</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/8295427.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=8295427</wfw:commentRss><description>&lt;P&gt;One of the most frequent questions we get is that someone is using a technology that is not listed in the “Technology” drop downs and how can they customize it. Most of the dropdowns are part of the metadata system in the tool and are stored in an XML file in the user’s profile. Fortunately, the v2.1.2 release of the tool contains UI to edit this. The following steps will allow you to customize the list.&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Go to “Tools” Menu and select “Options” and go to “Metadata Editor” tab.&amp;nbsp;&lt;BR&gt;&lt;IMG title="TAM Options - Metadata Editor" style="WIDTH: 407px; HEIGHT: 421px" height=421 alt="TAM Options - Metadata Editor" src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCR-UYhgVk8sDv_I7DYQERYsfirNOcPVBbI0c61714dDtp9BNgyAsSbMqCk57R2In1Q" width=407 mce_src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCR-UYhgVk8sDv_I7DYQERYsfirNOcPVBbI0c61714dDtp9BNgyAsSbMqCk57R2In1Q"&gt;&lt;/LI&gt;
&lt;LI&gt;From the “List Name:” drop down select “Technology”. &lt;BR&gt;&lt;IMG title="List Name" style="WIDTH: 385px; HEIGHT: 93px" height=93 alt="List Name" src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCTYqd43vhJVfkgp8MszdDYEy7H7h5PS5ArWEctRwyA7R8IhuI3EHlfFBNoQ8TUjewQ" width=385 mce_src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCTYqd43vhJVfkgp8MszdDYEy7H7h5PS5ArWEctRwyA7R8IhuI3EHlfFBNoQ8TUjewQ"&gt;&lt;/LI&gt;
&lt;LI&gt;Enter the new technology and click “Add” to add it to the list.&lt;BR&gt;&lt;IMG title="New Item" style="WIDTH: 395px; HEIGHT: 142px" height=142 alt="New Item" src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCQ_WBu1sOg0EnpdD2kNgTy0rJcQ2GuPlJOluTkgxgbDuNdNV0PST0qM3PWYVayKVb0" width=395 mce_src="http://mfagrq.bay.livefilestore.com/y1pav-Onr7arCQ_WBu1sOg0EnpdD2kNgTy0rJcQ2GuPlJOluTkgxgbDuNdNV0PST0qM3PWYVayKVb0"&gt;&lt;/LI&gt;
&lt;LI&gt;Click “Save” to save the list to the XML file. Note that after saving the list, if you are already on a Component, you might have switch to a different item and back to the Component to reflect the changes. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;The above steps can be used to add items to any of the following drop down lists in the tool:&lt;BR&gt;&lt;BR&gt;
&lt;TABLE class="" borderColor=black cellSpacing=1 cellPadding=3 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Item Type&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;&lt;B&gt;Property Name&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Role&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;Authentication Mechanism&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Role&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;Approximate number of Identities (Weight)&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Data&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;Data Classification&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Component&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;Technology&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top width=121&gt;
&lt;P&gt;&lt;B&gt;Component&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=313&gt;
&lt;P&gt;Service Type&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;Any new item in the dropdown if selected in any Role/Data/Component will be saved with the threat model. If you get a threat model with new items in it, the new items will automatically be synchronized with your list. You can also manually synchronize the lists from the opened threat model by going to the “Tools” menu and selecting “Synchronize Lists”. Select the appropriate list properties and click “Save”.&lt;/P&gt;
&lt;P&gt;If you want to edit the XML file manually, you can find it at %USERPROFILE%\AppData\Roaming\Microsoft\TAM\Temp\AppLists.xml.&lt;/P&gt;
&lt;P&gt;Thanks&lt;BR&gt;Anil Revuru&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8295427" width="1" height="1"&gt;</description></item><item><title>[VIDEO] Threat Modeling and Discovering Security Issues</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/02/18/video-threat-modeling-and-discovering-security-issues.aspx</link><pubDate>Mon, 18 Feb 2008 08:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7769580</guid><dc:creator>talhahm</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/7769580.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=7769580</wfw:commentRss><description>&lt;P&gt;Raffaele Rialdi, a Microsoft Developer Security MVP, sits down with Lori Grosland at TechEd ATE in Barcelona 2007 and talks about security and the Threat Analysis &amp;amp; Modeling tool (with demo). &lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.virtualteched.com/pages/videossearch.aspx?KW=raffaele"&gt;http://www.virtualteched.com/pages/videossearch.aspx?KW=raffaele&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Also check out his blog at &lt;A href="http://blogs.ugidotnet.org/raffaele"&gt;http://blogs.ugidotnet.org/raffaele&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7769580" width="1" height="1"&gt;</description></item><item><title>Threat Modeling: Diving into the Deep End</title><link>http://blogs.msdn.com/threatmodeling/archive/2008/01/09/threat-modeling-diving-into-the-deep-end.aspx</link><pubDate>Wed, 09 Jan 2008 03:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7035898</guid><dc:creator>talhahm</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/7035898.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=7035898</wfw:commentRss><description>&lt;P&gt;IEEE&amp;nbsp;paper on&amp;nbsp;the TAM tool.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;"Ford Motor Company is currently introducing threat modeling on strategically important IT applications and business processes. The objective is to support close collaboration between IT Security &amp;amp; Controls (the ITS group at Ford) and its business customers in analyzing threats and better understanding risk. To accomplish this, a core group of security personnel have piloted Microsoft’s Threat Analysis and Modeling process and tool on a dozen projects. Here, we discuss this TAM process, its benefits and challenges, and some deployment solutions."&lt;/P&gt;
&lt;P&gt;&lt;A href="http://buildsecurityin.uscert.gov/daisy/bsi/resources/published/articles/932.html" mce_href="http://buildsecurityin.uscert.gov/daisy/bsi/resources/published/articles/932.html"&gt;http://buildsecurityin.uscert.gov/daisy/bsi/resources/published/articles/932.html&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;-Talhah&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7035898" width="1" height="1"&gt;</description></item><item><title>A discussion on threat modeling</title><link>http://blogs.msdn.com/threatmodeling/archive/2007/10/30/a-discussion-on-threat-modeling.aspx</link><pubDate>Tue, 30 Oct 2007 05:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5776469</guid><dc:creator>talhahm</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/threatmodeling/comments/5776469.aspx</comments><wfw:commentRss>http://blogs.msdn.com/threatmodeling/commentrss.aspx?PostID=5776469</wfw:commentRss><description>&lt;P&gt;There is a discussion I had recently with a few folks over email around threat modeling that I thought would be nice to share on this blog. I’ll reduce the discussion down to 3 questions/responses.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Question&lt;/STRONG&gt;&lt;/U&gt;: Where does the line between Threat Modeling and documenting operational best practices begin and end?&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Response&lt;/STRONG&gt;&lt;/U&gt;: A good threat model document’s OUTPUTs should be used as the INPUTs to tech specs and operational best practices. E.g., I just threat modeled our new Data Backup process and discovered a flaw that I can mitigate with a technique X that is not documented in our guidance, operational documents, policies, standards, etc. So maybe I should update them. And WOW, wouldn’t it be great if then I can share this knowledge with folks doing TMs against same similar kinds of processes so they don’t have to research X? This is the example of the interplay between Threat Models and CTL in TAMe.”&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Question&lt;/STRONG&gt;&lt;/U&gt;: How does an operational ‘attack’ like stealing backup tapes fit into CIA or STRIDE?&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Response&lt;/STRONG&gt;&lt;/U&gt;: CIA is a THREAT categorization and STRIDE is more of a SOFTWARE ATTACK categorization. Threats are like “what if” scenarios: what if my credit card numbers are stolen… what if my backup tapes are stolen. Attacks are active actions that give rise to the realization of a threat: I can SQL inject on this entry point to get credit cards… I can steal the backup tapes from the courier’s truck while it’s in transit. Jumping to think about attacks without knowing the threat is ineffective as you don’t have any prioritization (do I need to worry about data integrity here with this attack? Do I need to worry about DoS attack here for availability compromise?). &lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Question&lt;/STRONG&gt;&lt;/U&gt;: How is TAMe (Threat Analysis &amp;amp; Modeling Enterprise) intended to model non-application scenarios (operational, infrastructure, etc.)”&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Response&lt;/STRONG&gt;&lt;/U&gt;: TAM/TAMe has been application focused (through the nomenclature and interface) on purpose so even though it may not seem like it can model operational/infrastructure/etc. scenarios, it EASILY CAN*. For operational scenario, for example, you would identify different component (one of those would be the courier’s car). You would also define Roles (one of those would be the driver/courier). You would also define data pieces (one of those would be the backup tapes). Then you would bind these pieces together under a use cases through a sequence of calls. One of these calls would be the driver (Role) initiating a transfer (Action) of backup tapes (Data) into the truck (Component). At this point, the tool/process would force you to consider three distinct threats in isolation for this call:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;U&gt;Confidentiality&lt;/U&gt;: What if someone takes the backup tapes, makes a copy, and then returns the tape as if nothing happened.&lt;/LI&gt;
&lt;LI&gt;&lt;U&gt;Integrity&lt;/U&gt;: What is someone takes the tapes, overrates the content, and then returns the tapes as if nothing happened.&lt;/LI&gt;
&lt;LI&gt;&lt;U&gt;Availability&lt;/U&gt;: What is someone takes the tapes. Period.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Then when you start looking at these 3 threats, and propose different countermeasures (we’ll skip attacks):&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;&lt;U&gt;Confidentiality&lt;/U&gt;: I need to make sure data is encrypted.&lt;/LI&gt;
&lt;LI&gt;&lt;U&gt;Integrity&lt;/U&gt;: I need to make sure data is digitally signed so it can’t be tampered.&lt;/LI&gt;
&lt;LI&gt;&lt;U&gt;Availability&lt;/U&gt;: (operational) I need to make sure the backup tapes are always in site and secured in the truck (e.g., through physical locks).&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;Threat modeling is &lt;U&gt;not&lt;/U&gt; a magic process/tool where you just throw stuff in and out comes goodness. Threat modeling is a structured way of thinking about and addressing the risks to what you are about to build rather than going about it randomly.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;As always, continue to provide your feedback/questions through submitted comments or sending an email through the ‘Email’ link on the top.&lt;BR&gt;*Imagine in the future being able to go into TAM and Select File - &amp;gt; New -&amp;gt; Operational Threat Model or Application Threat Model or Infrastructure Threat Model… oops, I’ve said too much... :-)&lt;/P&gt;
&lt;P&gt;Thanks.&lt;/P&gt;
&lt;P&gt;-Talhah&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5776469" width="1" height="1"&gt;</description></item></channel></rss>