<?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>The Security Development Lifecycle : Security Blackhat SDL</title><link>http://blogs.msdn.com/sdl/archive/tags/Security+Blackhat+SDL/default.aspx</link><description>Tags: Security Blackhat SDL</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Iron Chef BlackHat: Fast food but fully baked?</title><link>http://blogs.msdn.com/sdl/archive/2007/07/26/iron-chef-blackhat-fast-food-but-fully-baked.aspx</link><pubDate>Thu, 26 Jul 2007 18:31:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4067204</guid><dc:creator>sdl</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/sdl/comments/4067204.aspx</comments><wfw:commentRss>http://blogs.msdn.com/sdl/commentrss.aspx?PostID=4067204</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Eric Bidstrup here.&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;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;This year at &lt;/FONT&gt;&lt;A class="" href="http://www.blackhat.com/html/bh-usa-07/bh-usa-07-index.html" target=_blank mce_href="http://www.blackhat.com/html/bh-usa-07/bh-usa-07-index.html"&gt;&lt;FONT face=Calibri size=3&gt;Blackhat in Las Vegas&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;, there is an interesting title for a session that caught my eye: “&lt;/FONT&gt;&lt;A class="" href="http://www.blackhat.com/html/bh-usa-07/bh-usa-07-speakers.html#Chess" target=_blank mce_href="http://www.blackhat.com/html/bh-usa-07/bh-usa-07-speakers.html#Chess"&gt;&lt;FONT face=Calibri size=3&gt;Iron Chef: Blackhat&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;”.&amp;nbsp; The presenters will be running static and dynamic analysis tools on code to find vulnerabilities.&amp;nbsp; While this will likely be entertaining theater (I’ll likely attend) and an Iron Chef may be able to cook interesting culinary delicacies in an hour on TV, expecting to secure code in an hour is half baked at best. I realize that this event is not being positioned as a 100% solution to secure code in an hour – and I’m sure that those presenting do too – but the Iron Chef analogy does seem to imply that &lt;B style="mso-bidi-font-weight: normal"&gt;something&lt;/B&gt; useful will be &lt;B style="mso-bidi-font-weight: normal"&gt;done&lt;/B&gt; in an hour. I want to be clear I'm not picking on this presentation specifically.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Instead I wanted to consider the approach and the mindset, which I think is far too common in the industry.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;This cooking/coding analogy is similar to many discussions I’ve had with various people with responsibilities for managing software development efforts. Those discussions usually boil down to “Trying to do everything described in SDL is too costly and/or hard, can’t you just let me know the highest yield activities/tools”.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;My response is always that any effort to deliver secure software is more effective than no effort, but the primary reason SDL has been successful is that no single method, tool, or process is perfect. &lt;I style="mso-bidi-font-style: normal"&gt;The sum is greater than the parts&lt;/I&gt;. (By the way, I’ll even include SDL in the scope of that last statement – it is not perfect either, but it does include self correcting processes to examine where it fails so we can learn to accomplish better results and continually innovate to address gaps.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In the early days of the Trustworthy Computing Initiative here at Microsoft, the SDL started from the security “push”(es) that were done for the .NET Framework and Windows Server 2003. Many people with many eyeballs spent many days reviewing many lines of code and running the analysis tools we had available, and this certainly had an appreciable impact on improving the security of that those releases. However, the single most important lesson from that experience for the development and evolution of SDL was that secure development practices have to be an ongoing activity. A “push” (or an Iron Chef cook-off) is somewhat like cramming for a final examination. It can certainly help, but the student who applies effort consistently will be better able to accomplish their goals without having to rely upon such concentrated efforts. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;There have been many studies of software engineering that have shown that it’s far more efficient and cost effective to address deficiencies as early as possible, preferably never allowing them to get into code in the first place. Security is no different; the most effective means of eliminating vulnerabilities in software is to never allow them to occur in the first place. And to the software managers I mentioned earlier who are concerned over the costs of SDL – it’s not only more effective, it’s also cheaper to do it this way!&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Security vulnerabilities can result from a variety of different causes. The size and complexity of software continues to increase, and isn’t likely to decrease any time soon. When considering all possible sources of vulnerabilities in complex systems, a methodical approach is the ONLY strategy that has a chance of delivering the desired results. Careful analysis of possible design vulnerabilities early in the development process, understanding attack surface and giving it high levels of scrutiny, informed use of code analysis tools (and understanding their limitations) and other code quality techniques, executing thoughtfully designed test plans, and (last but not least) leveraging defense in depth mitigations are ALL vitally important in attempting to deliver the most “iron clad” code possible. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;An Iron Chef will get you four or five good dishes in an hour.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Iron Chef Blackhat might give you four or five good bugs. Secure software takes more time. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;I certainly wish those presenting good luck in the presentation, like I said earlier - it's one of the ones I will try to be at.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Bon Appetite.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4067204" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/sdl/archive/tags/Security+Blackhat+SDL/default.aspx">Security Blackhat SDL</category></item></channel></rss>