<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Justice League</title>
	<atom:link href="http://www.cigital.com/justiceleague/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cigital.com/justiceleague</link>
	<description>The Cigital Software Security and Quality Blog</description>
	<pubDate>Tue, 16 Jun 2009 17:23:20 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>50 Ways to Inject Your SQL</title>
		<link>http://www.cigital.com/justiceleague/2009/06/16/50-ways-to-inject-your-sql/</link>
		<comments>http://www.cigital.com/justiceleague/2009/06/16/50-ways-to-inject-your-sql/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 16:39:21 +0000</pubDate>
		<dc:creator>Guest</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=187</guid>
		<description><![CDATA[This is a guest post by Cigital&#8217;s resident songwriter Paco Hope.
Sometimes we just let our hair down and have a good laugh over security stuff. I was telling my wife about some ridiculous code I had recently reviewed. While I didn’t go into details, she got the gist of it (she also gets &#8220;Little Bobby [...]]]></description>
			<content:encoded><![CDATA[<p><em>This is a guest post by Cigital&#8217;s resident songwriter Paco Hope.</em></p>
<p>Sometimes we just let our hair down and have a good laugh over security stuff. I was telling my wife about some ridiculous code I had recently reviewed. While I didn’t go into details, she got the gist of it (she also gets &#8220;<a href="http://xkcd.com/327/">Little Bobby Tables</a>,&#8221; too). I finished my story by offhandedly saying “there must be 50 ways to bypass their SQL protections.” She responded by singing “there must be 50 ways to inject your SQL” and that’s how the whole thing got started.</p>
<p>So what was it that was so ridiculous that it brought me to sing? Here’s the pseudocode of a routine called “ValidateQuery()”. Its role is to take user input from a .Net application and validate it to remove potential injection.</p>
<pre style="margin-left: 10px;"><code>ValidateQuery():
WordArray = TokenizeString( ‘ ‘ ); /* split on space characters */
For each Word in WordArray
    if it is ‘delete’ then return
    if it is ‘purge’ then return
    if it is ‘drop’ then return
    if it is ‘truncate’ then return
End For</code></pre>
<p>That’s it. If your string contained anything else (for example ‘update’), it would be fine. They did do a case-insensitive match, so ‘dElEtE’ would get caught, but that’s hardly praiseworthy. This was the sole protection against user input that was fed—good ole string-concatenation style—into SQL queries.</p>
<p>Note that this is NOT a web application, this was a Windows EXE written in C#.Net. For those of you who think SQL injection is a web only problem, think again. The other classic screw-up in this application was putting all the enforcement of roles and access controls in the client itself. While this may work when your business logic runs on an application server in a 3-tier architecture (that presumably cannot be controlled or modified by the end user), that approach doesn’t work when the business logic runs on the user’s PC. A quick SQL injection to change your roles in the database, and this thick client would start working for you just fine—as admin, or a higher privileged user.</p>
<p>The motherhood and apple pie lessons to take away?</p>
<ul>
<li>SQL Injection can happen, even in EXEs</li>
<li>Don’t roll your own protection, use parameterized queries</li>
<li>Don’t trust business logic that runs on a user’s PC</li>
</ul>
<p>Musically, I’m pretty proud of the fact that I managed to use the words “unhandled exception” in a song. They fit the rime and meter perfectly. I’m trying to come up with a tune to parody for cross-site scripting. If you have ideas, I’m open. I think I’ll get someone else to sing next time. A kind of Gilbert &#038; Sullivan arrangement where I’ll just be the librettist. :)</p>
<p align="center"><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/5pSsLnNJIa4&#038;hl=en&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/5pSsLnNJIa4&#038;hl=en&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/06/16/50-ways-to-inject-your-sql/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New Security Reads</title>
		<link>http://www.cigital.com/justiceleague/2009/06/02/new-security-reads/</link>
		<comments>http://www.cigital.com/justiceleague/2009/06/02/new-security-reads/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 18:03:11 +0000</pubDate>
		<dc:creator>gem</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=180</guid>
		<description><![CDATA[IEEE S&#038;P: Securing Online Games (vol.7, no.3)
IEEE Security &#038; Privacy magazine remains the most important trade periodical on security published today.  Though the content is on rare occasion esoteric, the magazine is always technically accurate and detailed.  Only a peer reviewed publication can offer readers a look at computer security as a science. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>IEEE S&#038;P: Securing Online Games (vol.7, no.3)</strong></p>
<p>IEEE Security &#038; Privacy magazine remains the most important trade periodical on security published today.  Though the content is on rare occasion esoteric, the magazine is always technically accurate and detailed.  Only a peer reviewed publication can offer readers a look at computer security as a science.  Think of it as applied academics.</p>
<p>I am pleased to announce that IEEE Security &#038; Privacy magazine’s May/June 2009 edition was recently released.  The issue (volume 7: number 3) covers Securing Online Games in a series of four peer reviewed articles that help define the state of the practice.</p>
<p align="center"><img src="http://www.cigital.com/justiceleague/wp-content/uploads/2009/06/eog-sandp-cover.jpg" alt="eog-sandp-cover" title="eog-sandp-cover" width="200" height="271" class="alignnone size-full wp-image-182" /></p>
<p>For more about the issue, see: <a href="http://www.computer.org/portal/site/security">http://www.computer.org/portal/site/security</a></p>
<p>Also in the same issue is a print transcript of Silver Bullet 36.  That’s the episode where James McGovern turned the tables and interviewed me.  That <a href="http://www.cigital.com/silverbullet/shows/silverbullet-036-gem.pdf">transcript is on the web here</a>.</p>
<p><strong>Beautiful Security</strong></p>
<p>Also of note is a book of thoughtful essays on security put together by John Viega (once a Cigitalite) and Andy Oram.  Here’s my original blurb from the back cover:</p>
<p>“This collection of thoughtful essays catapults the reader well beyond deceptively shiny security FUD (the drum major of the bug parade) toward the more subtle beauty of building security in.  Security is an essential emergent property for all modern systems&#8212;something that most people implicitly expect and few people explicitly receive.  This book demonstrates the yin and the yang of security, and the fundamental creative tension between the spectacularly destructive and the brilliantly constructive.  Read.  Learn.  Emulate.”</p>
<p align="center"><img src="http://www.cigital.com/justiceleague/wp-content/uploads/2009/06/beautiful-sec.jpg" alt="beautiful-sec" title="beautiful-sec" width="250" height="250" class="alignnone size-full wp-image-181" /></p>
<p>I’m still working my way a second time through the assembled essays from security stars including mudge, Betsy Nichols, Phil Zimmermann, Mark Curphy, and Jim Routh.  This is a must read for 2009.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/06/02/new-security-reads/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Security and &#8216;time&#8217;</title>
		<link>http://www.cigital.com/justiceleague/2009/05/20/security-and-time/</link>
		<comments>http://www.cigital.com/justiceleague/2009/05/20/security-and-time/#comments</comments>
		<pubDate>Wed, 20 May 2009 20:13:55 +0000</pubDate>
		<dc:creator>jOHN</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=173</guid>
		<description><![CDATA[Ben Tomhave wrote a decent post musing &#8220;Which came first: The Software or The Security?&#8221;.
In particular, Ben asks whether the response an organization has to its security problems should possess a time component. &#8220;Yes&#8221;, he answers his own question emphatically. I agree, and for a few reasons worth expounding on.
&#8230;the only difference between today and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.secureconsulting.net/">Ben Tomhave</a> wrote a decent <a href="http://www.secureconsulting.net/2009/05/which_came_first_the_software.html">post</a> musing &#8220;Which came first: The Software or The Security?&#8221;.</p>
<p>In particular, Ben asks whether the response an organization has to its security problems should possess a time component. &#8220;Yes&#8221;, he answers his own question emphatically. I agree, and for a few reasons worth expounding on.</p>
<p><strong>&#8230;the only difference between today and yesterday</strong><br />
If you&#8217;re effective at assessment, you&#8217;ll often leave an organization&#8217;s apps in shambles. Somewhat older data I have indicate an expectation for 10 critical vulnerabilities / 100KLoC, with 30-40 high-risk vulnerabilities following suit(*1). Organizations holding their broken app at arms length panic. &#8220;We&#8217;ve got to pull it from production!&#8221;, they exclaim. Others take a different approach, &#8220;We&#8217;ll stop everything until those vulnerabilities are fixed&#8211;no more features.&#8221;</p>
<p>This behavior is irrational and needs to be quelled. The only difference between &#8220;today&#8221; and &#8220;yesterday&#8221; in this situation is that the organization <em>knows</em> how screwed they are (*2).</p>
<p>Ben indicates that visible risks should be prioritized based on a risk management framework. Ostensibly, we&#8217;re very much in agreement on that one. There may be vulnerabilities that deserve such &#8220;stop the press&#8221; kind of treatment, but there is often a normalization process that must occur before that set is culled from an assessment (*3). </p>
<p>After that triage, the rest (of the vulnerabilities), and I&#8217;ve said this before, should enter the change-management/bug-tracking process like everything else: features, customer complaints, and so forth. Dealing with security vulnerabilities in-band both sobers security analysts&#8217; dreams of the all-important &#8217;sploit and raises the respectability of security requirements within the normal development process by treating them as first-class citizens of a release process.</p>
<p>Depending on whether an organization has rapid-turn around (as happens when development engages in weekly sprints, organized through SCRUM) or more monolithic develop cycles, these change requests can be weighed from the perspective of whether or not they should be:</p>
<p><OL><br />
<LI>Released out-of-band as a patch</li>
<p><LI>Included in the next planned release, potentially:<br />
<UL><LI>At the expense of other functions/features</li>
<p><LI>At increased expense,</li>
<p></UL>or:</li>
<p><LI>Deferred until a future release</li>
<p></OL></p>
<p>Sometimes, the &#8216;correct&#8217; answer is to conduct a usability study, or revisit the SLA promised by a system/service, and get feedback as to what form the fix will take before any of the above can happen.   </p>
<p>In summary, time continues to elapse at a constant rate. In this case visibility is increasing. Visibility should allow for a better risk management decision, not a knee-jerk reaction. </p>
<p>Moreover, it&#8217;s important to discern the difference between 1) the organization&#8217;s increased visibility into vulnerabilities, not 2) an increased <em>discoverability</em> of the vulnerability itself.  Yes, if the assessor used an automated pen-testing tool to find the vuln., it is probably pretty discoverable, but the organization&#8217;s knowledge of the vuln. does not <em>increase</em> it&#8217;s discoverability(*4).</p>
<p>Onto the next element of time&#8230;</p>
<p><strong>0 to 60mph in?</strong><br />
Ben also rightly indicates (paraphrasing) knowing there&#8217;s a gap between you and the security posture you&#8217;d like to have, you&#8217;re not going to get there instantaneously. Very true. This, in my mind, is where organizations could improve the most. Most organizations I talk to have dashboards showing quantities like<br />
<UL><br />
<LI>Percentage of applications in compliance with assessment policies;</li>
<p><LI>Number of outstanding critical + high vulnerabilities;</li>
<p><LI>Time to remediate critical + high vulnerabilities;</li>
<p><LI>&lt;Metric du jour&gt;</li>
<p></UL><br />
However, when asked-from the simplest risk perspective-&#8221;Are you any less vulnerable to phishing this year?&#8221;, or, &#8220;Can you provide a greater assurance case around the [confidentiality] of [this key asset]?&#8221;, the answer is &lt;blink&gt; &lt;blink&gt;. Yes, there are some exceptions to this.</p>
<p>I&#8217;d like to see organizations begin managing to security goals like:</p>
<blockquote><p>
&#8230;Next year, we expect no application providing access to [asset X] to be vulnerable to discoverable by an external Threat, be he/she authorized or not, accessing our systems only through the web;</p>
<p>&#8230;in three years, we expect no vulnerability that would provide access to [asset X] with any Internet-facing software, regardless of immediate discoverability or exploitability (by an external threat);</p>
<p>&#8230;in that same three-year time frame, we also expect no Internet-facing apps. to fall prey to [common web attacks, listed in the SANS Top 25(*5) (aka: CSRF et. al.)] that would result in impersonation and therefore allow for inappropriate access to [asset X] on behalf of an unwitting user.
</p></blockquote>
<p>I&#8217;m attempting to extend Ben&#8217;s call for a time-based (I&#8217;ll call it iterative) approach to responding to security gaps. The previous paragraph proxies for what a more advanced risk management framework would incorporate in the form of probability (discoverability x exploitability x [other factors]). Remember, however, that the [asset X] clauses of these statements proxy for different but important factors in your risk model: intrinsic value of the information asset. </p>
<p>So, whether you&#8217;re using a formal risk management framework, or doing it more informally, you can respond iteratively and get time back on your side: having a story about how you&#8217;re measurably reducing organizational risk in a meaningful fashion.</p>
<p>Compare this with the alternatives:<br />
<OL><br />
<LI>A straight linear approach - fixing 80% of XSS bugs within an application has what effect on the overall security posture?</li>
<p><LI>The bug-of-the-month approach - &#8216;fixing&#8217; 100% of the CSRF problems within an app, but leaving all the XSS has what effect on the overall security posture?</li>
<p><LI>Stopping the presses - fixing 100% of the bugs, and not allowing business functionality to evolve in the balance does what to your business opportunity/revenue stream?</li>
<p></OL><br />
And I think you&#8217;ll be satisfied with the trade-off (through formal risk modeling or informally).</p>
<p>Finally,</p>
<p><strong>Within a single vulnerability&#8217;s remediation, I&#8217;ve got trade offs</strong><br />
Yes, within the scope of a single killer finding, organizations have to decide how to trade off the time it takes to field a mitigation and the effectiveness of that mitigation on the security posture (queue the &#8220;dynamic patching&#8221; vs. &#8220;fix it in the code and re-deploy&#8221; flame).</p>
<p>This, just like our previous two topics, is a matter of risk management. I implore organizations to consider what the capabilities and motivations of their opponent are in this case. If you&#8217;re considering protecting against a web-vulnerability delivered through a URL parameter, a WAF rule will prevent a vulnerability scan from finding the &#8216;fixed&#8217; problem but is unlikely to thwart a skilled penetration tester from manipulating the order of the innocuous and malicious parameters. WAF rules, then, are likely to provide a rapid response to failed scans and simpleton attackers but not concerted attacks of this sort. This same sort of analysis can be done on code-based fixes. When assessments find input validation problems, the development team will often respond by doing a simple (arbitrary) length check, or by black-listing particular SQL characters. </p>
<p>When I was quoted in a <a href="http://www.darkreading.com/security/app-security/showArticle.jhtml?articleID=217400256">Darkreading article</a>  as saying costs to fix were [so low], it was these spot-fixes to which I referred. These fixes don&#8217;t (often) fully remediate that particular vulnerability (even in that narrow locale) let alone improve the application&#8217;s overall security posture. But, I&#8217;d say they&#8217;re the most common response to an assessment finding. Like McGraw says regarding the BSIMM data, &#8220;we observed monkeys eat bananas; is that good? I don&#8217;t know.&#8221;</p>
<p>Having considered an attacker&#8217;s capabilities and motivation, and the value of what you&#8217;re protecting&#8230; an organization might in fact choose to engage  in such cat-and-mouse play as the trivial fixes above imply, engineer a real fix, employ some combination of both, or off-load risk in an entirely different way.  </p>
<p>Just like before, however, it&#8217;s unlikely the vulnerability was created yesterday, so the software <em>has been</em> vulnerable for some time. When risk analysis has occurred, and the full cost of a complete solution is resolved, complete with its own residual risk calculation, it&#8217;s very likely that a practical organization will tier its response, iterating in time.</p>
<p>Thanks for the post, Ben.<br />
-jOHN</p>
<p>(*1) - Within a Java EE app found through tool-assisted code review with no preference for having been reviewed prior or not (be it prior code review or penetration test). Critical and High in these cases varied somewhat, but always having been seen by the client as exploitable and accepted for remediation by development.</p>
<p>(*2) - This is somewhat glib. More accurately, the organization has increased its visibility into what vulnerabilities its software possesses. It can not say these are the only vulnerabilities the software possesses, and, using purely code review, it can not always say with 100% confidence that detected vulnerabilities are exploitable; some statically determined findings are obviously exploitable whereas others will require dynamic verification. </p>
<p>(*3) - This normalization is even more important if the assessment was delivered by a 3rd party tool or assessor conducting their first run/engagement with an organization. Internal assessment teams often have it easier; they should know/conform to the business unit&#8217;s risk management measurement memes.</p>
<p>(*4) - Unless they have a really terrible vulnerability management process or a shady security vendor ;-)</p>
<p>(*5) - Indeed, I <strong>have</strong> suggested use of a Top N list. Here, I&#8217;m using it to indicate a priority implicit in industry opinion. Better to augment that clause with [the most common types of attacks observed in our production environment and the #1 emerging attack our security research team advises us on].</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/05/20/security-and-time/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter Security</title>
		<link>http://www.cigital.com/justiceleague/2009/05/18/twitter-security/</link>
		<comments>http://www.cigital.com/justiceleague/2009/05/18/twitter-security/#comments</comments>
		<pubDate>Mon, 18 May 2009 17:06:01 +0000</pubDate>
		<dc:creator>gem</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=169</guid>
		<description><![CDATA[I just published a little ditty on Twitter security that is bound to get some interesting feedback.  My bet is that much of the feedback is less than 140 characters long!
My friend Joe Faber (of Spaghettios fame) sent me this Youtube video, which I think sums up Twitter nicely:

Your longer feedback is welcome below!
]]></description>
			<content:encoded><![CDATA[<p>I just published <a href="http://www.informit.com/articles/article.aspx?p=1350268">a little ditty on Twitter security</a> that is bound to get some interesting feedback.  My bet is that much of the feedback is less than 140 characters long!</p>
<p>My friend Joe Faber (of Spaghettios fame) sent me <a href="http://www.youtube.com/watch?v=PN2HAroA12w">this Youtube video</a>, which I think sums up Twitter nicely:</p>
<p align="center"><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/PN2HAroA12w&#038;hl=en&#038;fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/PN2HAroA12w&#038;hl=en&#038;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>Your longer feedback is welcome below!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/05/18/twitter-security/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Software Security 2008</title>
		<link>http://www.cigital.com/justiceleague/2009/04/16/software-security-2008/</link>
		<comments>http://www.cigital.com/justiceleague/2009/04/16/software-security-2008/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 13:30:09 +0000</pubDate>
		<dc:creator>gem</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=164</guid>
		<description><![CDATA[For the past three years, I have collected and published revenue numbers from tools and services in the software security space.  Here are pointers to the three resulting articles, including this year’s NEW article (for 2008):

informIT (2008):  Software Security Comes of Age: Space approaches $500M threshold
informIT (2007): Software Security Demand Rising
Darkreading (2006): Want [...]]]></description>
			<content:encoded><![CDATA[<p>For the past three years, I have collected and published revenue numbers from tools and services in the software security space.  Here are pointers to the three resulting articles, including this year’s NEW article (for 2008):</p>
<ul>
<li><strong style="font-size: 1.1em;">informIT (2008):  <a href="http://www.informit.com/articles/article.aspx?p=1338343">Software Security Comes of Age: Space approaches $500M threshold</a></strong></li>
<li>informIT (2007): <a href="http://www.informit.com/articles/article.aspx?p=1237978">Software Security Demand Rising</a></li>
<li>Darkreading (2006): <a href="http://www.darkreading.com/security/management/showArticle.jhtml?articleID=208803627">Want Turns to Need</a></li>
</ul>
<p>Before some observations, here is a pretty picture showing growth over time, divided among tools, services, and pizza boxes.  Cigital remains the largest independent software security services company.  For more details, see <a href="http://www.informit.com/articles/article.aspx?p=1338343">my informIT report</a>.</p>
<p align="center"><img src="/justiceleague/images/softsec-rev.png" width="362" height="218" alt="Software Security Space Revenue graph" /></p>
<p>Probably the most important development in 2008 is that the space as a whole is nearing a very important $500M threshold.  At this level of business activity, the technology analysts start to take a big interest.  This creates a feedback loop of sorts as the middle market engages.  Some evidence of this effect:</p>
<ul>
<li>Gartner analyst Joseph Fieman published the <a href="http://www.fortify.com/servlet/downloads/public/GartnerMQ_StaticApplicationSecurityTesting.pdf">FIRST Gartner magic quadrant</a> for the tools part of the software security space this year.</li>
<li>Chenxi Wang from Forrester published a Q4 report on the <a href="http://a964.g.akamaitech.net/f/964/714/2d/www.forrester.com/imagesV2/uplmisc/0,5110,47206,00.pdf">future of software security</a> (registration supposedly required)</li>
</ul>
<p>Other analysts of note include:</p>
<ul>
<li>Ramon Krikken from Burton Group</li>
<li>Charles Kolodgy from IDC</li>
<li>Nigel Stanley from Bloor Research</li>
</ul>
<p>I will continue to track growth and development of software security over time, but I am very pleased that the analysts are pitching in.  As software security matures and the middle market emerges, we will start to have an important impact on the rest of computer security.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/04/16/software-security-2008/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Follow-up: Integrating Assessment Tools</title>
		<link>http://www.cigital.com/justiceleague/2009/03/31/follow-up-integrating-assessment-tools/</link>
		<comments>http://www.cigital.com/justiceleague/2009/03/31/follow-up-integrating-assessment-tools/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 07:25:20 +0000</pubDate>
		<dc:creator>jOHN</dc:creator>
		
		<category><![CDATA[Risk Management]]></category>

		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=158</guid>
		<description><![CDATA[My last post spawned some questions, which I responded to in turn. Here was my response:
[Adapters]
Adapters for assessment results can take a few forms, but let&#8217;s address three specific scenarios that fan-in to an assessment results/presentation step and a few that fan-out.
[Fan in]
Fan in typically comes from three sources: 1) static tools, 2) testing tools, [...]]]></description>
			<content:encoded><![CDATA[<p>My last <a href="http://www.cigital.com/justiceleague/2009/03/30/maturity-models-vs-top-10-lists/">post</a> spawned some <a href="http://lists.virus.org/securecoding-0903/msg00070.html">questions</a>, which I responded to in turn. Here was my response:</p>
<p><strong>[Adapters]</strong><br />
Adapters for assessment results can take a few forms, but let&#8217;s address three specific scenarios that fan-in to an assessment results/presentation step and a few that fan-out.</p>
<p><strong>[Fan in]</strong><br />
Fan in typically comes from three sources: 1) static tools, 2) testing tools, and 3) manual analysis.</p>
<p>Adapters that deal with fan-in have three challenges to surmount:<br />
A)Technically trans-code results from #1, #2, or #3 into a single tool&#8217;s format for roll-up, or a tool-independent alternative<BR><br />
B) Normalize results between #1, #2, and #3 so that &#8216;apples&#8217; and &#8216;oranges&#8217; get reported rather than &#8216;apples&#8217; and &#8216;cars&#8217;<BR><br />
C) Code results with organization-specific &#8220;whathaveyou&#8221;<BR></p>
<p><strong>[Challenge A - Trans-code]</strong><br />
The good news about the tools is that they nearly all export to some XML format you can manipulate. This tackles output from #1 and #2. Organizations that adopted any tool early have struggled with keeping up with format changes but have indicated to me that they&#8217;re willing to pay this small price for the ability to &#8216;plug&#8217; that many results into their developers&#8217; bug-tracking systems.</p>
<p>A bigger challenge (effort and therefore cost-wise) is getting manual results (#3) into either the format driven by the tool responsible for reporting or that independent format I described. Smart consulting firms have built &#8216;emselves workflow to manage this. In the &#8217;90&#8217;s we at Cigital used to pine for the report-generating automation of our then-competitor @Stake and waffle about whether our client-base was too disparate and our assessments too varied in scope to support a similar trick. I see no reason not to, within an organization, code up something that helps-technically-integrate your manual review findings with those found by tools.</p>
<p><strong>[Challenge B - Normalize]</strong><br />
Manual reviewers report to me their discomfort with the rigidity of systems like &#8220;The Seven Kingdoms&#8221; and its competitors. Mind you, I don&#8217;t dislike these taxonomies, but people get crotchety and might complain if they&#8217;re forced to cram their findings down into a SAST or DAST report. They perceive, it would seem, the vulnerabilities they find to be like snowflakes ;-)</p>
<p>An independent format can be successful as well. One can roll their own (for their organization), or lean heavily on the community and go with something like Mitre&#8217;s  CWE. At Cigital, we&#8217;re involved with CWE and follow-on work but have also helped people organize their own. A critical discussion of this trade off is possible, but beyond the scope of this email. That leads us into&#8230;The cost of normalizing results between #1 and #2 eclipses the technical challenges of building the adapter.</p>
<p><strong>[Challenge C - 'Whathaveyou']</strong><br />
I would say this though: if your organization has progressed to the point where it possesses security standards (prescriptive or otherwise), they should absolutely be referenced by appropriate findings in the report. This goes for both violations of the standards and the applicability of standards that would serve to prevent or mitigate a particular risk.</p>
<p>References to policy/standards can be augmented with best practices, if your organization makes that distinction. I&#8217;ve seen organizations link to internal/external resources for training and/or further information as well. If you&#8217;re going to try to transition from &#8220;the bug hunt&#8221; to &#8220;building security in&#8221;, one great way is to provide developers immediately-available information as they&#8217;re making the mistake.</p>
<p><strong>[Fan out]</strong><br />
Now, you have to &#8216;fan out&#8217; into support for bug-tracking systems. Most organizations&#8217; security groups have at least as much battle to fight here as a security consultancy, actually. Why? Because the organization hasn&#8217;t mandated a single development toolkit. The good news here is that while there may be more fan-out than there was fan-in, bug-tracking tools were built to be supplied data. Writing this portion of the adapter&#8211;a conduit between what normalized findings you&#8217;ve compiled and the offending team&#8217;s bug tracking system is fairly (technically) straightforward.</p>
<p><strong>[Industry Std. 'Schema']</strong><br />
Sean Barnum has done a flotilla of work on this topic with Bob Martin at Mitre.  Though it can be cumbersome or uninteresting to practitioners, I think the work they&#8217;re doing is important because whether its admitted or not, work on audit, testing, and verification methodologies/standards must implicitly take a stand on defining the words you listed (finding, root cause, vuln., etc.). Where such efforts take a stand, one&#8217;s organization can find alignment with their own notions quite challenging. Where it&#8217;s implicit (or worse, ambiguously and poorly defined) you get lots of wasted time as assessors argue with development over semantics, next steps, and responsibilities.</p>
<p>Each methodology has its own limitations in this department, resulting from its focus and perspective, IMO. If you look at OSSTM, there&#8217;s a wealth of definition around activities, which really helps those implementing it differentiate what techniques they could apply in testing their system. Their template reporting form falls short on defining constructs such as root cause and finding and &#8217;speaks&#8217; like an auditor&#8217;s report. This doesn&#8217;t do the depth and breadth of their assessing techniques justice which means, ultimately, adopting it will take a lot of work in the realm of that normalization task we treated earlier. NIST&#8217;s methodology formalized controls even more producing the 800-53 publication. I need to look at their recent foray into app sec and reconsider ASVS much more closely and for much longer to make judgments in this realm. Currently, I&#8217;ve only considered it in the insanely and unfairly narrow context of &#8220;a set of stuff to look for.&#8221; I&#8217;ll follow up with you on t!<br />
 his later this week or next.</p>
<p><strong>[Correlating Risk Systems]</strong><br />
Taking your question literally: Risk systems? Most risk management companies wield Powerpoint and Excel, and as such, glue is hard to come by&#8211;let alone &#8216;open glue.&#8217; I don&#8217;t have much experience with Archer, but their glue is proprietary but their suite includes the ability to weave together policy, requirements, findings, and change/bug management. It sits outside the MS Office stack, but what little experience I&#8217;ve had with it wasn&#8217;t necessarily positive  ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/03/31/follow-up-integrating-assessment-tools/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Maturity Models vs. Top 10 Lists</title>
		<link>http://www.cigital.com/justiceleague/2009/03/30/maturity-models-vs-top-10-lists/</link>
		<comments>http://www.cigital.com/justiceleague/2009/03/30/maturity-models-vs-top-10-lists/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 14:12:21 +0000</pubDate>
		<dc:creator>jOHN</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=154</guid>
		<description><![CDATA[A few back, I wrote about Maturity Models vs. ASVS. On SC-L, a &#8216;discussion&#8217; broke out regarding Maturity Models (MM) vs. Top N lists. Like ASVS, Top 10 lists target a different problem than MMs. In particular, the discussion focused around how one should enhance their assessment practices.
I&#8217;ve edited and reproduced my SC-L post here [...]]]></description>
			<content:encoded><![CDATA[<p>A few back, I wrote about <a href="http://www.cigital.com/justiceleague/2009/03/09/improving-software-security-maturity-models-and-their-ilk/">Maturity Models vs. ASVS</a>. On <a href="http://www.mail-archive.com/sc-l@securecoding.org/">SC-L</a>, a &#8216;discussion&#8217; broke out regarding Maturity Models (MM) vs. Top N lists. Like ASVS, Top 10 lists target a different problem than MMs. In particular, the discussion focused around how one should enhance their assessment practices.</p>
<p>I&#8217;ve edited and reproduced my SC-L post here for those of you who don&#8217;t read the list. My objective? provide specifics on what one can do to enhance assessment practices. I provide a commentary on the on-going discussion throughout. The central theme of my approach?</p>
<blockquote><p>security vulnerabilities don&#8217;t count unless they affect development</p></blockquote>
<p>Now the approach:</p>
<p><strong>Integrate Assessment Practices</strong></p>
<p><em>[What?]</em><br />
Wrap the assessment activities (both tool-based and manual techniques) in a process that:</p>
<ul>
<li>Normalizes findings under a common reporting vocabulary and demonstrates impact</li>
<li>Include SAST, DAST, scanning, manual, out-sourced, &amp; ALL findings producers in this framework</li>
<li>Anchors findings in either a developmental root cause or other software artifact:</li>
<li>Use Case, reqs, design, spec, etc.</li>
<li>Builds adaptors so that bugs are automatically entered in tracking systems</li>
<li>Adaptors should include both tool-based and manual findings</li>
<li>Calculates impact with an agreed-upon mechanism that rates security risk with other  factors:</li>
<li>Functional release criteria</li>
<li>Other non-security non-functional requirements</li>
</ul>
<p><em>[Realistic?]</em><br />
I believe so. Cigital&#8217;s more junior consultants work on these very tasks, and they don&#8217;t require an early-adopter to fund or agree to them.  There&#8217;s plenty of tooling out there to help with the adapters and plenty of presentations/papers on risk (<a href="http://www.riskanalys.is">www.riskanalys.is</a>), normalizing findings (<a href="http://cwe.mitre.org/">cwe.mitre.org/</a>) , and assessment methodology (<a href="http://www.cigital.com/papers/download/j15bsi.pdf">www.cigital.com/papers/download/j15bsi.pdf</a>).</p>
<p><em>[Panacea?]</em><br />
No. I&#8217;ve done research and consulting in functional testing. If you think security is powerless against development, try spending a few years in a tester&#8217;s shoes! Functionality may be king for development and PMs, but I&#8217;ve found that functional testing has little to no power. While a lack of features may prevent software from going out the door, very rarely do I find that functional testing can implement an effective &#8220;go/no-go&#8221; gate from their seat in the org. That&#8217;s why testing efforts seek muscle from their friend Security (and its distant cousins under quality &#8220;Load and Performance&#8221;) to stop releases from going out the door.</p>
<p>There&#8217;s no reason NOT to integrate with testing efforts, reporting, and groups: we should. There&#8217;s every reason security should adhere to the same interface everyone else does with developers (let them produce code and let them consume bugs)&#8230; I think the steps I outlined under &#8216;what&#8217; bring us closer. I don&#8217;t think we need to (or can expect to) flip organizational precedent and behavior on its head to make progress.</p>
<p><em>[Steering]</em><br />
The above scenario doesn&#8217;t allow explicitly for two key input/outputs from the software security ecosystem:</p>
<ol>
<li>Handling ultra-high-priority issues in real time</li>
<li>Adjusting and evolving to changing threat landscapes</li>
</ol>
<p><strong>Establish a Steering Committee</strong></p>
<p><em>[What?]</em><br />
Establish a steering committee on which a software security, dev, architecture, operations, and corporate risk sit. These folk should manage the risk-model, scoring, security standards that drive the assessment verification standard, and the definition of both short-term and longer-term mitigating strategies. I&#8217;d argue that you&#8217;d like Industry representation too. That organization could come in written form (like the Top N lists) or in the form of consulting or a panel.</p>
<p>When incidents or firefights come into play, absolutely allow them to be handled out of band (albeit through a documented process), but! Not until they&#8217;ve been rated with the agreed-upon model.</p>
<p><em>[Realistic?]</em><br />
Yes. I have several clients that use this structure. I speak with non-clients that do the same. Data gathering for scoring and prioritization is easy if you&#8217;ve done the steps in the previous section. The operations guys help you grade the pertinence of your efforts to what they&#8217;re seeing &#8216;in the wild&#8217; too.</p>
<p><em>[Panacea?]</em><br />
Does a steering committee help you respond with agility to a high-priority threat in real time? Not explicitly. But, it does help if your organizational stakeholders already have a working relationship and a mutual respect.  Also: I think one root cause of the underlying discomfort (or dislike) with people&#8217;s perspectives on this thread has been:</p>
<blockquote><p>&#8220;OK&#8230; you don&#8217;t like Top N lists&#8230; So what do you do?&#8221;</p></blockquote>
<p>In my mind&#8230; The above answers that question.</p>
<p><strong>[Assessment and Tools]</strong><br />
Do I believe that the normalized findings will emerge only from static analysis (or any other kind of vulnerability detection tool)? Absolutely not. People who follow my writings know I expect dramatic (ally high and low) numbers to be associated with tools. </p>
<p>Let&#8217;s summarize my data. Organizations can expect:</p>
<ol>
<li>Static analysis tools to account for 15-20% of their total findings, out of the box</li>
<li>An initial false positive rate as high as 75-99% from a static analysis tool, without tuning</li>
<li>Less than 09% code coverage (by even shallow coverage metrics) from pen-testing tools</li>
</ol>
<p>Qualitatively, I can tell you that I expect an overwhelming majority of static analysis results produced in an organization to come from customization of their adopted product.</p>
<p>Simply: if you base your world view on only those things a tool (any tool) produces, you&#8217;re world view is too narrow and will prove ineffective. The same is true of those who narrow their scope to the OWASP Top-10 or the SANS Top 25.</p>
<p><strong>[Top N Redux]</strong><br />
Some have left the impression that starting with a Top N list is of no use. Please don&#8217;t think I&#8217;m in this camp.  In my last two public presentations I&#8217;ve indicated, &#8220;If you&#8217;re starting from scratch these lists (or lists intrinsically baked into a tool&#8217;s capabilities for detection) are a great place to start.&#8221; Yes, one of these presentations was entitled &#8220;Why Top N lists are bad&#8221; ;-) Also:</p>
<p>If you can&#8217;t afford frequent industry interaction-use Top N lists as a proxy for it. They&#8217;re valuable, but like anything, only to a point.</p>
<p>For me, this discussion will remain circular until we think about it in terms of measured, iterative organizational improvement. Why? Because when an organization focuses on getting beyond a &#8220;Top N&#8221; list it will just create their own organization-specific &#8220;Top N&#8221; list :-) If they&#8217;re smart though, they&#8217;ll call it a dash board and vie for a promotion ;-)</p>
<p>From the other side? People building Top N lists know they&#8217;re not a panacea, but also know that a lot of organizations simply can&#8217;t stomach the kind of emotional investment that BSIMM (and the ilk) come with.</p>
<p>This leaves me with the following:</p>
<p><strong>[Conclusions]</strong></p>
<ol>
<li>Top N lists are neither necessary nor sufficient for organization success</li>
<li>Top N lists are necessary but not sufficient for industry success</li>
<li>Maturity models are neither necessary nor sufficient for organizational success</li>
<li>Maturity models are necessary but not sufficient for industry success</li>
<li>Always avail yourself of what the industry produces;</li>
<li>Never confine yourself to a single industry artifact dogmatically;</li>
<li>Whatever you consume from industry, improve it by making it your own; and</li>
<li>Where-ever you are in your journey, continue to improve iteratively.</li>
</ol>
<p><strong>[Related Perennial Rabbit Holes] (bonus)</strong></p>
<ul>
<li>Bugs vs. Flaws: John Steven&#8217;06 - <a href="http://www.mail-archive.com/sc-l@securecoding.org/msg00888.html">www.mail-archive.com/sc-l@securecoding.org/msg00888.html</a></li>
<li>Security Vs. Quality: Cowan &#8216;02 - <a href="http://www.securityfocus.com/archive/98/304766">www.securityfocus.com/archive/98/304766</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/03/30/maturity-models-vs-top-10-lists/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Marketing Will Kill Federated Identity on the Web</title>
		<link>http://www.cigital.com/justiceleague/2009/03/18/marketing-will-kill-federated-identity-on-the-web/</link>
		<comments>http://www.cigital.com/justiceleague/2009/03/18/marketing-will-kill-federated-identity-on-the-web/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 15:18:59 +0000</pubDate>
		<dc:creator>scott</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=151</guid>
		<description><![CDATA[Warning: a fair amount of cynicism occurs in this post.
Some of my buddies have been exchanging ideas of what keeps us interested and one friend was thinking about how he could use a user&#8217;s Facebook login on his site.  This nudge along with some work I&#8217;m doing with federated identity and Amazon SSO all [...]]]></description>
			<content:encoded><![CDATA[<p>Warning: a fair amount of cynicism occurs in this post.</p>
<p>Some of my buddies have been exchanging ideas of what keeps us interested and one friend was thinking about how he could use a user&#8217;s Facebook login on his site.  This nudge along with some work I&#8217;m doing with federated identity and Amazon SSO all have brought this federated identity stuff onto the foreground thread in my brain.</p>
<p>It&#8217;s all very interesting stuff and I think there&#8217;s some great technology behind all of this.  I&#8217;m not worried about the technology part.  It&#8217;s whether the technology can ever get implemented that worries me.  </p>
<p>Why?  Well on the internet audience and the audience demographics are the currency of the realm.  If there&#8217;s federated identity, then providing all of my identity information to the relying part is redundant.   There&#8217;s no way marketing is going to let THEIR site be the relying party.  Marketing will want THEIR site to be the IdP.  That&#8217;s because they want the users to sign up and provide all of the contact and demographic information since that&#8217;s the only business model that has been proven to work last time I checked.</p>
<p>I can imagine a conversation going like this:</p>
<p><strong>Me:</strong> We should implement federated identity so our users don&#8217;t have to log in a gazillion times.<br />
<strong>Marketing:</strong> Good idea.<br />
<strong>Me:</strong> Whose identity should we use?  LiveID?  Amazon?<br />
<strong>Marketing:</strong>  Huh?  What do you mean?  Ours of course.  We need the user to sign up to give us their email address.<br />
<strong>Me:</strong> Well, we can get that.  It&#8217;s part of the claim that we&#8217;ll get as part of SAML.<br />
<strong>Marketing:</strong>  Sam who?  When does the user give us his email?<br />
<strong>Me:</strong> They don&#8217;t give us the email directly.  They give it to the identity provider and then&#8230;<br />
<strong>Marketing:</strong>  No, no, no, no (just like your mom used to do) - this doesn&#8217;t sound like a good idea&#8230;</p>
<p>So maybe all we really need is an identity selector and we&#8217;ll be the digital equivalents of the janitor with the massive key ring on our belts.</p>
<p>Technorati Tags: <a href="http://technorati.com/tag/federated+identity" rel="tag">federated identity</a>, <a href="http://technorati.com/tag/cloud" rel="tag"> cloud</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/03/18/marketing-will-kill-federated-identity-on-the-web/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Security folk often carry Macs, is that an endorsement?</title>
		<link>http://www.cigital.com/justiceleague/2009/03/16/security-folk-often-carry-macs-is-that-an-endorsement/</link>
		<comments>http://www.cigital.com/justiceleague/2009/03/16/security-folk-often-carry-macs-is-that-an-endorsement/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 15:16:07 +0000</pubDate>
		<dc:creator>jOHN</dc:creator>
		
		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=148</guid>
		<description><![CDATA[The Geekonomics blog is often good. A new post  indicates Apple’s veneer of more secure than Microsoft is cracking.
It was only a matter of time. I wanted to clarify that though you see a lot of  security consultants carrying Macs, in Cigital&#8217;s case, it&#8217;s not an endorsement. Again, in the interest of disclosure: [...]]]></description>
			<content:encoded><![CDATA[<p>The Geekonomics blog is often good. <a href="http://blog.geekonomicsbook.com/geekonomics/2009/03/apple-cracking-under-increasing-marketshare.html">A new post</a>  indicates Apple’s veneer of more secure than Microsoft is cracking.</p>
<p>It was only a matter of time. I wanted to clarify that though you see a lot of  security consultants carrying Macs, in Cigital&#8217;s case, it&#8217;s not an endorsement. Again, in the interest of disclosure: though I own and operate many platforms I operate more OS X at home and office than the others. </p>
<p>I attribute Mac adoption amongst security folk to two reasons: the platform combines a Unix-like environment with the ability to interact through email and MS Office and that the machines, for the most part, are a snappy bit of hardware, cobbled together into a &#8220;shiny object&#8221; (desirable) form. This second aspect goes a long way to explain the recent jump in ownership in the security community: &#8220;fan-boys.&#8221;</p>
<p>Any claims that it’s because &#8220;they’re more secure” should be considered with a fair amount of skepticism. </p>
<p>Yes, historically, the platform has suffered less pain of viruses and malware. Yes, certain aspects of their OS/platform and design did make improvements over XP. </p>
<p>The truth is this:</p>
<p>Apple doesn’t “Build Security In” very well at all. You don&#8217;t have to be an insider to understand why. Redmond is exporting security blogs, books, and value like never before. You don&#8217;t see a lot of Apple security people in the community though. You don&#8217;t see good solid standards-based support for authentication or web-services that would help you interact securely with your enterprise (Apple hides behind their &#8216;vision&#8217; on this one). You don&#8217;t see a lot of support for Objective-C in the static analysis tool realm. </p>
<p>I believe that though Apple paid great lip service to security as a differentiator initially, (they even talked about phones like the iPhone becoming the basis of identity moving forward) but yet they abandoned it when they realized the cost of a real enterprise-level program. They also abandoned what was probably their best protection: the PPC processor. Their security proposition, IMO, is based on obscurity.</p>
<p>I’ve said before, “Woe to Apple when market share (and thus Economics) garners the attention necessary to motivate attackers to focus on the platform—attackers may find their task easier than with Vista.”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/03/16/security-folk-often-carry-macs-is-that-an-endorsement/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Improving Software Security (Maturity Models and Their Ilk?)</title>
		<link>http://www.cigital.com/justiceleague/2009/03/09/improving-software-security-maturity-models-and-their-ilk/</link>
		<comments>http://www.cigital.com/justiceleague/2009/03/09/improving-software-security-maturity-models-and-their-ilk/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 19:35:09 +0000</pubDate>
		<dc:creator>jOHN</dc:creator>
		
		<category><![CDATA[BSIMM]]></category>

		<category><![CDATA[Software Security]]></category>

		<guid isPermaLink="false">http://www.cigital.com/justiceleague/?p=141</guid>
		<description><![CDATA[Ben Worthen broke the BSIMM story on wsj.com as was posted earlier. 
I was shocked when someone said, &#8220;Oh and ASVS is also available, great&#8221; on an OWASP list. Super, I thought, but I don&#8217;t understand the connection. When I looked at the WSJ site, I noticed Jim Manico (of OWASP, Aspect, and ASVS fame) [...]]]></description>
			<content:encoded><![CDATA[<p>Ben Worthen <a href="http://blogs.wsj.com/digits/2009/03/04/new-effort-hopes-to-improve-software-security/">broke</a> the <a href="http://www.bsi-mm.com/">BSIMM</a> story</a> on wsj.com as was posted earlier. </p>
<p>I was shocked when someone said, &#8220;Oh and <a href="http://www.owasp.org/index.php/OWASP_Application_Security_Verification_Standard_(ASVS)">ASVS</a> is also available, great&#8221; on an OWASP list. Super, I thought, but I don&#8217;t understand the connection. When I looked at the WSJ site, I noticed Jim Manico (of OWASP, Aspect, and ASVS fame) wrote, &#8220;But for those of your programming web applications, consider looking at http://www.owasp.org/index.php/ASVS - it is focused specifically on web application security evaluation.&#8221; I know Jim, he&#8217;s a good guy, and my curiosity about where the link between maturity models and verification standards was sated, but I thought I&#8217;d spend some time here quickly disambiguating them:</p>
<p>Verification standards, like ASVS, enumerate techniques with which an application&#8217;s correct use of security controls can be verified. It also posits (what it calls) verification requirements that serve as specifically enumerated tests of particular security controls (such as input validation). Such a standard is best operationally deployed by an organization&#8217;s application security group. In some cases, the audit group may own verification and reporting. </p>
<p>Auditors especially love <a href="http://csrc.nist.gov/publications/PubsDrafts.html#SP-800-53-Rev.%203">NIST&#8217;s 800-53 standard</a>, which recommends security controls for Federal Information Systems and Organizations. This document has frustrated me historically because of its focus on OS configuration, topology, and patch level. Largely, it ignores the application layer of an organizational stack. As such, organizations applying it have found little impact in preventing the web&#8217;s most common application security vulnerabilities. I reckon one aim of ASVS was closing this particular gap.</p>
<p>Regardless of what you think of ASVS or NIST 800-53, one applies the bulk of their guidance to an application and systems.</p>
<p>A maturity model such as BSIMM measures what an organization is doing to secure their software. Organizations will be graded on whether they&#8217;ve defined and adopted assessment (verification) techniques, but also as to the state of other organizational constructs such as a training program, post-deployment incident response capabilities, and specific application security management. A maturity model helps organizations place their personnel, use of tools, and practices against industry best practices in a broader context (a software security framework). Verification of applications is only a small piece of that governance activity. As such, BSIMM data is produced, consumed, and managed at the CISO/CIO level, rather than within the application security group (as ASVS).</p>
<p>Organizations will need an ability to consistently and comprehensively verify the security of their applications but this is only a piece of what those same organizations will also need to do, in a more broad context, to make sure they reduce, other-wise manage, or transfer software-induced business risk.</p>
<p>To this extent, comparison of BSIMM to ASVS is even a poor fit than comparing the Rational Unified Process (RUP) to Capability Maturity Model (CMM). -shiver-</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cigital.com/justiceleague/2009/03/09/improving-software-security-maturity-models-and-their-ilk/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
