<?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: element]]></title>
    <link>http://securityratty.com/tag/element</link>
    <description></description>
    <pubDate>Thu, 03 Apr 2008 13:11:11 +0000</pubDate>
    <generator>iRatty Engine</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <item>
      <title><![CDATA[A tip on using ASP.NET validation controls]]></title>
      <link>http://securityratty.com/article/20fc43ecdf7ca60d64f9285d0e374a62</link>
      <guid>http://securityratty.com/article/20fc43ecdf7ca60d64f9285d0e374a62</guid>
      <description><![CDATA[Executive summary
ValidationSummary controls look at the ErrorMessage field to figure out what to display, so always use ErrorMessage in a verbose enough way that it will be helpful from a...]]></description>
      <content:encoded><![CDATA[<p>Executive summary:</p> <ul> <li>ValidationSummary controls look at the ErrorMessage field to figure out what to display, so always use ErrorMessage in a verbose enough way that it will be helpful from a ValidationSummary control.</li> <li>If you need a shorter message to display inline (i.e., where the validation control is on the form, as opposed to the ValidationSummary) use the body of the control to define it.</li></ul> <p>In the past, I&#39;ve used RequiredFieldValidator controls on my web forms to remind users that certain fields are required. I would set the ErrorMessage to something vanilla like, &quot;This field is required&quot;, or even something simpler like &quot;*&quot; (an asterisk) if I didn&#39;t have much room on the form to display more prose for an error.</p> <p>A friend was recently testing a new feature that I&#39;d built for our sales team and she had a hard time seeing the little red asterisks that were showing up next to required fields. It felt to her as though she was pushing the submit button on the form but nothing was happening. It was clear that a ValidationSummary control would be helpful, especially if placed close to the submit button for the form.</p> <p>I&#39;ve been a bit lazy in the past about using ValidationSummary controls, partially because most of my forms are simple enough that they feel a bit redundant. But on a more complicated form, they can be very helpful to guide users back to the places on the form where there&#39;s problems.</p> <p>So I threw one of those puppies on the form and immediately saw that there was a problem - my error message was set to &quot;*&quot;, which meant that my validation summary was pretty useless - it just displayed a bunch of red asterisks! And in places where I&#39;d used the prose, &quot;This field is required&quot;, well that was pretty useless as an error message in the summary.</p> <p>After a bit of research and experimentation, I discovered that the ValidationSummary control looks at the ErrorMessage property on each validation control in order to figure out what to display in the summary. So it&#39;s important to use ErrorMessage with a summary in mind! Don&#39;t use text like &quot;*&quot; or &quot;This field is required&quot;. Be more specific so the user can find her way up to the problem field, as in, &quot;PostalCode is required&quot;.</p> <p>But if you make ErrorMessage verbose so that it&#39;s helpful in a summary, it may make your form really ugly when displayed inline next to the control being validated. The trick is to use the body of the validation control element to specify the inline error message. Then you end up with two messages: a verbose one that&#39;s used in your summary, and a more localized, brief message that shows up right next to the control being validated. Note the asterisk that&#39;s in the body of the RequiredFieldValidator below:</p><pre class="csharpcode"><span class="kwrd">&lt;</span><span class="html">asp:RequiredFieldValidator</span>
      <span class="attr">ErrorMessage</span><span class="kwrd">=&quot;Zip/postal code is required&quot;</span>
      <span class="attr">ControlToValidate</span><span class="kwrd">=&#39;txtPostalCode&#39;</span>
      <span class="attr">ValidationGroup</span><span class="kwrd">=&#39;BasicInfo&#39;</span>
      <span class="attr">Display</span><span class="kwrd">=&quot;Dynamic&quot;</span>
      <span class="attr">runat</span><span class="kwrd">=&#39;server&#39;</span><span class="kwrd">&gt;</span>*<span class="kwrd">&lt;/</span><span class="html">asp:RequiredFieldValidator</span><span class="kwrd">&gt;</span></pre>
<p>I&#39;ve learned a lesson from all of this. In the future when I use validation controls I&#39;ll always provide a summary-friendly message in the ErrorMessage field, and if I need something different (typically shorter) to display inline, I&#39;ll put it in the body of the validation control element.</p>
<p>Hope this helps!</p><div style="clear:both;"></div><img src="http://www.pluralsight.com/community/aggbug.aspx?PostID=52816" width="1" height="1">]]></content:encoded>
      <pubDate>Wed, 03 Sep 2008 13:16:35 +0000</pubDate>
      <category domain="http://securityratty.com/tag/shorter message">shorter message</category>
      <category domain="http://securityratty.com/tag/message">message</category>
      <category domain="http://securityratty.com/tag/inline error message">inline error message</category>
      <category domain="http://securityratty.com/tag/validation control element">validation control element</category>
      <category domain="http://securityratty.com/tag/control">control</category>
      <category domain="http://securityratty.com/tag/inline">inline</category>
      <category domain="http://securityratty.com/tag/display inline">display inline</category>
      <category domain="http://securityratty.com/tag/errormessage">errormessage</category>
      <category domain="http://securityratty.com/tag/errormessage property">errormessage property</category>
      <source url="http://www.pluralsight.com/community/blogs/keith/archive/2008/09/03/a-tip-on-using-asp-net-validation-controls.aspx">A tip on using ASP.NET validation controls</source>
    </item>
    <item>
      <title><![CDATA[ASCII Art Spam]]></title>
      <link>http://securityratty.com/article/49c86c75eefe5a4e5a516c983562397c</link>
      <guid>http://securityratty.com/article/49c86c75eefe5a4e5a516c983562397c</guid>
      <description><![CDATA[I recently had a chat with Stephen Shankland over at CNET regarding the weird and wacky world of ASCII Art Spam . It's been around for some time now, and every now and again there's a little surge...]]></description>
      <content:encoded><![CDATA[
        I recently had a chat with Stephen Shankland over at CNET regarding the weird and wacky world of <a href="http://news.cnet.com/8301-1023_3-10025917-93.html">ASCII Art Spam</a>. It's been around for some time now, and every now and again there's a little surge (currently most of it seems to be coming out of Korea &amp; China) before dying down again.<br /><br />Of course, it has an element of visual appeal to it in some cases:<br /><br /><div class="flickr-frame">	<a href="http://www.flickr.com/photos/petecooper/2759424270/" title="photo sharing"><img src="http://farm4.static.flickr.com/3109/2759424270_7a76511520.jpg" class="flickr-photo" alt="" /></a><br />	<font class="flickr-caption"><a href="http://www.flickr.com/photos/petecooper/2759424270/">A bowl of  spammy noodles</a>, originally uploaded by <a href="http://www.flickr.com/people/petecooper/">pragmatic_pete</a>.</font><br /><br />They're pretty cool noodles, however you look at it. The biggest problem (for the spammers, anyway) continues to be the fact that, for the most part, the spam is largely unintelligble.<br /><br /><div class="flickr-frame">	<a href="http://www.flickr.com/photos/schoschie/351948223/" title="photo sharing"><img src="http://farm1.static.flickr.com/159/351948223_7ba810f520.jpg" class="flickr-photo" alt="" /></a><br />	<font class="flickr-caption"><a href="http://www.flickr.com/photos/schoschie/351948223/">ASCII Art Spam</a>, originally uploaded by <a href="http://www.flickr.com/people/schoschie/">schoschie</a>.<br /><br />.....wha? Sexy....grrmfs? Girls? Gorillas? Who knows. The problem with mangled text also extends (somewhat more crucially) to the URLs they happen to be pimping:<br /><br /></font><div class="flickr-frame">	<a href="http://www.flickr.com/photos/22381191@N02/2697722316/" title="photo sharing"><img src="http://farm4.static.flickr.com/3277/2697722316_f70bc0d65e.jpg" class="flickr-photo" alt="" /></a><br />	<font class="flickr-caption"><a href="http://www.flickr.com/photos/22381191@N02/2697722316/">Spam</a>, originally uploaded by <a href="http://www.flickr.com/people/22381191@N02/">cablejimmy</a>.<br /><br />They're not doing too badly there until they reach the web address, at which point it might as well say<br /><br />www. absolutelynoideawhatthatsays .com<br /><br />Of course, the last thing I'm suggesting is that I long for the day when the spammers get it <i>right</i>, but at least they can provide us with some cheap laughs regarding how hopeless their spam is in the meantime.<br /></font></div></div></div><br /> 
        
    ]]></content:encoded>
      <pubDate>Wed, 27 Aug 2008 04:35:14 +0000</pubDate>
      <category domain="http://securityratty.com/tag/ascii art spam">ascii art spam</category>
      <category domain="http://securityratty.com/tag/spam">spam</category>
      <category domain="http://securityratty.com/tag/pretty cool noodles">pretty cool noodles</category>
      <category domain="http://securityratty.com/tag/spammy noodles">spammy noodles</category>
      <category domain="http://securityratty.com/tag/web address">web address</category>
      <category domain="http://securityratty.com/tag/visual appeal">visual appeal</category>
      <category domain="http://securityratty.com/tag/pragmatic pete">pragmatic pete</category>
      <category domain="http://securityratty.com/tag/cheap laughs">cheap laughs</category>
      <category domain="http://securityratty.com/tag/spammers">spammers</category>
      <source url="http://blog.spywareguide.com/2008/08/ascii-art-spam.html">ASCII Art Spam</source>
    </item>
    <item>
      <title><![CDATA[EPTS: Proposed Event Processing Definitions, September 20, 2006]]></title>
      <link>http://securityratty.com/article/c90d53785950324b36b55747a92766da</link>
      <guid>http://securityratty.com/article/c90d53785950324b36b55747a92766da</guid>
      <description><![CDATA[For interested readers, here are the event processing definitions we provided to the (future) EPTS working group on September 20, 2006, coordinated (edited)by David Luckham and Roy Schulte
adaptive...]]></description>
      <content:encoded><![CDATA[<p>For interested readers, here are the <a href="http://www.thecepblog.com/pdf/EVENT.PROCESSING.DRAFT.GLOSSARY.V4.SEPT.pdf" target="_blank">event processing definitions</a> we provided to the (future) EPTS working group on September 20, 2006, <a href="http://complexevents.com/?p=195" target="_blank">coordinated (edited) by David Luckham and Roy Schulte</a>;</p>
<p><strong>adaptive process management</strong> (n.) an element of resource and business process management, adaptive search and event processing. Sometimes referred to as “Level 4” event processing or process refinement.</p>
<p><strong>application concept</strong> (n.) a definition of a set of properties that represent the data fields of an application entity. An application concept can describe relationships among themselves. For example, an order concept might have a parent/child relationship with an item concept. A department concept might be related to a purchase requisition concept based on the shared property, department_id. Application concepts can include an application state model.</p>
<p><strong>application state modeler</strong> (n.) a UML-compliant application that allows you to model the life cycle of a concept instance — that is, for each instance of a given concept, you can define which states it will pass through and how it will transition from state to state. States have entry actions, exit actions, and conditions, providing precision control over the behavior of an event processing agent. Transitions between states also may have rules. Multiple types of states and transitions maximize the versatility and power of the application state modeler.</p>
<p><strong>derived event</strong> (n.) an event that is created as a result of processing one or more other events.</p>
<p><strong>complex event</strong> (n.) an event that is a situation-entity abstraction of two or more simple, derived or other complex events.</p>
<p><strong>complex event processing</strong> (n.) CEP is a technology for extracting information from message-based systems. CEP is primarily an event processing concept that deals with the task of processing multiple events from an event cloud with the goal of identifying the meaningful events within the event cloud. CEP employs techniques such as detection of complex patterns of many events, event correlation and abstraction, event hierarchies, and relationships between events such as causality, membership, and timing, and event-driven processes.</p>
<p><strong>event</strong> (n.) a instance of an event definition. It is an immutable object that represents a business activity that happened at a single point in time. Just as one cannot change the fact that a given activity occurred, one cannot change an event — events are immutable.</p>
<p><strong>event aggregation</strong> (n.) the aggregation of simple, derived or complex events into higher levels of event abstractions.</p>
<p><strong>event definition</strong> (n.) a set of properties related to a given activity that represents an important or interesting change of state in a human, system or computational activity. An event definition includes event properties such as event priority, event time to live (TTL), and a description of the payload, which is comprehensive information related to the activity that occurred. Events expire when the TTL has elapsed, unless the event processing agent has instructions to consume them prior to that time.</p>
<p><strong>event channel</strong> (n.) a communications channel in which events are transmitted from event source to event receivers, typically received as electronic messages. Each channel can have multiple destination and. events can be configured to transmit to a default destination. JMS is an example of an event channel.</p>
<p><strong>event cloud</strong> (n.) a partially ordered set of events (poset), either bounded or unbounded, where the partial orderings are imposed by the causal, timing and other relationships between the events. Typically an event cloud is created by the events produced by one or more distributed systems. An event cloud may contain many event types, event streams and event channels. The difference between a cloud and a stream is that there is no event relationship that totally orders the events in a cloud.</p>
<p><strong>event-driven</strong> (n.) the behavior of a human, system or computational entity whose execution or actuation is in response to events, typically received as electronic messages.</p>
<p><strong>event-driven architecture</strong> (n.) an architectural style for distributed computing applications in which some of the components are event-driven and communicate by means of events.</p>
<p><strong>event processing</strong> (n.) computing that performs operations on events, including modifying, creating and destroying events.</p>
<p><strong>event-object</strong> (n.) an software object that represents an event, generally for the purpose of computer processing, that exhibits both encapsulation, inheritance and polymorphism.</p>
<p><strong>event prediction</strong> (n.) computational activity where the impact of events, complex events, and situations caused by events identified, including both opportunity or threat. Sometimes referred to as “Level 2” event processing, impact assessment or predictive analytics.</p>
<p><strong>event pre-processing</strong> (n.) computational activity where events are cleansed or normalized to produce semantically understandable data. Sometimes referred to as “Level 0” event processing.</p>
<p><strong>event processing</strong> (n.) computational activities on events dealing with the association, correlation, and combination of event data and information from single and multiple event sources to achieve refined identity and situation estimates for observed event objects, and to achieve complete and timely assessments of opportunities, threats, and their significance. Event processing is characterized by continuous refinements of event estimates and assessments and by evaluation of the need for additional sources, or modification of the process itself, to achieve improved results.</p>
<p><strong>event processing agent</strong> (n.) an EPA is a computational entity that performs event processing.</p>
<p><strong>event processing network</strong> (n.) a set of event processing agents and a set of event channels connecting them.</p>
<p><strong>event properties</strong> (n.) data representation of an event, typically by name-value pairs of type string, integer, real, boolean or a complex data type.</p>
<p><strong>event refinement</strong> (n.) filter, identify and track events &amp; make initial processing decisions based on association, correlation and state estimation. Sometimes referred to as “Level 1” event, or event-object, track and trace.</p>
<p><strong>event stream</strong> (n.) a time-ordered sequence of events. An event stream may be bounded by a certain time interval or other contextual dimension (content, space, source, certainty), or be open ended and unbounded.</p>
<p><strong>event stream processing</strong> (n.) a time-ordered sequence of events. An event stream may be bounded by a certain time interval or other contextual dimension (content, space, source, certainty), or be open ended and unbounded.</p>
<p><strong>rule</strong> (n.) defines what triggers unusual, suspicious, problematic, or advantageous activity within an event processing agent and what the EPA does when it discovers these types of activities. Rules execute actions based on certain conditions on events, instances, or a combination of both. A rule includes a group of condition-rule statements and action-rule statements. The condition statements instruct the EPA what to look for in events, and action statements instruct the EPA how to respond when conditions are met. If all the conditions in a rule are satisfied by events or instances or both, the EPA fires the actions. The action might be to execute tasks, create an event instance, modify property values in an event instance, create and send an event, or something else.</p>
<p><strong>rules engine</strong> (n.) a type of event processing agent that uses a declarative programming model to process events. Formally described as &#8220;an abstract structure that describes a formal language precisely, i.e., a set of rules that mathematically delineates a (usually infinite) set of finite-length strings over a (usually finite) alphabet“. Informally, it can be any system that uses rules, in any form, that can be applied to data to produce outcomes.</p>
<p><strong>rule language</strong> (n.) is an artificial language that is used to control the behavior of an event processing agent. Rules languages, like human languages, have syntactic and semantic rules to define meaning.</p>
<p><strong>situation refinement</strong> (n.) identify situations, or complex events, based on event clustering, event-event relationships and relationship analysis and context. Sometimes referred to as “Level 2” event processing.</p>
<p><strong>simple event</strong> (n.) an event that is not an abstraction or composition of other events.</p>
<p><strong>virtual event</strong> (n.) an event that is imagined, modeled or simulated.</p>
<hr />Note:  The Emerging Technologies Engineering Team at <a href="http://www.tibco.com" target="_blank">TIBCO Software </a>significantly contributed to these event processing terms and definitions.</p>
]]></content:encoded>
      <pubDate>Thu, 21 Aug 2008 01:47:11 +0000</pubDate>
      <category domain="http://securityratty.com/tag/event">event</category>
      <category domain="http://securityratty.com/tag/event-object">event-object</category>
      <category domain="http://securityratty.com/tag/business process management">business process management</category>
      <category domain="http://securityratty.com/tag/process">process</category>
      <category domain="http://securityratty.com/tag/event correlation">event correlation</category>
      <category domain="http://securityratty.com/tag/process refinement">process refinement</category>
      <category domain="http://securityratty.com/tag/simple">simple</category>
      <category domain="http://securityratty.com/tag/simple event">simple event</category>
      <category domain="http://securityratty.com/tag/process events">process events</category>
      <source url="http://www.thecepblog.com/2008/08/21/epts-proposed-event-processing-definitions-september-20-2006/">EPTS: Proposed Event Processing Definitions, September 20, 2006</source>
    </item>
    <item>
      <title><![CDATA[MBTA vs MIT students case continues]]></title>
      <link>http://securityratty.com/article/4eeed89c9d2338f565503a6939c3100f</link>
      <guid>http://securityratty.com/article/4eeed89c9d2338f565503a6939c3100f</guid>
      <description><![CDATA[A hearing will be held in Boston tommorow to decide whether or not the restraining order gagging the MIT students from talking about the vulnerabilities they have found should be lifted. Even though...]]></description>
      <content:encoded><![CDATA[<p>A hearing will be held in Boston tommorow to decide whether or not the restraining order gagging the MIT students from talking about the vulnerabilities they have found should be lifted. Even though the Defcon presentation is widely available and the MBTA disclosed the &#8220;Confidential&#8221; memo from the MIT students in their court filings, they are seeking a permanent speech injunction.  An august group of computer scientists has <a href="http://cryptome.org/mbta-v-zack/mbta-v-profs.pdf">signed a letter</a> which will be entered into the record for the case.  This list includes: Dave Farber of Carnegie Mellon University, Steve Bellovin from Columbia University, David Wagner from UC Berkeley, Dan Wallach from Rice University, Matt Blaze from the University of Pennsylvania, and Bruce Schneier. An excerpt:</p>
<blockquote><p>We write to express our firm belief that research on security vulnerabilities, and the sensible publication of the results of the research, are critical for scientific advancement, public safety and a robust market for secure technologies. Generally speaking, the norm in our field is that researchers take reasonable steps to protect the individuals using the systems studied. We understand that the student researchers took such steps with regard to their research, notably by planning not to present a critical element of a flaw they found.  They did this so that their audience would be unable to exploit the security flaws they uncovered. . . .</p>
<p>The restraining order at issue in this case also fosters a dangerous information imbalance. In this case, for example, it allows the vendors of the technology and the MBTA to claim greater efficacy and security than their products warrant, then use the law to silence those who would reveal the technologies&#8217; flaws. In this case, the law gives the public a false sense of security, achieved through law, not technical effectiveness. Preventing researchers from discussing a technology&#8217;s vulnerabilities does not make them go away - in fact, it may exacerbate them as more people and institutions use and come to rely upon the illusory protection. Yet the commercial purveyors of such technologies often do not want truthful discussions of their products&#8217; flaws, and will likely withhold the prior approval or deny researchers access for testing if the law supports that effort. . . .</p>
<p>Yet at the same time that researchers need to act responsibly, vendors should not be granted complete control of the publication of such information, as it appears MBTA sought here. As noted above, vendors and users of such technologies often have an incentive to hide the flaws in the system rather than come clean with the public and take the steps necessary to remedy them.  Thus, while researchers often refrain from publishing the technical details necessary to exploit the flaw, a legal ban on discussion of security flaws, such as that contained in the temporary restraining order, is especially troubling.</p></blockquote>
<p>It will be interesting to see what arguments the MBTA uses to keep the students from speaking on a topic where all the important vulnerability information seems to have already disclosed.  Sure the students haven&#8217;t presented a cookbook exploit tool but they have also stated they have no intention of doing so.</p>
<p>Perhaps the court will investigate what the MBTA&#8217;s and their technology vendors response has been to the MiFare card vulnerabilities that were <a href="http://eprint.iacr.org/2008/166">disclosed responsibly</a>. If there has been no vigorous response to responsibly disclosed vulnerabilities of many months ago how can they say with a straight face that are truly responding to new security information and just need more time.</p>
]]></content:encoded>
      <pubDate>Wed, 13 Aug 2008 18:47:34 +0000</pubDate>
      <category domain="http://securityratty.com/tag/technologies flaws">technologies flaws</category>
      <category domain="http://securityratty.com/tag/flaws">flaws</category>
      <category domain="http://securityratty.com/tag/vulnerabilities">vulnerabilities</category>
      <category domain="http://securityratty.com/tag/technologys vulnerabilities">technologys vulnerabilities</category>
      <category domain="http://securityratty.com/tag/mifare card vulnerabilities">mifare card vulnerabilities</category>
      <category domain="http://securityratty.com/tag/students">students</category>
      <category domain="http://securityratty.com/tag/security vulnerabilities">security vulnerabilities</category>
      <category domain="http://securityratty.com/tag/mit students">mit students</category>
      <category domain="http://securityratty.com/tag/mbta">mbta</category>
      <source url="http://www.veracode.com/blog/?p=232">MBTA vs MIT students case continues</source>
    </item>
    <item>
      <title><![CDATA[MBTA vs MIT Students Case Continues]]></title>
      <link>http://securityratty.com/article/064a464f9437ecbf32f46f66c2142979</link>
      <guid>http://securityratty.com/article/064a464f9437ecbf32f46f66c2142979</guid>
      <description><![CDATA[A hearing will be held in Boston tomorrow to decide whether or not the restraining order gagging the MIT students from talking about the vulnerabilities they have found should be lifted. Even though...]]></description>
      <content:encoded><![CDATA[<p>A hearing will be held in Boston tomorrow to decide whether or not the restraining order gagging the MIT students from talking about the vulnerabilities they have found should be lifted. Even though the Defcon presentation is widely available and the MBTA disclosed the &#8220;Confidential&#8221; memo from the MIT students in their court filings, they are seeking a permanent speech injunction.  An august group of computer scientists has <a href="http://cryptome.org/mbta-v-zack/mbta-v-profs.pdf">signed a letter</a> which will be entered into the record for the case.  This list includes: Dave Farber of Carnegie Mellon University, Steve Bellovin from Columbia University, David Wagner from UC Berkeley, Dan Wallach from Rice University, Matt Blaze from the University of Pennsylvania, and Bruce Schneier. An excerpt:</p>
<blockquote><p>We write to express our firm belief that research on security vulnerabilities, and the sensible publication of the results of the research, are critical for scientific advancement, public safety and a robust market for secure technologies. Generally speaking, the norm in our field is that researchers take reasonable steps to protect the individuals using the systems studied. We understand that the student researchers took such steps with regard to their research, notably by planning not to present a critical element of a flaw they found.  They did this so that their audience would be unable to exploit the security flaws they uncovered. . . .</p>
<p>The restraining order at issue in this case also fosters a dangerous information imbalance. In this case, for example, it allows the vendors of the technology and the MBTA to claim greater efficacy and security than their products warrant, then use the law to silence those who would reveal the technologies&#8217; flaws. In this case, the law gives the public a false sense of security, achieved through law, not technical effectiveness. Preventing researchers from discussing a technology&#8217;s vulnerabilities does not make them go away - in fact, it may exacerbate them as more people and institutions use and come to rely upon the illusory protection. Yet the commercial purveyors of such technologies often do not want truthful discussions of their products&#8217; flaws, and will likely withhold the prior approval or deny researchers access for testing if the law supports that effort. . . .</p>
<p>Yet at the same time that researchers need to act responsibly, vendors should not be granted complete control of the publication of such information, as it appears MBTA sought here. As noted above, vendors and users of such technologies often have an incentive to hide the flaws in the system rather than come clean with the public and take the steps necessary to remedy them.  Thus, while researchers often refrain from publishing the technical details necessary to exploit the flaw, a legal ban on discussion of security flaws, such as that contained in the temporary restraining order, is especially troubling.</p></blockquote>
<p>It will be interesting to see what arguments the MBTA uses to keep the students from speaking on a topic where all the important vulnerability information seems to have already disclosed.  Sure the students haven&#8217;t presented a cookbook exploit tool but they have also stated they have no intention of doing so.</p>
<p>Perhaps the court will investigate what the MBTA&#8217;s and their technology vendors response has been to the MiFare card vulnerabilities that were <a href="http://eprint.iacr.org/2008/166">disclosed responsibly</a>. If there has been no vigorous response to responsibly disclosed vulnerabilities of many months ago how can they say with a straight face that are truly responding to new security information and just need more time.</p>
]]></content:encoded>
      <pubDate>Wed, 13 Aug 2008 18:47:34 +0000</pubDate>
      <category domain="http://securityratty.com/tag/technologies flaws">technologies flaws</category>
      <category domain="http://securityratty.com/tag/flaws">flaws</category>
      <category domain="http://securityratty.com/tag/vulnerabilities">vulnerabilities</category>
      <category domain="http://securityratty.com/tag/technologys vulnerabilities">technologys vulnerabilities</category>
      <category domain="http://securityratty.com/tag/mifare card vulnerabilities">mifare card vulnerabilities</category>
      <category domain="http://securityratty.com/tag/students">students</category>
      <category domain="http://securityratty.com/tag/security vulnerabilities">security vulnerabilities</category>
      <category domain="http://securityratty.com/tag/mit students">mit students</category>
      <category domain="http://securityratty.com/tag/mbta">mbta</category>
      <source url="http://www.veracode.com/blog/2008/08/mbta-vs-mit-students-case-continues/">MBTA vs MIT Students Case Continues</source>
    </item>
    <item>
      <title><![CDATA[Data security and the "chasm of protection"]]></title>
      <link>http://securityratty.com/article/4d8814123796ce17262a597ce9e74198</link>
      <guid>http://securityratty.com/article/4d8814123796ce17262a597ce9e74198</guid>
      <description><![CDATA[I was thinking a bit more about the notion of data-centric or information-centric security and why this is absolutely the future of data protection

Say you are a retailer. You have data in your POS...]]></description>
      <content:encoded><![CDATA[I was thinking a bit more about the notion of data-centric or information-centric security and why this is absolutely the future of data protection...<br /><br />Say you are a retailer. You have data in your POS devices, encrypted with the POS application as cards are read in. As this data is required by another application, it has to be first decrypted so this in-store application can read it. It may then encrypt it again as it stores on in-store servers. Now assume you have another application in the data centers that is used for card settlement. Another decrypt-encrypt cycle from the store to the data-center!<br /><br />This scenario is not limited to a retail environment. Consider a similar cycle repeating itself in most companies as data is moved from location to location, analyzed and processed by multiple applications and on multiple devices and multiple internal and external networks - each time being decrypted, stored or transfered in the clear till it gets encrypted again. Each time this cycle repeats, there is a weakness that can be exploited - since there is a gap in the consistent protection of data.<br /><br />Being data-centric however, brings in persistence and consistency in the protection of that data element, thereby removing this "chasm".<div class="feedflare">
<a href="http://feeds.feedburner.com/~f/BitArmor1?a=QfKJCI"><img src="http://feeds.feedburner.com/~f/BitArmor1?i=QfKJCI" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/BitArmor1?a=xy1hui"><img src="http://feeds.feedburner.com/~f/BitArmor1?i=xy1hui" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/BitArmor1?a=RpA5rI"><img src="http://feeds.feedburner.com/~f/BitArmor1?i=RpA5rI" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/BitArmor1/~4/313804028" height="1" width="1"/>]]></content:encoded>
      <pubDate>Tue, 17 Jun 2008 09:25:00 +0000</pubDate>
      <category domain="http://securityratty.com/tag/protection">protection</category>
      <category domain="http://securityratty.com/tag/data">data</category>
      <category domain="http://securityratty.com/tag/data protection">data protection</category>
      <category domain="http://securityratty.com/tag/data centers">data centers</category>
      <category domain="http://securityratty.com/tag/data element">data element</category>
      <category domain="http://securityratty.com/tag/application">application</category>
      <category domain="http://securityratty.com/tag/pos application">pos application</category>
      <category domain="http://securityratty.com/tag/data-centric">data-centric</category>
      <category domain="http://securityratty.com/tag/in-store application">in-store application</category>
      <source url="http://feeds.feedburner.com/~r/BitArmor1/~3/313804028/data-security-and-chasm-of-protection.html">Data security and the "chasm of protection"</source>
    </item>
    <item>
      <title><![CDATA[NSA Attacks West Point! Relax, It's a Cyberwar Game]]></title>
      <link>http://securityratty.com/article/f11d60d6da0ea55d61cdb03f3578daa6</link>
      <guid>http://securityratty.com/article/f11d60d6da0ea55d61cdb03f3578daa6</guid>
      <description><![CDATA[Five hours into their assault on West Point, the hackers got serious
The SQL [structured query language] inserts that came earlier were just pablum intended to lull the Army cadets into a false sense...]]></description>
      <content:encoded><![CDATA[<p>Five hours into their assault on West Point, the hackers got serious. 
</p>

<p>
The SQL [structured query language] inserts that came earlier were just pablum intended to lull the Army cadets into a false sense of security. But then the bad guys unleashed a stealthy kernel-level rootkit that burrowed into one workstation, started scraping data and "calling home."
</p>

<p>
It was a highly sophisticated attack, but this time the bad guys were really good guys in wolves' clothing.
</p>

<p>
For four days in late April, the National Security Agency -- the nation's most secretive repository of spooks, snoops and electronic eavesdroppers -- directed coordinated assaults on custom-built networks at seven of the nation's military academies, including West Point, the Army university 50 miles north of New York City.
</p>

<p>
It was all part of the seventh annual Cyber Defense Exercise, a training event for future military IT specialists. The exercise offered a rare window into the NSA's toolkit for infiltrating, corrupting or destroying computer networks.
</p>

<p>
The 34 Army cadets comprising the West Point IT team operated in a different kind of battlefield, but their combat skills and instincts need to be every bit as sharp. Like George Washington said: "There is nothing so likely to produce peace as to be well prepared to meet the enemy."
</p>

<p>
The SQL injections, targeting their Fedora Core 8 Web server, were a piece of cake for these IT combatants. Each injection tried to smuggle malicious code inside the seemingly harmless language used by the network’s MySQL software. The cadets handily defended with open source Apache web server modules, plus some manual tweaking of the SQL database to "avoid any surprises," in the words of Lt Col. Joe Adams, a West Point instructor who helped coach the team.
</p>

<p>
But the kernel-level rootkit was much more dangerous. This stealthy operating-system hijacker can open unseen "back doors" into even highly protected networks. When they detected the rootkit's "calls home" the cadets launched Sysinternal's security software to find the hijacker, then they manually scoured the workstation to find the unwelcome executable file. 
</p><p>
Then they terminated it. With extreme prejudice.
</p>
<p>
"This was probably the most challenging part of the exercise, since it required them to use some advanced techniques to find the rootkit," Adams says. And rooting it out helped boost the West Point team to the top of the pile when, in the aftermath of the exercise, the referees rated all the universities' network defenses.
</p>
<p>
For the second year in a row, the Army placed first over the Navy, Air Force, Coast Guard and others, winning geek bragging rights and the privilege of holding onto a gaudy, 60-pound brass trophy festooned with bald eagles and American flags. Adams credits the team’s thorough preparation and their excellent teamwork despite the round-the-clock schedule.
</p>
<!--pagebreak-->

<p>At the network control room on the second floor of West Point’s 200-year-old engineering building (which once was an indoor horse corral and still smells like it in some remote corners, according to one instructor), the IT team set up cots and, just for the hell of it, camouflaged netting. They worked in shifts, with one team member always monitoring incoming and outgoing traffic. He or she would alert other cadets -- "router guys" -- to block any suspicious addresses. Meanwhile, off-shift cadets would make food and coffee runs to keep everyone fueled up and alert. Together, the team was "faster than anyone else," Adams says.
</p>

<p>
But the way the cadets designed their network was a big factor in their victory, too. The NSA dictated some terms: All networks had to be capable of e-mail, chat and other services and had to be up and running at all times despite any attacks or defensive measures. Beyond that, the teams were free to come up with their own designs.
</p>

<p>
West Point's took three weeks to build. The cadets settled on a fairly standard Linux and FreeBSD-based network with advanced routing techniques for steering incoming traffic in directions of the IT team's choosing.
</p>

<p>
The choices in software tools for responding to any attack really boiled down to "automatic" versus "custom," says Eric Dean, a civilian programmer and instructor. He adds that while automatic tools that do most of their own work are certainly easier, custom tools that allow more manual tweaking are more effective. "I expect one of the 'lessons learned' will be the use of custom tools instead of automatics."
</p>

<p>
Even with a solid network design and passable software choices, there was an element of intuitiveness required to defend against the NSA, especially once it became clear the agency was using minor, and perhaps somewhat obvious, attacks to screen for sneakier, more serious ones.
</p>

<p>
"One of the challenges was when they see a scan, deciding if this is it, or if it’s a cover," says Dean. Spotting "cover" attacks meant thinking like the NSA -- something Dean says the cadets did quite well. "I was surprised at their creativity."
</p>

<p>
Legal limitations were a surprising obstacle to a realistic exercise. Ideally, the teams would be allowed to attack other schools' networks while also defending their own. But only the NSA, with its arsenal of waivers, loopholes, special authorizations (and heaven knows what else) is allowed to take down a U.S. network.
</p>

<p>
And despite the relative sophistication of the NSA's assaults, the agency told Wired.com that it had tailored its attacks to be just "a little too hard for the strongest undergraduate team to deal with, so that we could distinguish the strongest teams from the weaker ones."
</p>

<p>
In other words, grasshopper, nice work -- but the NSA is capable of much craftier network take-downs.
</p><br style="clear: both;"/>
      <a href="http://www.pheedo.com/click.phdo?s=0eebae201dd1f9c87fb47b2629d1bf60"><img alt="" style="border: 0;" border="0" src="http://www.pheedo.com/img.phdo?s=0eebae201dd1f9c87fb47b2629d1bf60"/></a>
  <img src="http://www.pheedo.com/feeds/tracker.php?i=0eebae201dd1f9c87fb47b2629d1bf60" style="display: none;" border="0" height="1" width="1" alt=""/><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/wired/politics/privacy?a=PBGxjH"><img src="http://feeds.feedburner.com/~f/wired/politics/privacy?i=PBGxjH" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/wired/politics/privacy?a=wwsfeh"><img src="http://feeds.feedburner.com/~f/wired/politics/privacy?i=wwsfeh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/wired/politics/privacy?a=HcZiLh"><img src="http://feeds.feedburner.com/~f/wired/politics/privacy?i=HcZiLh" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/wired/politics/privacy?a=MnJ3rH"><img src="http://feeds.feedburner.com/~f/wired/politics/privacy?i=MnJ3rH" border="0"></img></a>
 <a href="http://feeds.wired.com/~f/wired/politics/security?a=54tGLH"><img src="http://feeds.wired.com/~f/wired/politics/security?i=54tGLH" border="0"></img></a> <a href="http://feeds.wired.com/~f/wired/politics/security?a=CP1KJh"><img src="http://feeds.wired.com/~f/wired/politics/security?i=CP1KJh" border="0"></img></a> <a href="http://feeds.wired.com/~f/wired/politics/security?a=ieiu4h"><img src="http://feeds.wired.com/~f/wired/politics/security?i=ieiu4h" border="0"></img></a> <a href="http://feeds.wired.com/~f/wired/politics/security?a=rCn1GH"><img src="http://feeds.wired.com/~f/wired/politics/security?i=rCn1GH" border="0"></img></a> </div><img src="http://feeds.feedburner.com/~r/wired/politics/privacy/~4/287200226" height="1" width="1"/><img src="http://feeds.wired.com/~r/wired/politics/security/~4/287200227" height="1" width="1"/>]]></content:encoded>
      <pubDate>Fri, 09 May 2008 21:00:00 +0000</pubDate>
      <category domain="http://securityratty.com/tag/army university">army university</category>
      <category domain="http://securityratty.com/tag/army">army</category>
      <category domain="http://securityratty.com/tag/custom-built networks">custom-built networks</category>
      <category domain="http://securityratty.com/tag/networks">networks</category>
      <category domain="http://securityratty.com/tag/nsa">nsa</category>
      <category domain="http://securityratty.com/tag/army cadets">army cadets</category>
      <category domain="http://securityratty.com/tag/west">west</category>
      <category domain="http://securityratty.com/tag/cadets">cadets</category>
      <category domain="http://securityratty.com/tag/network">network</category>
      <source url="http://feeds.wired.com/~r/wired/politics/security/~3/287200227/nsa_cyberwargames">NSA Attacks West Point! Relax, It's a Cyberwar Game</source>
    </item>
    <item>
      <title><![CDATA[How Secure is Secure?]]></title>
      <link>http://securityratty.com/article/030fa94dec1f15755b9a1d1bbfae60d9</link>
      <guid>http://securityratty.com/article/030fa94dec1f15755b9a1d1bbfae60d9</guid>
      <description><![CDATA[Hi folks, Eric Bidstrup here

As I touched on in my December posting on Common Criteria , and as Michael Howard discussed in his post on security metrics , trying to objectively quantify and measure...]]></description>
      <content:encoded><![CDATA[<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>Hi folks, Eric Bidstrup here.</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>As I touched on in my December posting on </FONT><A href="http://blogs.msdn.com/sdl/archive/2007/12/20/common-criteria-and-answering-the-question-is-it-safe.aspx"><FONT face=Calibri size=3>Common Criteria</FONT></A><FONT face=Calibri size=3>, and as Michael Howard discussed in his post on </FONT><A href="http://blogs.msdn.com/sdl/archive/2008/04/18/oh-no-security-metrics.aspx"><FONT face=Calibri size=3>security metrics</FONT></A><FONT face=Calibri size=3>, trying to objectively quantify and measure “How secure is secure” is far more difficult than one might think. I’d like to share my perspective that there are two “dimensions” useful to consider when characterizing software security metrics: <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">security functional requirements</I></B> and <B style="mso-bidi-font-weight: normal"><I style="mso-bidi-font-style: normal">security engineering quality requirements</I></B>. While the SDL is focused primarily (but not exclusively) on the latter, both are ultimately important when assessing the security of a given bit of software. However, for reasons I’ll elaborate on below, the SDL does focus on trying to prevent the most common causes of vulnerabilities today and hence looking at the ways in which Microsoft tracks and measures individual products teams’ compliance with SDL requirements offers some interesting fodder for the security metrics debate. I’m not offering a complete solution, but am sharing our experience at Microsoft with measuring how development teams actually follow the SDL. It’s helped us deliver more secure software, and sharing this will hopefully help others as well as putting more data on the table for consideration when discussing security metrics.</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>Putting aside computer security for just a moment, it’s interesting to look at other ways in which we attempt to measure security in our society. </FONT><A href="http://en.wikipedia.org/wiki/Padlock"><FONT face=Calibri size=3>Padlocks</FONT></A><FONT face=Calibri size=3> offer security protections, and organizations such as the American Standard for Testing and Materials (ASTM) provide standards like </FONT><A href="http://www.astm.org/Standards/F883.htm"><FONT face=Calibri size=3>F883-04 Standard Performance Specification for Padlocks</FONT></A><FONT face=Calibri size=3> that characterize padlock security ratings. Prisons provide security protections as well. <SPAN style="COLOR: black; mso-bidi-font-family: Arial">Prisoners reside in different facilities that vary by security level. The US Bureau of Prisons uses a numbered scale from one to six to represent the security level. </SPAN>Both of these examples are similar in that the threats and risks each of them must protect against are reasonably well understood and relatively static (meaning the threats don’t change much over time). Computer security is still evolving with new classes of attacks still being discovered, and while hackers understand how to exploit known types of vulnerabilities – software developers are still catching up in learning how to modify engineering practices to be resilient against both new and old types of attacks. Hence, metrics are more challenging for computer security.</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>Several attempts have been made by governments to come up with a security rating system similar to the examples listed above. In the 1980’s, the US Department of Defense created the “</FONT><A href="http://en.wikipedia.org/wiki/TCSEC"><FONT face=Calibri size=3>Trusted Computer System Evaluation Criteria (TCSEC)</FONT></A><FONT face=Calibri size=3>” that tried to establish a standard for measure operating system security. The “Orange Book” offered a relatively simple system for assigning “score” summarized below:</FONT></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in"><FONT face=Calibri size=3>D (Minimal Protection) </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT face=Calibri size=3>C (Discretionary Protection) </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>C1: Discretionary Security Protection </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>C2: Controlled Access Protection </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT face=Calibri size=3>B (Mandatory Protection) </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>B1: Labeled Security Protection </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>B2: Structured Protection </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>B3: Security Domains </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT face=Calibri size=3>A (Verified Protection) </FONT></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 0pt 1in; mso-add-space: auto"><FONT face=Calibri size=3>A1: Verified Design</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>In the 1990’s, the US and other nations combined their efforts to create an international security standard for software known as the </FONT><A href="http://en.wikipedia.org/wiki/Common_Criteria"><FONT face=Calibri size=3>Common Criteria</FONT></A><FONT face=Calibri size=3> (ISO 15408). Common Criteria also has a rating system that scores products with “evaluation assurance levels” (EALs):</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in"><FONT face=Calibri size=3>EAL 1: Functionally Tested </FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 2: Structurally Tested<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 3: Methodically Tested and Checked<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 4: Methodically Designed, Tested, and Reviewed<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 5: Semi-formally Designed and Tested<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 6: Semi-formally Verified Design and Tested<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 0pt 0.5in"><FONT size=3><FONT face=Calibri>EAL 7: Formally Verified Design and Tested<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>Both TCSEC and Common Criteria (CC) are primarily focused on “security functional requirements” (as called out earlier, distinct from “security engineering quality requirements”). The EALs reflect the amount of rigor and attention to claimed security functional requirements a developer applied while creating a product. Furthermore, the EALs also reflect increasing levels of effort and resources necessary by anyone reviewing a product in order to evaluate the product’s claimed security functional requirements. However, EAL ratings for commercial products have historically not correlated with the number of vulnerabilities found in commercial products after release. As I discussed in my December posting on </FONT><A href="http://blogs.msdn.com/sdl/archive/2007/12/20/common-criteria-and-answering-the-question-is-it-safe.aspx"><FONT face=Calibri size=3>Common Criteria</FONT></A><FONT size=3><FONT face=Calibri>, this is because CC is primarily focused on “security functional requirements” and fails to adequately address “security engineering quality requirements”. <SPAN style="mso-spacerun: yes">&nbsp;</SPAN>This leads a question on how to measure those aspects of software security that earlier efforts have been unable to successfully address.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN></FONT></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>Microsoft has been releasing security bulletins since 1999. Based on some informal analysis that members of our organization have done, we believe well over 50% of *all* security bulletins have resulted from implementation vulnerabilities and by some estimates as high as 70-80%. (Some cases are questionable and we debate if they are truly “implementation issues” vs. “design issues” – hence this metric isn’t precise, but still useful). I have also heard similar ratios described in casual discussions with other software developers. In other words, most vulnerabilities can be addressed by the “security engineering quality requirements” described via SDL. This is not to say that “security functional requirements” are unimportant or that SDL ignores secure design (as </FONT><A href="http://blogs.msdn.com/sdl/archive/2008/02/14/wrapping-up-threat-modeling.aspx"><FONT face=Calibri size=3>Adam has described in his threat modeling series</FONT></A><FONT face=Calibri size=3>), but rather that it is not where vulnerabilities are being most frequently encountered. With SDL, we adopt a pragmatic approach in looking at identifying the root causes of security vulnerabilities, and trying to prevent those root causes from reoccurring. The challenge lies in how we actually validate that development teams are indeed adopting and executing whatever changes SDL requires in engineering (either in terms of process or tools). Process changes are often difficult to quantify, as we must rely upon development teams truthfully attesting they have followed the process. As long as development teams believe the process results in better code, they generally will adopt and follow such practices. Tool usage becomes more interesting and valuable in that using tools becomes a vehicle for objectively and independently verifying if code satisfies requirements or not. But that is just the tip of the iceberg…</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>As I said above in my comments on EALs, the amount of time required by anyone reviewing a product to assess “security” is relevant since security review can be a very time and resource intensive activity. However, running static code analysis tools, verifying build tools and switches, searching for </FONT><A href="http://msdn.microsoft.com/en-us/library/bb288454.aspx"><FONT face=Calibri size=3>banned APIs</FONT></A><FONT size=3><FONT face=Calibri>, and recording the output of other tools that inspect code and/or binaries for potential implementation vulnerabilities is a key element in how we approach the challenge of trying to measure compliance with SDL requirements from product groups at Microsoft today. While not every technique required by SDL has a corresponding tool, we try to provide both tools and automation if and wherever possible. There is still much work to be done in terms of standardizing tool output formats and creating automation to assess tool output. However, these “grass roots” metrics derive from practical experience of changing engineering requirements based on actual vulnerabilities. We look objectively at what is causing vulnerabilities, and target solutions to address the root causes of those issues. As the saying goes, “If it hurts when you do that, stop doing that”. If what we have done in the past has hurt our customers by creating vulnerabilities requiring security bulletins, we want to stop doing that. </FONT><SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"><SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings">J</SPAN></SPAN></FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>The challenge in using a plethora of individual detailed metrics such as I describe above (that we do internally at Microsoft for measuring SDL compliance), is that they don’t roll up into a nice aggregate score that customers can easily understand.<SPAN style="mso-spacerun: yes">&nbsp; </SPAN>However, they have translated into reduced numbers of vulnerabilities as </FONT><A href="http://blogs.msdn.com/sdl/archive/2008/04/18/oh-no-security-metrics.aspx"><FONT face=Calibri size=3>Michael Howard wrote a few weeks ago</FONT></A><FONT face=Calibri size=3>. Coupling these types of scores with assessment of compliance with “security functional requirements” might be the basis for coming up with a metric that is useful to customers, both in the government and private sector.</FONT></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><o:p><FONT face=Calibri size=3>&nbsp;</FONT></o:p></P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt"><FONT face=Calibri size=3>What do you think?</FONT></P><img src="http://blogs.msdn.com/aggbug.aspx?PostID=8472807" width="1" height="1">]]></content:encoded>
      <pubDate>Thu, 08 May 2008 12:46:00 +0000</pubDate>
      <category domain="http://securityratty.com/tag/security metrics">security metrics</category>
      <category domain="http://securityratty.com/tag/software security metrics">software security metrics</category>
      <category domain="http://securityratty.com/tag/implementation vulnerabilities">implementation vulnerabilities</category>
      <category domain="http://securityratty.com/tag/potential implementation vulnerabilities">potential implementation vulnerabilities</category>
      <category domain="http://securityratty.com/tag/metrics">metrics</category>
      <category domain="http://securityratty.com/tag/secure">secure</category>
      <category domain="http://securityratty.com/tag/software">software</category>
      <category domain="http://securityratty.com/tag/discretionary security protection">discretionary security protection</category>
      <category domain="http://securityratty.com/tag/security protection">security protection</category>
      <source url="http://blogs.msdn.com/sdl/archive/2008/05/08/how-secure-is-secure.aspx">How Secure is Secure?</source>
    </item>
    <item>
      <title><![CDATA[Metrics and Audience]]></title>
      <link>http://securityratty.com/article/48bf055992a858ae1b301be5171ab840</link>
      <guid>http://securityratty.com/article/48bf055992a858ae1b301be5171ab840</guid>
      <description><![CDATA[There has been some chatter recently about a post Pete Lindstrom made about Microsoft's SDL and their publicly disclosed metrics. I chimed in on Pete's blog as well as on the Microsoft SDL blog , here...]]></description>
      <content:encoded><![CDATA[There has been <a href="http://erratasec.blogspot.com/2008/04/i-have-it-on-good-authority-below-is.html">some</a> <a href="http://www.davidlitchfield.com/blog/archives/00000038.htm">chatter</a> recently about a post <a href="http://spiresecurity.typepad.com/spire_security_viewpoint/2008/04/microsofts-sdl.html">Pete Lindstrom</a> made about Microsoft's SDL and their publicly disclosed metrics.  I chimed in on Pete's blog as well as on the Microsoft <a href="http://blogs.msdn.com/sdl/archive/2008/04/18/oh-no-security-metrics.aspx">SDL blog</a>, here is a little more.<br /><br />The fundamental confusion here is about the audience for the vulnerability numbers, and metrics in general.<br /><br />There are several audiences here:<br /><ol><li>Microsoft's customers, competitors, and the public at large.</li><li>Security folks, especially software security folks that want to improve the quality of their software.</li><li>People who want more metrics about all things generally, the costs of security, etc.</li></ol>Microsoft's vulnerabilities in shipped software metric is really only targeted to audience #1.  Like it or not, what customers care about, as Michael Howard rightly points out, is how likely they are to get attacked/hacked, and how many patches they have to deploy.  Microsoft for its part also cares about #1 for the reasons above, and the fact that releasing patches is extraordinarily expensive.<br /><br />Security folks, especially those working on their own software security initiatives find the vulnerabilities metric mostly useless.  It gives us no insight into *how* Microsoft has achieved the reduction in vulnerabilities.  What we'd all love to know is how much each element of the SDL contributes to reducing vulnerabilities.  A percentage break out on how effective each element is, Training, Threat Modeling, Testing, at reducing vulnerability counts, especially as broken out by design/architecture defects and implementation defects.<br /><br />At the same time, I'm willing to acknowledge that developing these metrics is a full time job for multiple people.  And, tracking the metrics over time is difficult, since its hard to normalize the defects between products and across time.  New attacks are always surfacing, so how do you track the impact of new attack types across time.  How do you track the impact of better code scanning/static-analysis tools over time.  As the tool improves you'll find more defects when you run it, but that will skew your metrics somewhat.<br /><br />The fundamentally unanswered question though is how do we actually measure the security of software.  From a general customer standpoint what you care about is how likely you are to get attacked and compromised for one piece of software vs. another, what that software is going to cost to buy and run, etc.<br /><br />For the security community what we're looking for is  a metric that more closely tracks the "real" security properties of a piece of software.  How hard it is for the expert to attack, how it does in real world deployments, etc.<br /><br />Unfortunately no one metric is going to capture this.  As I've previously mentioned the QoP workshop is a great place to go if you're looking for answers to the "how do we measure software security" question.  But if what you want to know is how much is it generally going to cost me to run/implement a piece of software, looking at things like number of required patches and their frequency/severity, then perhaps Microsoft's vulnerability metric is for you.<img src="http://feeds.feedburner.com/~r/SecurityRetentive/~4/273663577" height="1" width="1"/>]]></content:encoded>
      <pubDate>Sat, 19 Apr 2008 05:52:00 +0000</pubDate>
      <category domain="http://securityratty.com/tag/software">software</category>
      <category domain="http://securityratty.com/tag/software metric">software metric</category>
      <category domain="http://securityratty.com/tag/software security folks">software security folks</category>
      <category domain="http://securityratty.com/tag/security folks">security folks</category>
      <category domain="http://securityratty.com/tag/software security initiatives">software security initiatives</category>
      <category domain="http://securityratty.com/tag/security">security</category>
      <category domain="http://securityratty.com/tag/measure software security">measure software security</category>
      <category domain="http://securityratty.com/tag/measure">measure</category>
      <category domain="http://securityratty.com/tag/metrics">metrics</category>
      <source url="http://feeds.feedburner.com/~r/SecurityRetentive/~3/273663577/metrics-and-audience.html">Metrics and Audience</source>
    </item>
    <item>
      <title><![CDATA[The Liquid Bomb]]></title>
      <link>http://securityratty.com/article/dd237e22d32e99364da6829d1eaf147e</link>
      <guid>http://securityratty.com/article/dd237e22d32e99364da6829d1eaf147e</guid>
      <description><![CDATA[We finally have some actual information about the &quot;liquid bomb&quot; that was planned by that London group arrested in 2006: The court heard the bombers intended to use hydrogen peroxide and mix it with a...]]></description>
      <content:encoded><![CDATA[<p>We finally have some <a href="http://www.dailymail.co.uk/pages/live/articles/news/news.html?in_article_id=555465&in_page_id=1770&ct=5">actual information</a> about the "liquid bomb" that was planned by that London group arrested in 2006:</p>

<blockquote>The court heard the bombers intended to use hydrogen peroxide and mix it with a product called Tang, used in soft drinks, to turn it into an explosive. 

<p>They intended to carry it on board disguised as 500ml bottles of Oasis or Lucozade by using food dye to recreate the drinks' distinctive colour. </p>

<p>The detonator would have been disguised as AA 1.5 batteries. The contents of the batteries would have been removed and an electric element such as a lightbulb or wiring would have been inserted. </p>

<p>A disposable camera would have provided a power source.</blockquote></p>

<p>Any chemists want to take a crack at this one?</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~f/schneier/fulltext?a=eROfg5G"><img src="http://feeds.feedburner.com/~f/schneier/fulltext?i=eROfg5G" border="0"></img></a> <a href="http://feeds.feedburner.com/~f/schneier/fulltext?a=a5Yk28G"><img src="http://feeds.feedburner.com/~f/schneier/fulltext?i=a5Yk28G" border="0"></img></a>
</div>]]></content:encoded>
      <pubDate>Thu, 03 Apr 2008 13:11:11 +0000</pubDate>
      <category domain="http://securityratty.com/tag/liquid bomb">liquid bomb</category>
      <category domain="http://securityratty.com/tag/food dye">food dye</category>
      <category domain="http://securityratty.com/tag/disposable camera">disposable camera</category>
      <category domain="http://securityratty.com/tag/power source">power source</category>
      <category domain="http://securityratty.com/tag/electric element">electric element</category>
      <category domain="http://securityratty.com/tag/batteries">batteries</category>
      <category domain="http://securityratty.com/tag/distinctive colour">distinctive colour</category>
      <category domain="http://securityratty.com/tag/actual information">actual information</category>
      <category domain="http://securityratty.com/tag/500ml bottles">500ml bottles</category>
      <source url="http://www.schneier.com/blog/archives/2008/04/the_liquid_bomb.html">The Liquid Bomb</source>
    </item>
  </channel>
</rss>
