<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OpenSAMM</title>
	<atom:link href="http://www.opensamm.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.opensamm.org</link>
	<description>A guide to building security into software development</description>
	<lastBuildDate>Sat, 07 Apr 2012 10:37:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Mapping SAMM to ISO/IEC 27034</title>
		<link>http://www.opensamm.org/2012/04/mapping-samm-to-isoiec-27034/</link>
		<comments>http://www.opensamm.org/2012/04/mapping-samm-to-isoiec-27034/#comments</comments>
		<pubDate>Sat, 07 Apr 2012 09:54:41 +0000</pubDate>
		<dc:creator>Colin Watson</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[27034]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=901</guid>
		<description><![CDATA[ISO/IEC 27034 (Application Security), which can be purchased from International Organization for Standardization (ISO) and national standards bodies, is designed to help organisations build security throughout the life cycle of applications. There is a preview of the contents and first few pages of Part 1 on the IEC website. Part 1 presents an overview of [...]]]></description>
			<content:encoded><![CDATA[<p>ISO/IEC 27034 (Application Security), which can be <a href="http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=44378">purchased</a> from <a href="http://www.iso.org/iso/about.htm">International Organization for Standardization</a> (ISO) and national standards bodies, is designed to help organisations build security throughout the life cycle of applications.</p>
<p>There is a <a href="http://webstore.iec.ch/preview/info_isoiec27034-1%7Bed1.0%7Den.pdf">preview of the contents and first few pages</a> of Part 1 on the IEC website. Part 1 presents an overview of application security and introduces definitions, concepts, principles and processes involved in application security.</p>
<p>The contents listing for Annex A of ISO/IEC 27034:2011 Part 1 mentions a mapping to the <a href="http://www.microsoft.com/security/sdl/default.aspx">Microsoft Security Development Lifecycle</a> (SDL), and in the section describing the standard&#8217;s purpose, it refers to the need to map existing software development processes to ISO/IEC 27034:</p>
<blockquote><p>Annex A (informative) provides an example illustrating how an existing software development process can be mapped to some of the components and processes of ISO/IEC 27034. Generally speaking, an organization using any development life cycle should perform a mapping such as the one described in Annex A, and add whatever missing components or processes are needed for compliance with ISO/IEC 27034.</p></blockquote>
<p>The contents for Part 1 shows the SDL is compared with an Organization Normative Framework (ONF) made up from ideal application security related processes and resources:</p>
<ul>
<li>Business context</li>
<li>Regulatory context</li>
<li>Application specifications repository</li>
<li>Technological context</li>
<li>Roles, responsibilities and qualifications</li>
<li>Organisation application security control (ASC) library</li>
<li>Application security life cycle reference model</li>
</ul>
<p>This is very useful but I wondered how a comparison with Open SAMM might look. I have therefore created the table below indicating how the processes and resources mapped to SDL relate to the 12 security practices defined in Open SAMM.  The large diamond symbol is used to indicated where an Open SAMM practice has a very close relationship with a topic within ISO/IEC 27034 and a smaller diamond for weaker relationships.</p>
<p><img src="http://www.opensamm.org/wp-content/uploads/2012/03/samm-mapping-iso-iec-27034-application-security.png" alt="Mapping of Open SAMM to SDL resources and practices mentioned in the Organization Normative Framework (ONF) from ISO/IEC 27034 " width="630" height="692" class="aligncenter size-full wp-image-902" /></p>
<p>The  ISO/IEC 27034 “life cycle reference model” appears to be most closely aligned with the idea of an organisation-specific “software assurance programme” in SAMM combined with a risk-based approach to applying security to different applications, and within sub-parts of application systems.</p>
<p>We can also see the SAMM construction, verification and deployment practices primarily relate to the ISO/IEC 27034 application security control library used for the overall organisation and individual applications, as well as the actual use of the framework during acquisition/development, deployment and operation of (provisioning and operating) the application.</p>
<p>SAMM is available to <a href="http://www.opensamm.org/download/">download free of charge</a>, and can also be purchased at-cost as a <a href="http://www.lulu.com/shop/opensamm-project/software-assurance-maturity-model-samm/paperback/product-4749933.html">colour soft cover book</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2012/04/mapping-samm-to-isoiec-27034/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mapping SAMM to Security Automation</title>
		<link>http://www.opensamm.org/2012/03/mapping-samm-to-security-automation/</link>
		<comments>http://www.opensamm.org/2012/03/mapping-samm-to-security-automation/#comments</comments>
		<pubDate>Sun, 25 Mar 2012 19:06:17 +0000</pubDate>
		<dc:creator>Colin Watson</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=894</guid>
		<description><![CDATA[The presentation by Richard Struse (US Department of Homeland Security) and Steve Christey (Mitre) of Risk Analysis and Measurement with CWRAF (PDF) at the IT Security Automation Conference in October 2011 illustrates how software security automation enumerations and protocols map to SAMM&#8217;s construction, verification and deployment security practices. The specifications highlighted in the presentation&#8217;s final [...]]]></description>
			<content:encoded><![CDATA[<p>The presentation by Richard Struse (US Department of Homeland Security) and Steve Christey (Mitre) of <a href="http://scap.nist.gov/events/2011/itsac/presentations/day1/Struse,%20Christey%20-%20Risky%20Analysis%20and%20Measurement%20with%20CWRAF.pdf" target="_blank">Risk Analysis and Measurement with CWRAF</a> (PDF) at the <a href="http://www.nist.gov/itl/csd/7th-annual-scap-conference.cfm" target="_blank">IT Security Automation Conference in October 2011</a> illustrates how software security automation enumerations and protocols map to SAMM&#8217;s construction, verification and deployment security practices. The specifications highlighted in the presentation&#8217;s final slide are:</p>
<ul>
<li><a href="http://capec.mitre.org/" target="_blank">Common Attack Pattern Enumeration and Classification</a> (CAPEC)</li>
<li><a href="http://cwe.mitre.org/" target="_blank">Common Weakness Enumeration</a> (CWE)</li>
<li><a href="http://cwe.mitre.org/cwraf/" target="_blank">Common Weakness Risk Analysis Framework</a> (CWRAF)</li>
<li><a href="http://cwe.mitre.org/cwss/" target="_blank">Common Weakness Scoring System</a> (CWSS)</li>
<li><a href="http://cwe.mitre.org/compatible/ccr.html" target="_blank">CWE Coverage Claims Representation</a> (CCR)</li>
<li><a href="http://scap.nist.gov/" target="_blank">Security Content Automation Protocol</a> (SCAP)
<ul>
<li><a href="http://cve.mitre.org/" target="_blank">Common Vulnerabilities and Exposures</a> (CVE)</li>
<li><a href="http://oval.mitre.org/" target="_blank">Open Vulnerability Assessment Language</a> (OVAL)</li>
</ul>
</li>
</ul>
<p>I have summarised the slide in the table below.</p>
<p><img src="http://www.opensamm.org/wp-content/uploads/2012/03/samm-mapping-security-automation.png" alt="" width="459" height="255" class="size-full wp-image-895" /></p>
<p>For further security registries, description languages and standardised processes see the <a href="http://measurablesecurity.mitre.org/" target="_blank">Making Security Measurable</a> website. <a href="https://www.owasp.org/index.php/OWASP_AppSec_DC_2012/Risk_Analysis_and_Measurement_with_CWRAF" target="_blank">Risk Analysis and Measurement with CWRAF</a> is being presented at <a href="https://www.owasp.org/index.php/OWASP_AppSec_DC_2012" target="_blank">AppSec DC 2012</a> in April.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2012/03/mapping-samm-to-security-automation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Todo en español</title>
		<link>http://www.opensamm.org/2011/07/todo-en-espanol/</link>
		<comments>http://www.opensamm.org/2011/07/todo-en-espanol/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 16:25:10 +0000</pubDate>
		<dc:creator>Pravir Chandra</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[spanish]]></category>
		<category><![CDATA[translation]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=882</guid>
		<description><![CDATA[Thanks to the team led by Juan Carlos Calderon, we have a complete translation of the SAMM 1.0 into Spanish available now on the downloads page. This would not have been possible without the translation work performed by the team of Francisco Aldrete, Luis Martínez Bacha, Miguel Pérez-Milicua, Alvaro Muñoz, and Aldo Salas. Also, Joaquin Crespo from the Spain contingent [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.opensamm.org/downloads/SAMM-1.0-es_MX.pdf"><img class="alignright size-medium wp-image-883" title="SAMM en español" src="http://www.opensamm.org/wp-content/uploads/2011/07/SAMM-1.0-es_MX-231x300.jpg" alt="" width="231" height="300" /></a>Thanks to the team led by Juan Carlos Calderon, we have a complete translation of the SAMM 1.0 into Spanish <a href="http://www.opensamm.org/download/">available now on the downloads page</a>. This would not have been possible without the translation work performed by the team of Francisco Aldrete, Luis Martínez Bacha, Miguel Pérez-Milicua, Alvaro Muñoz, and Aldo Salas.</p>
<p>Also, Joaquin Crespo from the Spain contingent of OWASP contributed a full translation of the OpenSAMM 1.0 overview presentation. That&#8217;s also available on the <a href="http://www.opensamm.org/download/">downloads page</a>.</p>
<p>To everyone involved in the translation work, I would like to personally extend my thanks and gratitude to each one of you for this valuable contribution to the project. If anyone reading this would like to lead a translation to your language of choice, just <a href="mailto:samm@lists.owasp.org">post a message</a> to the <a href="http://www.opensamm.org/2009/03/samm-mailing-list/">SAMM mailing list</a> and we&#8217;d be glad to help you get started.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2011/07/todo-en-espanol/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>OpenSAMM in eBook Format</title>
		<link>http://www.opensamm.org/2011/04/opensamm-in-ebook-format/</link>
		<comments>http://www.opensamm.org/2011/04/opensamm-in-ebook-format/#comments</comments>
		<pubDate>Fri, 01 Apr 2011 08:41:47 +0000</pubDate>
		<dc:creator>Colin Watson</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[presentation]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=833</guid>
		<description><![CDATA[The OpenSAMM 1.0 English XML source file has been converted into an eBook format by Paweł Krawczyk. You can read more about the file and download it on IPsec.pl at http://ipsec.pl/node/967]]></description>
			<content:encoded><![CDATA[<p>The OpenSAMM 1.0 English <a href="http://www.opensamm.org/download/">XML source file</a> has been converted into an <a href="http://en.wikipedia.org/wiki/Comparison_of_e-book_formats">eBook format</a> by <a href="https://lists.owasp.org/pipermail/samm/2011-January/000280.html">Paweł Krawczyk</a>.  </p>
<p>You can read more about the file and download it on <a href="http://ipsec.pl">IPsec.pl</a> at <a href="http://ipsec.pl/node/967">http://ipsec.pl/node/967</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2011/04/opensamm-in-ebook-format/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BSIMM activities mapped to SAMM</title>
		<link>http://www.opensamm.org/2011/03/bsimm-activities-mapped-to-samm/</link>
		<comments>http://www.opensamm.org/2011/03/bsimm-activities-mapped-to-samm/#comments</comments>
		<pubDate>Thu, 03 Mar 2011 14:00:56 +0000</pubDate>
		<dc:creator>Pravir Chandra</dc:creator>
				<category><![CDATA[Changes]]></category>
		<category><![CDATA[Discussion]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[bsimm]]></category>
		<category><![CDATA[mapping]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=816</guid>
		<description><![CDATA[For the impatient, click here to download the mapping spreadsheet. For those still reading&#8230; Firstly, many thanks to the OWASP community for hosting the fantastic OWASP Summit 2011 in Lisbon, Portugal a few weeks back. This was a fantastic forum for us to hold OpenSAMM working sessions to discuss experiences and potential improvements to the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-820" title="MappingPic" src="http://www.opensamm.org/wp-content/uploads/2011/03/MappingPic-278x300.png" alt="" width="278" height="300" />For the impatient, <a title="OpenSAMM-BSIMM Mapping" href="http://www.opensamm.org/downloads/resources/20110301-OpenSAMM-BSIMM-Mapping.xlsx">click here to download the mapping spreadsheet</a>. For those still reading&#8230; Firstly, many thanks to the OWASP community for hosting the fantastic <a title="OWASP Summit 2011" href="http://www.owasp.org/index.php/Summit_2011" target="_blank">OWASP Summit 2011 in Lisbon, Portugal</a> a few weeks back. This was a fantastic forum for us to hold OpenSAMM working sessions to discuss experiences and potential improvements to the model. Over the course of the week, we were able to build up a list of additions/changes we&#8217;d like to make in the next release, but I&#8217;ll cover those in more detail under separate cover.</p>
<p>The main thing I want to share now is <a title="OpenSAMM-BSIMM Maping" href="http://www.opensamm.org/downloads/resources/20110301-OpenSAMM-BSIMM-Mapping.xlsx">an activity-level mapping of the ~110 BSIMM2 activities to the corresponding 72 activities in SAMM</a>. Obviously, this means that in some cases, more than one BSIMM activity may be mapped to a single SAMM activity. That being said, the overlap spots seem to make sense when we (the ~10 people that worked on it) looked at them in detail. Don&#8217;t take our word for it, though, please do review and send any feedback (mailing list or just comment below). And before you ask, yes, you probably will have to go read the respective BSIMM and SAMM activity descriptions in order to see the linkage for some of them (given the occasionally imprecise nature of written language, it&#8217;s not always obvious from the activity names alone).</p>
<p>It&#8217;s worth noting that we did leave two BSIMM activities unmapped. They are SM 3.2 &#8220;run external marketing program&#8221; and T 3.3 &#8220;host external software security events&#8221;. Based on the experience of the working group participants, these activities did not appear to directly improve an organization&#8217;s software assurance posture, rather, they appeared to be evidence that the organization was using its (presumably mature) software assurance posture to bolster its public perception or generate additional value in the business. Again, this is totally up for debate if anyone has an argument the other way, so please do share your thoughts.</p>
<p>Last, but certainly not least, I&#8217;d like to thank all the people at the Summit for the detailed and thoughtful conversations about using SAMM and about what we can do to make it even better.  Specifically, those that contributed and helped review this mapping (in no particular order):</p>
<ul>
<li>Colin Watson</li>
<li>Seba Deleersnyder</li>
<li>Steven van der Baan</li>
<li>Bart De Win</li>
<li>Justin Clarke</li>
<li>Dan Cornell</li>
<li>Sherif Koussa</li>
<li>Brian Chess</li>
</ul>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2011/03/bsimm-activities-mapped-to-samm/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Domain-Driven Security</title>
		<link>http://www.opensamm.org/2011/01/domain-driven-security/</link>
		<comments>http://www.opensamm.org/2011/01/domain-driven-security/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 14:49:24 +0000</pubDate>
		<dc:creator>Rohit Sethi</dc:creator>
				<category><![CDATA[Discussion]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=809</guid>
		<description><![CDATA[by Rohit Sethi and Yuk Fai Chan The Problem We have a pervasive problem in our field. We lump two disparate classes of security weakness together. Some articulate the difference as &#8220;business logic” vs. “technical” or &#8220;semantic” vs. “syntactic&#8221;. I’d like to build on a familiar term to developers: “domain”. Each kind of software weakness [...]]]></description>
			<content:encoded><![CDATA[<p><em>by Rohit Sethi and Yuk Fai Chan</em></p>
<p><strong>The Problem</strong></p>
<p>We have a pervasive problem in our field. We lump two disparate classes of security weakness together. Some articulate the difference as &#8220;business logic” vs. “technical” or &#8220;semantic” vs. “syntactic&#8221;.  I’d like to build on a familiar term to developers: “domain”. Each kind of software weakness is domain-specific or domain-agnostic (or both). Making this distinction is critical. We currently try to fix both sets of weaknesses with the same sets of tools, processes, and expertise when in fact they need to be treated differently. Our current approaches to application security work well for domain-agnostic vulnerabilities, but we need domain experts to solve domain-specific problems. </p>
<p><span id="more-809"></span></p>
<p><strong>Examples</strong></p>
<p>Let’s suppose an energy wholesaler in a deregulated market builds a new web application. They hire security testers to perform a combined source code review and penetration test against their application prior to deployment. The testers find a series of well known web application vulnerabilities: cross-site scripting (XSS), insufficient password complexity requirements, user enumeration in forgotten password, direct object access, and the like. Now suppose this system had another vulnerability: by simply changing the date field on one of the pages to a day in the past, users have access to pricing history which may give energy market speculators an unfair advantage tantamount to insider trading. The odds of the testers finding this particular vulnerability rests squarely on how much they understand the domain of deregulated energy markets. XSS, direct object access, and similar vulnerabilities are domain-agnostic; they’re dangerous but they’re also well understood by the security community. The insider trading vulnerability could amount to millions or more in losses and is likely to go uncaught for a longer period of time. </p>
<p>Another example helps illustrate this dichotomy. Suppose a large manufacturer hires a seasoned penetration tester to assess the security of their web-based ERP application (think SAP, PeopleSoft, or Oracle Financials). The tester is likely to find a directory traversal vulnerability but much less likely to find segregation of duties violations. For example, suppose an end user could both authorize and receive a payment from the Accounts Payable module. If the tester understands basic accounting concepts, he may catch this. More complex accounting issues will likely remain undiscovered, however, unless the tester has <em>deep domain knowledge</em> of accounting. </p>
<p>Finally, consider a popular consumer electronics retailer who keeps stock-keeping unit (SKU) entries in its inventory database for all products that it carries. Typically, these entries might include product descriptions or model numbers for easy identification. Now, imagine that this retailer creates placeholder inventory entries in anticipation for a major product release from a giant technology company known for its secrecy around its future products. If these entries are overly descriptive and include legitimate details about the unreleased products, this information could be leaked through employees of the retailer who have access to the inventory database. Such a leak can potentially damage the business relationship that the retailer has with its partner.</p>
<p><strong>Do You Speak Ubiquitous?</strong></p>
<p>Eric Evans presents an in-depth treatise of the effects of the domain on software design in his book Domain-Driven Design (DDD). Evans presents a number of concepts related to DDD. One such concept, “Layered Architecture”, breaks software into four common layers: User interface/presentation, application, domain/model, and infrastructure. The book concentrates largely on the domain/model layer by presenting a series of modeling techniques and patterns. The “ubiquitous language” is a domain-specific language that evolves over time. In the energy wholesale example, developers may describe their model with terms like “market participant” and “congestion revenue rights” which are part of their ubiquitous language. Without understanding the concepts behind the ubiquitous language, security assessors run the risk of missing important vulnerabilities in the system. Developers, quality assurance testers, in-house security experts, and security experts with extensive expertise in a specific industry are often comfortable with the ubiquitous language. These domain experts are ideally suited to identify domain-specific threats during requirements and design and hunt for domain-specific vulnerabilities during development, testing, and deployment. XSS and other forms of domain-agnostic vulnerabilities should be relegated to domain-agnostic testing tools such as static analysis, automated security runtime testing, and integration of security testing into QA testing frameworks with human oversight. Third party penetration testers need not understand the domain very well to find these vulnerabilities. Parameter manipulation, cross-site request forgery (CSRF), fine-grained authorization bypass, manipulation of page-flow navigation, and other domain-specific vulnerabilities should be treated separately; they need people to think of them to find these vulnerabilities. If you elect to use the same people and tools to find both categories of vulnerabilities then you need to ensure the security experts take the time to understand their domain and speak the ubiquitous language. Having a deficiency of skill-set in either domain-agnostic vulnerabilities or domain-specific knowledge will almost certainly leave your system open to risk.</p>
<p><strong>A Familiar Pattern</strong></p>
<p>The security community explicitly understands the importance of domain-specific knowledge in technical domains. For example, many security experts have examined Secure Socket Layer (SSL), but presumably few take the time to understand the Online Certificate Status Protocol (OCSP). OCSP is a sophisticated replacement for Certificate Revocation Lists (CRLS); essentially a mechanism to determine if a particular certificate is revoked and no longer valid. In 2009, Moxie Marlinspike discovered that a man-in-the-middle could circumvent OCSP responders in certain cases simply be sending the number 3 [1]. The Request For Comments (RFC) for OCSP dates back to 1999 [2] – ten years before Marlinspike’s discovery. In 2008, Dan Kaminsky found a critical flaw in the Domain Name Service (DNS) which resulted in a massive multi-vendor patch [3]. In 2007, Brad Hill discovered that servers implementing the XML Digital Signatures protocol may be vulnerable to critical remote command execution vulnerabilities – particularly worrisome because XML Digital Signatures is part of the WS-Security specification [4]. In all of these cases, the security researcher took the time to understand the underlying protocol in some level of depth. Although they neither wrote the protocols nor created products that that adhered to the protocols, they understood the domain well enough to point out logic flaws.</p>
<p><strong>Moving Forward</strong></p>
<p>Identifying the distinction between domain-specifics and domain-agnostics is an important first step. The next step is to change the way we define application security techniques. We should approach both sets of problems with a commensurate set of techniques. We should divide Top N lists and lists of vulnerabilities into the two categories. We should correctly and clearly classify new vulnerabilities as being domain-specific, domain-agnostic, or both. Organizations should have separate plans to deal with both: for example, heavy reliance on automated testing and cross-industry security expertise for domain-agnostic vulnerabilities and more reliance on manual testing and domain understanding for domain-specific vulnerabilities. We should pool expertise in individual domains, perhaps by starting with particular industries, to share knowledge of domain-specific vulnerabilities and disseminating that knowledge as successfully as we currently disseminate domain-agnostic vulnerabilities. If cross-industry sharing is not viable, organizations should separate and maintain domain-specific security knowledge internally and share that information with developers, QA, and all stakeholders in the secure SDLC. Cross-industry security groups such as FS-ISAC for financial services do facilitate some security knowledge transfer, but they rarely share knowledge to the granularity of domain-specific threats against particular types of applications.</p>
<p><strong>What Can You Do?</strong></p>
<p>You can help make this happen. Start to explicitly talk about the difference between these two kinds of vulnerabilities in your daily conversations, and make sure that you adjust your techniques for detection, prevention, and remediation accordingly. Encourage your industry groups to start focusing on sharing domain-specific threat data. Are you aware of an attempted or actual incident on an application that involved manipulation of that application’s business logic? Find ways to share that data with your industry! Make the data anonymous if necessary, but find a way to centralize and share the information so that everyone benefits from preventing opportunities for fraud. </p>
<p>[1] <a href="http://www.blackhat.com/presentations/bh-usa-09/MARLINSPIKE/BHUSA09-Marlinspike-DefeatOCSP-PAPER2.pdf">http://www.blackhat.com/presentations/bh-usa-09/MARLINSPIKE/BHUSA09-Marlinspike-DefeatOCSP-PAPER2.pdf</a><br />
[2] <a href="http://www.ietf.org/rfc/rfc2560.txt">http://www.ietf.org/rfc/rfc2560.txt</a><br />
[3] <a href="http://news.cnet.com/8301-1009_3-9998906-83.html">http://news.cnet.com/8301-1009_3-9998906-83.html</a><br />
[4] <a href="https://www.isecpartners.com/files/XMLDSIG_Command_Injection.pdf">https://www.isecpartners.com/files/XMLDSIG_Command_Injection.pdf</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2011/01/domain-driven-security/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>OpenSAMM Overview Presentation in French</title>
		<link>http://www.opensamm.org/2010/10/opensamm-overview-presentation-in-french/</link>
		<comments>http://www.opensamm.org/2010/10/opensamm-overview-presentation-in-french/#comments</comments>
		<pubDate>Wed, 20 Oct 2010 16:04:14 +0000</pubDate>
		<dc:creator>Pravir Chandra</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[french]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[translation]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=798</guid>
		<description><![CDATA[Thanks to Hubert Grégoire and Sebastien Gioria, we now have a French translation of the OpenSAMM 1.0 Overview presentation available for download. You can get it from the download tab or there is a direct link here. If anyone else has translated the presentation to other languages for local chapter presentations, please feel free to [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-799" title="OpenSAMM Preso in French" src="http://www.opensamm.org/wp-content/uploads/2010/10/Picture-1.png" alt="" width="300" height="226" />Thanks to Hubert Grégoire and Sebastien Gioria, we now have a French translation of the OpenSAMM 1.0 Overview presentation available for download. You can get it from the <a href="http://www.opensamm.org/download/">download tab</a> or there is a <a href="http://www.opensamm.org/downloads/resources/OpenSAMM-1.0-fr_FR.ppt">direct link here</a>.</p>
<p>If anyone else has translated the presentation to other languages for local chapter presentations, please feel free to send them to me (or the mailing list) and we&#8217;ll get them posted for all to access.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2010/10/opensamm-overview-presentation-in-french/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenSAMM in Sydney Australia! 6th October</title>
		<link>http://www.opensamm.org/2010/09/opensamm-in-sydney-australia-6th-october/</link>
		<comments>http://www.opensamm.org/2010/09/opensamm-in-sydney-australia-6th-october/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 00:19:43 +0000</pubDate>
		<dc:creator>jderry</dc:creator>
				<category><![CDATA[Discussion]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=790</guid>
		<description><![CDATA[Hi Everyone, So if you&#8217;re going to be in Sydney Australia, on the 6th of October, and want to learn more about OpenSAMM, how to implement and use, as well as maybe get a hard copy, you&#8217;re welcome to come along to the AISA presentation at 60 Martin Place at 8AM!.. I  will be talking [...]]]></description>
			<content:encoded><![CDATA[<p>Hi Everyone,<br />
So if you&#8217;re going to be in Sydney Australia, on the 6th of October, and want to learn more about OpenSAMM, how to implement and use, as well as maybe get a hard copy, you&#8217;re welcome to come along to the AISA presentation at 60 Martin Place at 8AM!.. I  will be talking for about an hour on the OpenSAMM project, as well as talking about implementation techniques and how OpenSAMM can help your organisation. The full details can be found at <a href="http://www.aisa.org.au/index.php?page=281">http://www.aisa.org.au/index.php?page=281</a></p>
<p>I&#8217;ll post slides and presentation details after we&#8217;ve got them finished. But it should be a good morning, and for those in Australia wanting to know more, this is a great session for free to come along to.!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2010/09/opensamm-in-sydney-australia-6th-october/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Roadmap Chart Generation &#8211; Part 3 of 3</title>
		<link>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-3-of-3/</link>
		<comments>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-3-of-3/#comments</comments>
		<pubDate>Tue, 28 Sep 2010 04:25:42 +0000</pubDate>
		<dc:creator>Colin Watson</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[charts]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=721</guid>
		<description><![CDATA[Yesterday Part 2 described how to create and validate the source roadmap data files. In this post, transforming the data files into the final SVG format we saw in Part 1 will be described. The great thing about having data in XML is the ability to translate it easily into another format using Extensible Stylesheet [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.opensamm.org/wp-content/uploads/2010/09/sc-roadmap-banner-3.png" alt="Code snippet from the SAMM Roadmap chart XSLT file" width="240" height="221" class="alignright size-full wp-image-730" /></p>
<p>Yesterday <a href="http://www.opensamm.org/2010/09/roadmap-chart-generation-part-2-of-3/">Part 2</a> described how to create and validate the source roadmap data files.  In this post, transforming the data files into the final SVG format we saw in <a href="http://www.opensamm.org/2010/09/roadmap-chart-generation-part-1-of-3/">Part 1</a> will be described.</p>
<p>The great thing about having data in XML is the ability to translate it easily into another format using <a href="http://en.wikipedia.org/wiki/XSLT">Extensible Stylesheet Language Transformations</a> (XSLT).</p>
<h3>Transformation</h3>
<p><a href='http://www.opensamm.org/wp-content/uploads/2010/09/20100928-samm-roadmap-chart-generation-part-3.zip'>Download the archive of files</a>.</p>
<p>With Brenda&#8217;s assistance we now have an XSLT file which can be used to translate a valid and well-formed SAMM Roadmap source data file into a valid SVG file.  You need the two XSL files included in the archive download linked above:</p>
<p style="margin-left:3em">SAMM-1.0-roadmap-0.6-en_US.xsl<br />
SAMM-1.0-utilities-0.1.xsl</p>
<p>You also need the base US English XML file (version 0.3) for SAMM v1.0 and your XML data files.  The archive includes the two example XML files from Part 1 (again) and the US English SAMM base XML file.  Remember the latter should normally be downloaded from the <a href="http://www.opensamm.org/download/">SAMM download page</a>.  Place all the files in a new directory.</p>
<p>Take a tool which can undertake XSLT conversions, and apply SAMM-1.0-roadmap-0.6-en_US.xsl to your XML file or one of the examples.  An SVG file should be created.</p>
<div id="attachment_735" class="wp-caption aligncenter" style="width: 579px"><img src="http://www.opensamm.org/wp-content/uploads/2010/09/sc-roadmap-ex1-rendered-extract.png" alt="Partial screen capture (as a JPEG) of a generated SVG SAMM Roadmap Chart" width="569" height="399" class="size-full wp-image-735" /><p class="wp-caption-text">Partial screen capture (as a JPEG) of a generated SVG SAMM Roadmap Chart</p></div>
<p>And that&#8217;s it.  Alter your XML files to see the effect on the generated SVG charts.</p>
<p>If you don&#8217;t want to use XML and XSLT, you can of course just edit the SVG files directly using some sort of text editor.</p>
<h3>Next</h3>
<p>I hope to spend some time creating SVG charts for the SAMM scorecard charts sometime soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-3-of-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Roadmap Chart Generation &#8211; Part 2 of 3</title>
		<link>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-2-of-3/</link>
		<comments>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-2-of-3/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 11:00:38 +0000</pubDate>
		<dc:creator>Colin Watson</dc:creator>
				<category><![CDATA[Discussion]]></category>
		<category><![CDATA[Releases]]></category>
		<category><![CDATA[1.0]]></category>
		<category><![CDATA[charts]]></category>
		<category><![CDATA[presentation]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.opensamm.org/?p=689</guid>
		<description><![CDATA[Part 1 demonstrated the final generated SCG charts. Here we will look at the starting point&#8212;the source roadmap data files. The roadmap charts describe changing level data across a number of implementation states. The charts are not project planning tools and therefore the durations are neither defined nor indicated in the widths on the charts. [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.opensamm.org/wp-content/uploads/2010/09/sc-roadmap-banner-2.png" alt="Snippet of the source code from an example SAMM Roadmap XML file" width="240" height="221" class="alignright size-full wp-image-690" /></p>
<p><a href="http://www.opensamm.org/2010/09/roadmap-chart-generation-part-1-of-3/">Part 1</a> demonstrated the final generated SCG charts.  Here we will look at the starting point&mdash;the source roadmap data files.</p>
<p>The roadmap charts describe changing level data across a number of implementation states.  The charts are not project planning tools and therefore the durations are neither defined nor indicated in the widths on the charts.</p>
<p>Maturity Level information can be 0, 1, 2 and 3 or where there is additional assurances in place beyond those indicated by the Level, the &#8220;+&#8221; symbol can be used so 0+, 1+ and 2+ are also allowed if required.  For charting purposes these are treated as &#189;, 1&#189; and 2&#189;.  There is no assumption that Maturity Levels will increase through subsequent states; Maturity Levels can fall as well as rise, or remain static.</p>
<h3>States</h3>
<p><i>&#8220;Roadmaps &#8230; consist of [states] (the vertical bars) in which several Practices are each improved by one Level.  Therefore, building a roadmap entails selection of which Practices to improve in each planned [state].&#8221;</i> SAMM v1.0</p>
<p>Unlike in the previous spreadsheet version, the number of states (phases, steps or stages) which can be charted is flexible from 2 to 10.  The greater the number of states there are, the wider the final generated chart will be.  We will see below that your &#8220;states&#8221; can be called anything you want.</p>
<h3>Format</h3>
<p><a href='http://www.opensamm.org/wp-content/uploads/2010/09/20100927-samm-roadmap-chart-generation-part-2.zip'>Download the archive of files</a>.</p>
<p>The archive contains two example SAMM Roadmap XML files.  The primary structure of the XML files is:</p>
<pre style="font-size:1.3em;color:#666;margin:-0.5em 0 1em 3em">
&lt;?xml version="1.0" encoding="iso-8859-1"?&gt;
&lt;maturity&gt;
	&lt;title&gt;...&lt;/title&gt;
	&lt;states&gt;
	...
	&lt;/states&gt;
&lt;/maturity&gt;
</pre>
<p>where the title (XML encoding) is used as a heading on the chart legend, and the Maturity Level data are included between the &lt;states&gt;&lt;/states&gt; markup tags.</p>
<p>The first markup within the section must be the Maturity Levels at the start i.e. state 0 (zero).  State 0 has a title (&#8220;Start&#8221; in the example below) and description, but these are not used or displayed.  All security Practices that are to appear on the roadmap must be defined within the &lt;levels&gt; markup.</p>
<pre style="font-size:1.3em;color:#666;margin:-0.5em 0 1em 3em">
&lt;state number="0"&gt;
	&lt;title&gt;Start&lt;/title&gt;
	&lt;description&gt;&lt;/description&gt;
	&lt;levels&gt;
		&lt;level security-practice="SM" value="1" /&gt;
		&lt;level security-practice="PC" value="0" /&gt;
		&lt;level security-practice="EG" value="0" /&gt;
		&lt;level security-practice="TA" value="0" /&gt;
		&lt;level security-practice="SR" value="0" /&gt;
		&lt;level security-practice="SA" value="0" /&gt;
		&lt;level security-practice="DR" value="0" /&gt;
		&lt;level security-practice="CR" value="1" /&gt;
 		&lt;level security-practice="ST" value="0" /&gt;
		&lt;level security-practice="VM" value="0" /&gt;
		&lt;level security-practice="EH" value="0" /&gt;
		&lt;level security-practice="OE" value="0" /&gt;
	&lt;/levels&gt;
&lt;/state&gt;
</pre>
<p>The values for the attribute &#8220;security-practice&#8221; must match the security Practice attribute &#8220;id&#8221; defined in the &lt;security-practice&gt; markup tag within the base SAMM XML file (e.g.  SAMM-1.0-XML-0.3-en_US.xml mentioned in Part 1).  &#8220;SM&#8221; is &#8220;Strategy &amp; Metrics&#8221;, &#8220;PC&#8221; is &#8220;Policy &amp; Compliance&#8221;, etc.</p>
<p>Subsequent state numbers (1, 2, 3, etc) must include values for the title, description, and as mentioned in Part 1, only data for Practices where the Maturity Level changes should be included:</p>
<pre style="font-size:1.3em;color:#666;margin:-0.5em 0 1em 3em">
&lt;state number="1"&gt;
	&lt;title&gt;Phase 1&lt;/title&gt;
	&lt;description&gt;2010/11 Michaelmas Term&lt;/description&gt;
	&lt;levels&gt;
		&lt;level security-practice=&quot;EG&quot; value=&quot;1&quot; /&gt;
		&lt;level security-practice=&quot;SR&quot; value=&quot;0+&quot; /&gt;
 		&lt;level security-practice=&quot;ST&quot; value=&quot;1&quot; /&gt;
		&lt;level security-practice=&quot;VM&quot; value=&quot;0+&quot; /&gt;
	&lt;/levels&gt;
&lt;/state&gt;
&lt;state number=&quot;2&quot;&gt;
	&lt;title&gt;Phase 2&lt;/title&gt;
	&lt;description&gt;2010/11 Hilary Term&lt;/description&gt;
	&lt;levels&gt;
		&lt;level security-practice=&quot;SM&quot; value=&quot;2&quot; /&gt;
		&lt;level security-practice=&quot;EG&quot; value=&quot;2&quot; /&gt;
		&lt;level security-practice=&quot;TA&quot; value=&quot;1&quot; /&gt;
		&lt;level security-practice=&quot;DR&quot; value=&quot;1&quot; /&gt;
		&lt;level security-practice=&quot;CR&quot; value=&quot;2&quot; /&gt;
 		&lt;level security-practice=&quot;ST&quot; value=&quot;2&quot; /&gt;
		&lt;level security-practice=&quot;OE&quot; value=&quot;1&quot; /&gt;
	&lt;/levels&gt;
&lt;/state&gt;
</pre>
<p>Subsequent stages are defined in the same manner.  The file is saved with an XML extension.</p>
<p>For the eagle-eyed amongst you, you might have noticed a vertical dashed line in the SVG example shown in Part 1, which doesn&#8217;t appear in any of the roadmaps in the SAMM document.  This is a new optional attribute which can be added to one of the stages.  Just add the attribute &#8220;marker&#8221; with value &#8220;true&#8221; in one of the &lt;state&gt; tags and the line will be drawn.  This might mean &quot;status now&quot; or an important event on the timeline, but that can be described in your accompanying text or presentation.</p>
<h3>Validation</h3>
<p>We tried the make the source data files as human-readable as possible, but thought we also needed to provide a way to validate the format.</p>
<p>Firstly check the file is well-formed.  The simplest method is to use the W3C Markup Validation Service to <a href="http://validator.w3.org/#validate-by-upload">upload the file</a> or <a href="http://validator.w3.org/#validate-by-input">directly input the file content</a>.  If your data contains confidential information, you may want to undertake this check locally instead.</p>
<p>Then once the file has passed the previous check, test the XML structure against the XML Schema Definition (XSD) provided in the download link above:</p>
<p style="margin-left:3em">SAMM-1.0-roadmap-0.3.xsd</p>
<p>You will need some sort of XML tool for this.  The XSD includes some assertion statements, and therefore needs XSD v1.1 enabled in a Saxon parser.  It also has some <a href="http://en.wikipedia.org/wiki/Schematron">Schematron</a> statements which should be validated as well.</p>
<p>Now you should have validated XML files.</p>
<h3>Continues&#8230;</h3>
<p>In Part 3 tomorrow, the automated process for transforming the source data into the final SVG files will be described.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.opensamm.org/2010/09/roadmap-chart-generation-part-2-of-3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

