<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title><![CDATA[[SecurityRatty] tag: hamster]]></title>
    <link>http://securityratty.com/tag/hamster</link>
    <description></description>
    <pubDate>Mon, 01 Oct 2007 21:15:35 +0000</pubDate>
    <generator>iRatty Engine</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <item>
      <title><![CDATA[Hansei and the CISO]]></title>
      <link>http://securityratty.com/article/345fa11bf7640e73e9bb05e7b33128f0</link>
      <guid>http://securityratty.com/article/345fa11bf7640e73e9bb05e7b33128f0</guid>
      <description><![CDATA[Continuing our series on Hansei-Kaizen, youll recall that my thoughts are about applying the concept of relentless reflection (Hansei) and continuous improvement (Kaizen) to security management. Today...]]></description>
      <content:encoded><![CDATA[<p>Continuing our series on Hansei-Kaizen, you&#8217;ll recall that my thoughts are about applying the concept of relentless reflection (Hansei) and continuous improvement (Kaizen) to security management.  Today is a good day to talk about <em><strong>what should we be reflecting about</strong></em>, and <em><strong>what is needed for reflection</strong></em>.</p>
<p>I say today is a good day for two reasons:  1.)  BT&#8217;s CSO Jill Knesek wrote an article called &#8220;<strong><a href="http://bt-securethinking.blogspot.com/2008/09/keys-to-establishing-end-to-end.html">Keys to establishing an end-to-end security strategy</a></strong>&#8221; which begs some discussion within context, and 2.)  <strong><a href="http://twitter.com/sarapeters">Sara Peters on Twitter</a></strong> last night wanted to know why I thought &#8220;risk management&#8221; requires more than what most &#8220;best practices&#8221; around the subject suggest the effort requires.</p>
<p><strong>WHAT SHOULD WE BE REFLECTING ABOUT?</strong></p>
<p>Jill Knesek&#8217;s article gives us a rough outline of how to develop a security strategy.  It&#8217;s fairly high-level, Pragmatic CSO-ish type stuff.  It gives us a nice outline of</p>
<ul>
<li>Get a seat at the table</li>
<li>Process</li>
<li>People</li>
<li>Technology</li>
</ul>
<p>Nothing earth-shattering there.  But it is a very nice broad CISO-level taxonomy about what we have to reflect on.  The <em><strong>need</strong></em> to reflect is driven by something Jack told me long ago,</p>
<blockquote><p>&#8220;The amount of risk we have is a function of the decisions we made and our ability to execute on them from some point in the past&#8221;.</p></blockquote>
<p style="padding-left: 30px;"><em>As an Aside:  So Sarah if you&#8217;re reading, this quote does much to explain why I said I disagree with much of what our industry calls &#8220;risk management&#8221;.  We tend to define the process of risk management as essentially a tactical &#8220;issue whack-a-mole&#8221; exercise. </em><em><strong>Find the issue.  Analyze the &#8220;risk&#8221; around the issue.  Fix the issue.  Repeat. </strong> This hamster-wheel-of-pain, while sometimes an effective tool for the CISO, is incongruous with addressing root causes (the ability to match a tactical issue to the strategic shortcoming that created the issue is up to the expertise of the analyst or consultant).  It is only Kaizen without (good) Hansei, if you will.</em></p>
<p>Back to what Jill is writing - the sorts of things we should be reflecting about can be thought of in context of her outline.  Namely:</p>
<ol>
<li>Once you have a seat at the table, what is the nature of that relationship?  Who are you reporting to and what are their concerns? What and how are you reporting and how might that be addressing their concerns?</li>
<li>What processes are in place?, How do you know that those are the processes that should be in place? If they are, what kind of job am I doing at those processes?</li>
<li>What is the quality of the skills and resources I have from a people perspective, and how do I know if they are adequate?  How do I know that the training they petition me for will effectively reduce organizational risk?</li>
<li>Are the Technology solutions I have in place effective, are we managing them effectively, and what sort of States of Knowledge could they provide me with (to make good decisions and execute upon them, from above)?</li>
</ol>
<p>This, for the CISO, is Hansei.  The continuous management of it is Kaizen.  Not to particularly pick on Jill&#8217;s article, but creating a &#8220;risk register expressed in ALE&#8221; might be fine if you&#8217;re trying to explain to the board what your &#8220;first 100 days in office&#8221; will be like - but these sorts of lists are usually not very strategic in nature, and as such, depending on the outcome of that risk register (and the models used to create it) <em><strong>it might not actually be useful.</strong></em></p>
<p><strong>WHAT IS NEEDED FOR REFLECTION?</strong></p>
<p>So what is needed for this sort of CISO-level Hansei?</p>
<p>The CISO must understand the</p>
<ul>
<li>Current State of Nature</li>
</ul>
<p>turn that into a</p>
<ul>
<li>State of Knowledge</li>
</ul>
<p>and use that to create a</p>
<ul>
<li>State of Wisdom.</li>
</ul>
<p><strong>CREATING A STATE OF NATURE FOR THE IRM PROGRAM<br />
</strong></p>
<p>This Current State of Nature determination be done by applying analytical methods to a program audit.  We must understand questions like,  &#8220;What is in that program and how is it structured?&#8221;  before we can answer questions about &#8220;how (good/bad) are we at managing risk?&#8221;</p>
<p>There are many ways to structure an IRM program, but as an example - below is a graphic shared with me by Adrian Seccombe.  For those who know Adrian and the Trust Model - this is classified as &#8220;white&#8221; so it&#8217;s OK for public display and consumption.  But here&#8217;s what Adrian is trying to build at a high level:</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.riskmanagementinsight.com/media/images/weblog/Program.jpg" alt="" width="283" height="356" /></p>
<p>So regarding Adrian&#8217;s program diagram:</p>
<ol>
<li>Is a governance framework.  Think ITIL.</li>
<li>Is a risk framework.  Think ISO 27002 using FAIR as an analytical engine.  To be fair (pun) I believe this is really issue management, and it&#8217;s a process, but that&#8217;s OK.</li>
<li>Reg compliance should be self explanatory.  That&#8217;s essentially what GRC products do for you.</li>
<li>With architecture, I think Adrian is inclined towards TOGAF.</li>
<li>Security is the ISMS in place (27001, ISM^3, PCI, whatever&#8230;)</li>
<li>Are the processes that drive execution</li>
<li><strong>M</strong><strong>onitor</strong> (audit) is creating a State of Nature and <strong>Evaluate</strong> is creating a State of Knowledge from that State of Nature around items 1-6.</li>
</ol>
<p><strong>EVALUATE - CREATING A STATE OF KNOWLEDGE ABOUT THE IRM PROGRAM</strong></p>
<p>That evaluate is Hansei/Kaizen.  Evaluation, done effectively, will drive actual organizational risk exposure.  Evaluate will even answer those four questions we raised in the &#8220;What Should We Be Reflecting About&#8221; section above:</p>
<ol>
<li>Once you have a seat at the table, what is the nature of that relationship?  Who are you reporting to and what are their concerns? What and how are you reporting and how might that be addressing their concerns?</li>
<li>What processes are in place?, How do you know that those are the processes that should be in place? If they are, what kind of job am I doing at those processes?</li>
<li>What is the quality of the skills and resources I have from a people perspective, and how do I know if they are adequate?</li>
<li>Are the Technology solutions I have in place effective, are we managing them effectively, and what sort of States of Wisdom do they provide me with (to make good decisions and execute upon them, from above)?</li>
</ol>
<p>If we could have a nice metric (or set of metrics) that answers these questions, we might call it something like &#8220;My Ability To Manage Risk&#8221; or MATMR for short.</p>
<p><strong>GETTING TO A STATE OF WISDOM</strong></p>
<p>What&#8217;s then missing is how you create a State of Wisdom around the State of Knowledge developed - your &#8220;MATMR&#8221; metric.  That is, given the current State of Knowledge - how can I be most effective?  This State of Wisdom requires proper models for what risk is, and what you can do to manage it applied in a probabilistic manner (because we can&#8217;t intrinsically *know* the future, we can only say with some degree of certainty what the desired course should be).</p>
<p>So the outcome of Hansei/Kaizen should be to create a State of Wisdom about Risk Management.  This is why reflection must be relentless - because your wisdom must be similarly abundant.</p>
<p>This is no small part of the reason RMI exists, why we build software and help organizations understand the things they do.</p>
]]></content:encoded>
      <pubDate>Tue, 16 Sep 2008 13:47:47 +0000</pubDate>
      <category domain="http://securityratty.com/tag/risk management requires">risk management requires</category>
      <category domain="http://securityratty.com/tag/risk management">risk management</category>
      <category domain="http://securityratty.com/tag/risk">risk</category>
      <category domain="http://securityratty.com/tag/hansei">hansei</category>
      <category domain="http://securityratty.com/tag/risk register">risk register</category>
      <category domain="http://securityratty.com/tag/program">program</category>
      <category domain="http://securityratty.com/tag/manage risk">manage risk</category>
      <category domain="http://securityratty.com/tag/manage">manage</category>
      <category domain="http://securityratty.com/tag/adrians program diagram">adrians program diagram</category>
      <source url="http://riskmanagementinsight.com/riskanalysis/?p=411">Hansei and the CISO</source>
    </item>
    <item>
      <title><![CDATA[Security Briefing: June 23rd]]></title>
      <link>http://securityratty.com/article/33d65958fe5c073bba72d300f653c95c</link>
      <guid>http://securityratty.com/article/33d65958fe5c073bba72d300f653c95c</guid>
      <description><![CDATA[Not bad. I actually managed to get a good night sleep
Click here to subscribe to Liquidmatrix Security Digest
And now, the news
Google and Wildcard Domains | GNUCITIZEN
Trojan plays anti-China games...]]></description>
      <content:encoded><![CDATA[<p><center><img src='http://www.liquidmatrix.org/blog/wp-content/uploads/2007/09/newspapera.jpg' alt='newspapera.jpg' /></center></p>
<p>Not bad. I actually managed to get a good night sleep.</p>
<p>Click here to <a href="http://feeds.feedburner.com/Liquidmatrix">subscribe to Liquidmatrix Security Digest!</a>. </p>
<p>And now, the news&#8230;</p>
<ol>
<li><a href="http://www.gnucitizen.org/blog/google-and-wildcard-domains/">Google and Wildcard Domains</a> | GNUCITIZEN</li>
<li><a href="http://economictimes.indiatimes.com/Infotech/Trojan_plays_anti-China_games_for_hacking/articleshow/3154638.cms">Trojan plays anti-China games for hacking</a> | The Economic Times</li>
<li><a href="http://www.koreatimes.co.kr/www/news/nation/2008/06/133_26346.html">Villains Getting Smarter: Are We, Too?</a> | Korea Times</li>
<li><a href="http://www.nytimes.com/2008/06/22/washington/22medicare.html?ei=5087&#038;em=&amp;en=aeaded4b7b145018&#038;ex=1214280000&amp;adxnnl=1&amp;adxnnlx=1214215790-GziXknZX+NWZ/oa+74qh3w">Agency Sees Theft Risk for ID Card in Medicare</a> | NY Times</li>
<li>Universities urged to tighten computer security<a href="http://www.azstarnet.com/metro/244816"> | The Arizona Daily Star</a></li>
<li><a href="http://news.zdnet.co.uk/security/0,1000000189,39437068,00.htm?r=1">Organised e-crime targets students for recruitment</a> | ZDNet UK</li>
<li><a href="http://www.theregister.co.uk/2008/06/23/scanning_security_controls/">Time to dismount the hamster security wheel of pain</a> | The Regsiter</li>
<li><a href="http://www.cambridgenetwork.co.uk/news/article/default.aspx?objid=48341">New security awareness posters aid the battle</a> | Cambridge Network</li>
<li></li>
</ol>
<p> Tags: <a href="http://technorati.com/tag/News" rel="tag">News</a>, <a href="http://technorati.com/tag/Daily+Links" rel="tag"> Daily Links</a>, <a href="http://technorati.com/tag/Security+Blog" rel="tag"> Security Blog</a>, <a href="http://technorati.com/tag/Information+Security" rel="tag"> Information Security</a>, <a href="http://technorati.com/tag/Security+News" rel="tag"> Security News</a></p>

<p><a href="http://feeds.feedburner.com/~a/Liquidmatrix?a=IbJyLw"><img src="http://feeds.feedburner.com/~a/Liquidmatrix?i=IbJyLw" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/Liquidmatrix?a=b7u8dI"><img src="http://feeds.feedburner.com/~f/Liquidmatrix?i=b7u8dI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/Liquidmatrix?a=LxcEei"><img src="http://feeds.feedburner.com/~f/Liquidmatrix?i=LxcEei" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/Liquidmatrix?a=ZLuaHi"><img src="http://feeds.feedburner.com/~f/Liquidmatrix?i=ZLuaHi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/Liquidmatrix?a=xkWgpi"><img src="http://feeds.feedburner.com/~f/Liquidmatrix?i=xkWgpi" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/Liquidmatrix?a=HQ0bZi"><img src="http://feeds.feedburner.com/~f/Liquidmatrix?i=HQ0bZi" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Liquidmatrix/~4/318017622" height="1" width="1"/>]]></content:encoded>
      <pubDate>Mon, 23 Jun 2008 06:39:10 +0000</pubDate>
      <category domain="http://securityratty.com/tag/economic times">economic times</category>
      <category domain="http://securityratty.com/tag/times">times</category>
      <category domain="http://securityratty.com/tag/security news">security news</category>
      <category domain="http://securityratty.com/tag/news">news</category>
      <category domain="http://securityratty.com/tag/korea times">korea times</category>
      <category domain="http://securityratty.com/tag/hamster security wheel">hamster security wheel</category>
      <category domain="http://securityratty.com/tag/e-crime targets students">e-crime targets students</category>
      <category domain="http://securityratty.com/tag/arizona daily star">arizona daily star</category>
      <category domain="http://securityratty.com/tag/theft risk">theft risk</category>
      <source url="http://feeds.feedburner.com/~r/Liquidmatrix/~3/318017622/">Security Briefing: June 23rd</source>
    </item>
    <item>
      <title><![CDATA[Up, up, up - when does it stop?]]></title>
      <link>http://securityratty.com/article/9e5e7bb9722c4f639827d3fecb06e563</link>
      <guid>http://securityratty.com/article/9e5e7bb9722c4f639827d3fecb06e563</guid>
      <description><![CDATA[I was out in Colorado today. I filled up with gas before returning the car and paid $3.39 for regular gas. When I landed in West Palm Beach I had to put gas in my car on the way home and paid $3.49...]]></description>
      <content:encoded><![CDATA[
<div xmlns="http://www.w3.org/1999/xhtml"><p><a onclick="window.open(this.href, '_blank', 'width=512,height=501,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.stillsecureafteralltheseyears.com/.shared/image.html?/photos/uncategorized/2008/02/26/arm_leg.jpg"><img title="Arm_leg" height="215" alt="Arm_leg" src="http://www.stillsecureafteralltheseyears.com/ashimmy/images/2008/02/26/arm_leg.jpg" width="220" border="0" style="FLOAT: left; MARGIN: 0px 5px 5px 0px" /></a> I was out in Colorado today. I filled up with gas before returning the car and paid $3.39 for regular gas.&nbsp; When I landed in West Palm Beach I had to put gas in my car on the way home and paid $3.49 for regular.&nbsp; When does this stop?&nbsp; Is it really going to 4 bucks a gallon soon as they say?&nbsp; Why stop there, 5, 6 7 bucks a gallon?&nbsp; What is it going to take for us to finally say enough and do something in this country about getting off the black heroin?<br /><br />So busy talking about the war, mortgages and the stock market, why aren't any of the major candidates putting out detailed plans on how we are going to move off of oil and gasoline hamster wheel that is a monkey on the back of each and every one of us.&nbsp; I am fed up and not going to take it anymore!</p></div>
]]></content:encoded>
      <pubDate>Tue, 26 Feb 2008 21:55:29 +0000</pubDate>
      <category domain="http://securityratty.com/tag/regular gas">regular gas</category>
      <category domain="http://securityratty.com/tag/regular">regular</category>
      <category domain="http://securityratty.com/tag/gas">gas</category>
      <category domain="http://securityratty.com/tag/stop">stop</category>
      <category domain="http://securityratty.com/tag/gasoline hamster wheel">gasoline hamster wheel</category>
      <category domain="http://securityratty.com/tag/west palm beach">west palm beach</category>
      <category domain="http://securityratty.com/tag/gallon">gallon</category>
      <category domain="http://securityratty.com/tag/bucks">bucks</category>
      <category domain="http://securityratty.com/tag/car">car</category>
      <source url="http://www.stillsecureafteralltheseyears.com/ashimmy/2008/02/up-up-up---when.html">Up, up, up - when does it stop?</source>
    </item>
    <item>
      <title><![CDATA[Up, up, up - when does it stop?]]></title>
      <link>http://securityratty.com/article/30a1c34cac840d34c0aff61e204d1854</link>
      <guid>http://securityratty.com/article/30a1c34cac840d34c0aff61e204d1854</guid>
      <description><![CDATA[I was out in Colorado today. I filled up with gas before returning the car and paid $3.39 for regular gas. When I landed in West Palm Beach I had to put gas in my car on the way home and paid $3.49...]]></description>
      <content:encoded><![CDATA[
<div xmlns="http://www.w3.org/1999/xhtml"><p><a onclick="window.open(this.href, '_blank', 'width=512,height=501,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false" href="http://www.stillsecureafteralltheseyears.com/.shared/image.html?/photos/uncategorized/2008/02/26/arm_leg.jpg"><img title="Arm_leg" height="215" alt="Arm_leg" src="http://www.stillsecureafteralltheseyears.com/ashimmy/images/2008/02/26/arm_leg.jpg" width="220" border="0" style="FLOAT: left; MARGIN: 0px 5px 5px 0px" /></a> I was out in Colorado today. I filled up with gas before returning the car and paid $3.39 for regular gas.&nbsp; When I landed in West Palm Beach I had to put gas in my car on the way home and paid $3.49 for regular.&nbsp; When does this stop?&nbsp; Is it really going to 4 bucks a gallon soon as they say?&nbsp; Why stop there, 5, 6 7 bucks a gallon?&nbsp; What is it going to take for us to finally say enough and do something in this country about getting off the black heroin?<br /><br />So busy talking about the war, mortgages and the stock market, why aren't any of the major candidates putting out detailed plans on how we are going to move off of oil and gasoline hamster wheel that is a monkey on the back of each and every one of us.&nbsp; I am fed up and not going to take it anymore!</p></div>

<p><a href="http://feeds.feedburner.com/~a/StillsecureAfterAllTheseYears?a=8cZUHx"><img src="http://feeds.feedburner.com/~a/StillsecureAfterAllTheseYears?i=8cZUHx" border="0"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=q7HQq6E"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=q7HQq6E" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=djhq6hE"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=djhq6hE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=CQmZs4E"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=CQmZs4E" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=8ea8nhE"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=8ea8nhE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=Bv48X7E"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=Bv48X7E" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=V5x5ypE"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=V5x5ypE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=qjIFUPE"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=qjIFUPE" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=JNslp9e"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=JNslp9e" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?a=M0J3P1E"><img src="http://feeds.feedburner.com/~f/StillsecureAfterAllTheseYears?i=M0J3P1E" border="0"></img></a>
</div>]]></content:encoded>
      <pubDate>Tue, 26 Feb 2008 20:55:30 +0000</pubDate>
      <category domain="http://securityratty.com/tag/regular gas">regular gas</category>
      <category domain="http://securityratty.com/tag/regular">regular</category>
      <category domain="http://securityratty.com/tag/gas">gas</category>
      <category domain="http://securityratty.com/tag/stop">stop</category>
      <category domain="http://securityratty.com/tag/gasoline hamster wheel">gasoline hamster wheel</category>
      <category domain="http://securityratty.com/tag/west palm beach">west palm beach</category>
      <category domain="http://securityratty.com/tag/gallon">gallon</category>
      <category domain="http://securityratty.com/tag/bucks">bucks</category>
      <category domain="http://securityratty.com/tag/car">car</category>
      <source url="http://feeds.feedburner.com/~r/StillsecureAfterAllTheseYears/~3/241913448/up-up-up---when.html">Up, up, up - when does it stop?</source>
    </item>
    <item>
      <title><![CDATA[Making Threat Modeling Work Better]]></title>
      <link>http://securityratty.com/article/96ecbbe30364ae5984ae7f1a0bdc7144</link>
      <guid>http://securityratty.com/article/96ecbbe30364ae5984ae7f1a0bdc7144</guid>
      <description><![CDATA[Adam Shostack here, with part four of my threat modeling series. This post is a little less philosophical and a lot more prescriptive than the one about flow. It explains exactly how and why I changed...]]></description>
      <content:encoded><![CDATA[<p>Adam Shostack here, with part four of my threat modeling series. This post is a little less philosophical and a lot more prescriptive than the one about flow. It explains exactly how and why I changed a couple of elements of the process. The first is the brainstorming meeting, and the second is the way trust boundaries may be placed.</p>  <p>The brainstorming meeting is a mainstay of expert threat modeling. It&#x2019;s pretty simple: you put your security experts in a room with system diagrams and a whiteboard. Usually, you put your system designers in there, and make them promise not to strangle your experts. Optionally, you can add beer or scotch. Sometime later, you get a list of threats. How long depends on how big the system is, how well its requirements are documented, and how well your experts work together. </p>  <p>We like having our developers threat model. There are a lot of reasons for this. Not only do they know the system better than anyone else, but getting people involved in a process helps ensure that they buy into it. </p>  <p>Now this desire is great, but it leads to some issues, first and foremost is that many of the people who are now involved aren&#x2019;t security experts. This means that they lack both direct experience of the process and the background that informs it. This isn&#x2019;t a slam on them. I lack experience in the database design process, and I don&#x2019;t have years of experience to help orient me. So I&#x2019;d make mistakes designing a database, and someone who isn&#x2019;t a security expert may make mistakes in security. For example, someone might try to use encryption to mitigate tampering threats. (The SDL crypto requirements cover this, and I try to gently correct them to integrity mechanisms like MACs or signatures.) This is a reality that we have to account for at the process design level.</p>  <p><b>Adding Structure to Chaos</b></p>  <p>So how does this relate to the brainstorming meeting? It&#x2019;s a dramatic increase in the need for structure. Where experts may think they do better threat modeling with scotch in hand, , it certainly doesn&#x2019;t lead to beginners having a flow experience. So we need a structure, and we need to provide it.</p>  <p>We encourage people to get started by drawing a whiteboard diagram. Almost everyone in software draws on whiteboards regularly, and this makes it <b>an ideal first step.</b> It&#x2019;s an ideal first step because everyone can do it, see that they&#x2019;ve done it, and feel like they&#x2019;re making progress.</p>  <p>The core mechanism we&#x2019;ve used to provide it is the STRIDE/element chart. (I&#x2019;ll talk a lot more about its origins and limits in a few posts, but for now, let&#x2019;s pretend it&#x2019;s gospel, and enumerates all possible threats.) Given this gospel, it becomes possible to step through the threat modeling diagram, &#x201C;turn the crank,&#x201D; and have threats come out. &#x201C;Item 7 is a data flow? Let&#x2019;s look for T,I and D.&#x201D; (Tampering, Information disclosure, and Denial of service.)</p>  <p>Similarly, we have four ways of addressing threats &#x2013; redesign, standard mitigations, new mitigations, and risk acceptance. We have training on mitigating threats, we have explanation of why and when to use each (and they&#x2019;re presented in a preferred order).</p>  <p>Lastly, we provide advice about how to validate the threat model and it&#x2019;s relation to reality.</p>  <p><img src="http://blogs.msdn.com/blogfiles/sdl/WindowsLiveWriter/TheNewThreatModelingProcess_100B8/tm-hampster-wheel_thumb.jpg" align="right" /></p>  <p>Between these four steps and the hamster wheel which ties them together, we give people the structure in which they can take on the process. The other thing I wanted to address is how we respond to consistent &#x201C;errors&#x201D; that we see. </p>  <p><b>Where Trust Boundaries Show Up</b></p>  <p>We used to give people clear guidance that trust boundaries should only intersect with data flows. After all, you can&#x2019;t really have a process that&#x2019;s half-running as admin, and half as a normal user. Logically, you have two entities. And people kept drawing trust boundaries across processes and data stores. It drove me up the wall. It was <i>wrong.</i></p>  <p>As people kept doing it, I decided to swallow my pride and accept it. I now tell people to put their trust boundaries wherever they believe one exists. And they&#x2019;ve continued exactly as before, but I&#x2019;m a lot happier, because I&#x2019;ve found a way to help them draw more detailed diagrams where they need them. Which includes anywhere a trust boundary crosses a process or data store. They&#x2019;re happier too. No one is telling them that they&#x2019;re wrong.</p>  <p>I was going to title this post &#x201C;Lord grant me the strength to change the things I can, the courage to accept what I can&#x2019;t, and the wisdom to know the difference,&#x201D; but, first, it&#x2019;s too long, and second, if we started that way, it would be wrong to add beer or scotch.</p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=5478448" width="1" height="1">]]></content:encoded>
      <pubDate>Tue, 16 Oct 2007 20:23:53 +0000</pubDate>
      <category domain="http://securityratty.com/tag/threat">threat</category>
      <category domain="http://securityratty.com/tag/process">process</category>
      <category domain="http://securityratty.com/tag/process helps ensure">process helps ensure</category>
      <category domain="http://securityratty.com/tag/developers threat model">developers threat model</category>
      <category domain="http://securityratty.com/tag/database design process">database design process</category>
      <category domain="http://securityratty.com/tag/security">security</category>
      <category domain="http://securityratty.com/tag/trust boundaries">trust boundaries</category>
      <category domain="http://securityratty.com/tag/threat model">threat model</category>
      <category domain="http://securityratty.com/tag/security experts">security experts</category>
      <source url="http://blogs.msdn.com/sdl/archive/2007/10/16/making-threat-modeling-work-better.aspx">Making Threat Modeling Work Better</source>
    </item>
    <item>
      <title><![CDATA[The New Threat Modeling Process]]></title>
      <link>http://securityratty.com/article/0b2de27ab1ef185846b968c1dd9088d2</link>
      <guid>http://securityratty.com/article/0b2de27ab1ef185846b968c1dd9088d2</guid>
      <description><![CDATA[Adam Shostack here, with the second post in my series on the evolved threat modeling process. To summarize, what Ive tried to achieve in changing the process is to simplify, prescribe, and offer...]]></description>
      <content:encoded><![CDATA[<p>Adam Shostack here, with the second post in my series on the evolved threat modeling process. To summarize, what I&#x2019;ve tried to achieve in changing the process is to simplify, prescribe, and offer self-checks. I&#x2019;ll talk in the next post about why those three elements are so important to me. For now, let me describe the process.</p>  <p>One of the largest changes that we&#x2019;ve made is to a simplified process (and diagram). I like to say that this looks pretty much like every other software process diagram you see today. That&#x2019;s intentional. There&#x2019;s only so much we can expect people to take away from a class, and making this simple and familiar helps ensure there&#x2019;s room for the other important parts.</p>  <p>&#xA0;</p>  <p>First, the &#x201C;<a href="http://www.securitymetrics.org/content/Wiki.jsp?page=Welcome_blogentry_061005_1">process hamster wheel</a>,&#x201D; (with apologies to Yankee Group analyst Andy Jaquith):</p>  <p>&#xA0;</p>  <p><a href="http://blogs.msdn.com/blogfiles/sdl/WindowsLiveWriter/TheNewThreatModelingProcess_100B8/tm-hampster-wheel_2.jpg"><img id="id" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="176" alt="tm-hampster-wheel" src="http://blogs.msdn.com/blogfiles/sdl/WindowsLiveWriter/TheNewThreatModelingProcess_100B8/tm-hampster-wheel_thumb.jpg" width="244" border="0" /></a> </p>  <p>&#xA0;</p>  <p>Now that you&#x2019;ve seen the wheel, I&#x2019;ll briefly describe the steps:</p>  <ol>   <li><strong>Vision</strong>: Consider your security requirements, scenarios and use cases to help frame your threat modeling. What are the security aspects of your scenarios? What do your personas expect or hope doesn&#x2019;t happen? What are the security goals of the system you&#x2019;re building, and how do those interact with the system as it stands? </li>    <li><strong>Model</strong>: The basic idea is to create a diagram of your software, showing all trust boundaries. </li> </ol>  <blockquote>   <p>a. Draw a diagram of your software. We encourage use of the DFD formalisms, which Larry Osterman describes in <a href="http://blogs.msdn.com/larryosterman/archive/2007/08/30/threat-modeling-once-again.aspx">this post</a>.</p>    <p>&#xA0;</p>    <p>Essentially, the elements are</p>    <ol>     <li>External entities (anything outside your control) </li>      <li>Processes (running code) </li>      <li>Data stores (files, registry entries, shared memory, databases) </li>      <li>Data flows (which connect all the other elements) </li>   </ol>    <p>b. Draw trust boundaries between components. You can do this on a whiteboard, in Visio, or in one of the specialized threat modeling tools we&#x2019;ve built. (A trust boundary is anywhere that more than one principal can access an object, such as a file or process.)</p>    <p>c. If your trust boundary crosses something which isn&#x2019;t a data flow, you need to break it into two logical elements, or draw a sub-diagram with more details. (This is different advice: we used to tell people trust boundaries could only cross data flows. People drew them anywhere that felt right. We decided to go with what people were doing&#x2014;there was important information in what they were expressing.)</p>    <p>d. If you need more details to express where trust boundaries are, add an additional diagram.</p>    <p>e. When you don&#x2019;t have any more trust boundaries to draw, you&#x2019;re done.</p>    <p>f. If a diagram doesn&#x2019;t have any trust boundaries, you may have drawn too many details.</p>    <p>3.<strong> Identify Threats</strong> using STRIDE/element</p> </blockquote>  <blockquote>   <p>For each element in your diagram, consider threats of the types indicated in this chart. (We&#x2019;ll come back to the chart&#x2019;s origins in a later post.)</p> </blockquote>  <blockquote>   <p><a href="http://blogs.msdn.com/blogfiles/sdl/WindowsLiveWriter/TheNewThreatModelingProcess_100B8/stride-chart_2.jpg"><img id="id" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="186" alt="stride-chart" src="http://blogs.msdn.com/blogfiles/sdl/WindowsLiveWriter/TheNewThreatModelingProcess_100B8/stride-chart_thumb.jpg" width="244" border="0" /></a> </p>    <p>There&#x2019;s an important mis-conception we often see, which is that STRIDE is appropriate for use as a classification system. It&#x2019;s really hard to use STRIDE to describe attacks&#x2014;the impacts blend together really quickly. The most valuable use of STRIDE is to help people think about how threats have impacted elements of a design in the past. That is, it&#x2019;s a framework for finding threats, not for describing them. &#x201C;What if someone spoofs this host?&#x201D;</p>    <p>&#xA0;</p>    <p>4. <strong>Mitigate</strong> </p>    <p>Here on the SDL strategy team, we love threat modeling. We know that not everyone feels that way, and we ask teams to threat model so that they can find and <b><i>mitigate</i> </b>threats. A threat model document with great diagrams and lots of threats isn&#x2019;t very useful if you don&#x2019;t take the key step of addressing the issues you find. There are four ways to do that:</p>    <ol>     <p>a. Redesign to eliminate threats.</p>      <p>b. Use standard mitigations, such as those provided by OS features, to mitigate threats.</p>      <p>c. Invent new mitigations, understanding that this is a subtle art.</p>      <p>d. Accept risk, when allowed by the SDL</p>   </ol> </blockquote>  <ol>   <p>5.<strong>&#xA0; Validate</strong></p>    <p>There are two levels of validation. The first is within each stage, the second is a validation pass at the end of the process. That end of process validation entails:</p> </ol>  <blockquote>   <p>a. Make sure that the diagrams are up-to-date and accurate</p> </blockquote>  <ol>   <p>b. Ensure that you have STRIDE threats per data flow that crosses a trust boundary, and for each element that such a trust boundary connects to</p>    <p>c. Make sure you&#x2019;re mitigating each threat</p>    <blockquote>     <p>i. You have a bug filed per threat that you want to mitigate. The bug should be of the form &#x201C;attacker can do X. Proposed fix: Y.&#x201D; You might include tradeoffs you&#x2019;re making, and possibly have test plans in the bug, if you include those.</p>   </blockquote>    <blockquote>     <p>ii. You have a valid reason for each non-mitigated threat not being mitigated.</p>   </blockquote>    <blockquote>     <p>iii. All threats are in class i or ii.</p>   </blockquote>    <p>5.a. On change, re-validate</p>    <p>&#xA0;</p> </ol>  <p align="left">This hamster wheel has a very intentional brake on it: the word change, above validate. What that means is you want to go through the process again when you make changes that need to be on the diagram. Checking to see if your diagrams change is a relatively simple check that allows people to track changes against their threat model as their design iterates.</p>  <p>In the next post, I&#x2019;ll talk about the reasoning behind the design, and offer up some process tools that anyone can use to make a process more user-friendly.</p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=5232594" width="1" height="1">]]></content:encoded>
      <pubDate>Mon, 01 Oct 2007 21:15:35 +0000</pubDate>
      <category domain="http://securityratty.com/tag/process">process</category>
      <category domain="http://securityratty.com/tag/threat">threat</category>
      <category domain="http://securityratty.com/tag/process validation entails">process validation entails</category>
      <category domain="http://securityratty.com/tag/threat model">threat model</category>
      <category domain="http://securityratty.com/tag/software process diagram">software process diagram</category>
      <category domain="http://securityratty.com/tag/people">people</category>
      <category domain="http://securityratty.com/tag/people trust boundaries">people trust boundaries</category>
      <category domain="http://securityratty.com/tag/love threat">love threat</category>
      <category domain="http://securityratty.com/tag/hamster wheel">hamster wheel</category>
      <source url="http://blogs.msdn.com/sdl/archive/2007/10/01/the-new-threat-modeling-process.aspx">The New Threat Modeling Process</source>
    </item>
  </channel>
</rss>
