<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3225552334088125803</id><updated>2024-09-21T18:48:35.647-04:00</updated><category term="security"/><category term="cloud"/><category term="A6"/><category term="API"/><category term="compliance"/><category term="stack"/><category term="audit"/><category term="SCAP"/><category term="XSRL"/><category term="auditors"/><category term="documentation"/><category term="FUD"/><category term="eXtensible Security Reporting Language"/><category term="not quite cloud"/><category term="ponderings"/><category term="CPE"/><category term="VMWare"/><category term="business"/><category term="cloudcamp"/><category term="news"/><category term="vSphere"/><category term="Assurance"/><category term="Cloud Audit"/><category term="EC2"/><category term="FBI"/><category term="IBM"/><category term="OVF"/><category term="RSA"/><category term="SECTOR"/><category term="VMSafe"/><category term="Zoho"/><category term="availability"/><category term="cloudbursting"/><category term="defense-in-depth"/><category term="document security"/><category term="federated services"/><category term="google"/><category term="google wave"/><category term="humour"/><category term="hypervisor"/><category term="mal-machine"/><category term="malware"/><category term="mckinsey"/><category term="network"/><category term="pledge"/><category term="rating"/><category term="startup"/><category term="trojan"/><category term="value curve"/><category term="wall"/><category term="web application firewall"/><category term="wifi"/><category term="working group"/><title type='text'>Iron Fog</title><subtitle type='html'>Thinking about security in this wonderful world of cloud based everything</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-583932358640472848</id><published>2010-02-14T19:32:00.005-05:00</published><updated>2010-02-14T19:40:11.250-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="Cloud Audit"/><category scheme="http://www.blogger.com/atom/ns#" term="working group"/><title type='text'>A6 becomes Cloud Audit</title><content type='html'>Chris Hoff and the intrepid A6 working group (which I&#39;m proud to say I get to participate in) have rebranded A6 to Cloud Audit. The working group will remain known as the A6 working group and will congregate on Google groups &lt;a href=&quot;http://groups.google.com/group/CloudAudit&quot;&gt;here&lt;/a&gt;.&lt;div&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;div&gt;Given the work that&#39;s happened to date inside the working group, I&#39;ve retired the documents on scribd.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;
&lt;br&gt;&lt;div&gt;(as an aside I hope to start posting again in the next month or so)&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/583932358640472848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2010/02/a6-becomes-cloud-audit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/583932358640472848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/583932358640472848'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2010/02/a6-becomes-cloud-audit.html' title='A6 becomes Cloud Audit'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-6761020797399880681</id><published>2009-10-08T22:39:00.001-04:00</published><updated>2009-10-08T22:39:48.088-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="network"/><category scheme="http://www.blogger.com/atom/ns#" term="news"/><category scheme="http://www.blogger.com/atom/ns#" term="SECTOR"/><category scheme="http://www.blogger.com/atom/ns#" term="wall"/><category scheme="http://www.blogger.com/atom/ns#" term="wifi"/><title type='text'>The HitchHiker&amp;#39;s Guide to Security Con&amp;#39;s Networks</title><content type='html'>&lt;p&gt;JJ over at Security Uncorked wrote a thoughtful piece on &lt;a href=&quot;http://bit.ly/ce0yT&quot;&gt;SecTor 2009&#39;s Wall of Shame&lt;/a&gt;. JJ&#39;s explanation of the whole issue and the technical details is well worth the read, but to summarize it&#39;s a common feature at security conferences with the purpose of demonstrating that password and other sensitive information transmitted in plaintext (not encrypted) can be easily intercepted.&lt;/p&gt;
&lt;p&gt;The point of the Wall of Shame is that it&#39;s never safe to transmit sensitive information in the clear and really if you&#39;re a security professional you should know better.&lt;/p&gt;
&lt;p&gt;I&#39;ll say that again, if you&#39;re a security professional you should know better.&lt;/p&gt;
&lt;p&gt;So here are some suggested rules if you&#39;re at a security conference:&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;Don&#39;t use the wireless network&lt;/li&gt;

  &lt;li&gt;Always assume someone is intercepting traffic and displaying it on a big screen somewhere&lt;/li&gt;

  &lt;li&gt;Always assume that someone with less than noble intent is intercepting traffic&lt;/li&gt;

  &lt;li&gt;Always assume that some wannabe is sniffing traffic for some reason&lt;/li&gt;

  &lt;li&gt;Use a VPN, SSL or properly encrypted cellular network&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;To be fair though, if you&#39;ve configured your software to transmit over an encrypted channel or assume that the traffic is encrypted, you might be in for a surprise as one of the conference organizers was when they learnt that there software did not work as expected.&lt;/p&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/6761020797399880681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/10/hitchhiker-guide-to-security-con.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6761020797399880681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6761020797399880681'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/10/hitchhiker-guide-to-security-con.html' title='The HitchHiker&amp;#39;s Guide to Security Con&amp;#39;s Networks'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-2468717122597238682</id><published>2009-08-31T22:49:00.001-04:00</published><updated>2009-08-31T22:49:04.426-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="CPE"/><category scheme="http://www.blogger.com/atom/ns#" term="EC2"/><category scheme="http://www.blogger.com/atom/ns#" term="not quite cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="VMWare"/><category scheme="http://www.blogger.com/atom/ns#" term="vSphere"/><category scheme="http://www.blogger.com/atom/ns#" term="Zoho"/><title type='text'>My data centre is in your cloud, your cloud is in my data centre</title><content type='html'>&lt;p&gt;Amazon announces &lt;a href=&quot;http://aws.typepad.com/aws/2009/08/introducing-amazon-virtual-private-cloud-vpc.html&quot;&gt;VPC (EC2 instances on a private network)&lt;/a&gt; and this interesting article on &lt;a href=&quot;http://www.readwriteweb.com/enterprise/2009/08/zoho-partners-with-vmware.php&quot;&gt;ReadWrite about Zoho&lt;/a&gt; putting their SaaS offering behind the corporate firewall via vSphere (on what I assume is a VMWare).&lt;/p&gt;
&lt;p&gt;Both solutions bring a piece of the cloud inside your environment and a first I was wondering if the connectivity or embedding increased security risks. I ran through the gamut of concerns such as:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Unknown vulnerabilities hidden in the stack&lt;/li&gt;

  &lt;li&gt;Immutable vulnerabilities in the solution that can&#39;t be patched&lt;/li&gt;

  &lt;li&gt;Malware/Malmachines&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;However, all of these can be addressed using existing controls we already deploy in our corporate environments, case in point:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&quot;...and to extend their existing management capabilities such as security services, firewalls, and intrusion detection systems to include their AWS resources.&quot;&lt;br /&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So now I&#39;ve got IPS, internal firewalls (you have those right) and network anti-X to monitor and contain anything these external assets could throw at me. These controls are also useful if I choose to expose my pieces of the cloud to the outside world.&lt;/p&gt;
&lt;p&gt;In reality though, Zoho&#39;s solution is just software-in-a-virtual-box based on popular software normally found in the cloud; while Amazon&#39;s VPC is just collocation with a point-to-point VPN (IBM and CGI have offered this forever, so does my employer for that matter). Most businesses are already comfortable with both of the former, so if the biggest objection to going Cloud is around governance, then maybe this is the compromise answer. If the biggest concern is data location, then this provides a nice compromise as well (keep the database inside the corporation).&lt;/p&gt;
&lt;p&gt;&lt;i&gt;Note the key assumptions for EC2 VPC integrity are:&lt;br /&gt;&lt;/i&gt;&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;&lt;i&gt;EC2 admins can&#39;t disengage the network isolation controls&lt;/i&gt;&lt;/li&gt;

  &lt;li&gt;&lt;i&gt;The network isolations control are some orthogonal mechanism that cannot be directly accessed from any EC2 instances (either inside or outside the VPC zone)&lt;/i&gt;&lt;/li&gt;

  &lt;li&gt;&lt;i&gt;The EC2 VPN endpoint is strictly bound to isolated network&lt;/i&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;i&gt;I don&#39;t think these are unreasonable assumptions to make, not independently testable nor inviolable by any means but still reasonable.&lt;/i&gt;&lt;/p&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/2468717122597238682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/my-data-centre-is-in-your-cloud-your.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2468717122597238682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2468717122597238682'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/my-data-centre-is-in-your-cloud-your.html' title='My data centre is in your cloud, your cloud is in my data centre'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3296960039786089638</id><published>2009-08-18T23:04:00.001-04:00</published><updated>2009-08-18T23:04:56.814-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="documentation"/><category scheme="http://www.blogger.com/atom/ns#" term="eXtensible Security Reporting Language"/><category scheme="http://www.blogger.com/atom/ns#" term="XSRL"/><title type='text'>XSRL Compliance drafted</title><content type='html'>&lt;p&gt;Just finished draft 0.1 of the XSRL-compliance schema, a sub-namespace of XSRL (eXtensible Security Reporting Language).&lt;/p&gt;
&lt;p&gt;The draft schema looks like this:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3835011501/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2643/3835011501_6a2d13d4a2_m.jpg&quot; height=&quot;240&quot; width=&quot;137&quot; alt=&quot;XSRLCompliance_0.1_schema&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The draft XSD file is located on &lt;a href=&quot;http://bit.ly/7CXYW&quot;&gt;Box.net&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Auto-generated schema documentation is up on scribd.&lt;/p&gt;
&lt;a title=&quot;View XSRLCompliance_0.1 on Scribd&quot; href=&quot;http://www.scribd.com/doc/18786891/XSRLCompliance01&quot; style=&quot;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&quot;&gt;XSRLCompliance_0.1&lt;/a&gt; &lt;object codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0&quot; id=&quot;doc_826483937307899&quot; name=&quot;doc_826483937307899&quot; classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; align=&quot;middle&quot;	height=&quot;500&quot; width=&quot;100%&quot; &gt;		&lt;param name=&quot;movie&quot;	value=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18786891&amp;access_key=key-j4q3bkb91smmtnrodjs&amp;page=1&amp;version=1&amp;viewMode=list&quot;&gt; 		&lt;param name=&quot;quality&quot; value=&quot;high&quot;&gt; 		&lt;param name=&quot;play&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;loop&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;scale&quot; value=&quot;showall&quot;&gt;		&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt; 		&lt;param name=&quot;devicefont&quot; value=&quot;false&quot;&gt;		&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt; 		&lt;param name=&quot;menu&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt; 		&lt;param name=&quot;salign&quot; value=&quot;&quot;&gt;    			    	&lt;param name=&quot;mode&quot; value=&quot;list&quot;&gt;	    		&lt;embed src=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18786891&amp;access_key=key-j4q3bkb91smmtnrodjs&amp;page=1&amp;version=1&amp;viewMode=list&quot; quality=&quot;high&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot; play=&quot;true&quot; loop=&quot;true&quot; scale=&quot;showall&quot; wmode=&quot;opaque&quot; devicefont=&quot;false&quot; bgcolor=&quot;#ffffff&quot; name=&quot;doc_826483937307899_object&quot; menu=&quot;true&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; salign=&quot;&quot; type=&quot;application/x-shockwave-flash&quot; align=&quot;middle&quot; mode=&quot;list&quot; height=&quot;500&quot; width=&quot;100%&quot;&gt;&lt;/embed&gt;	&lt;/object&gt;	
&lt;p&gt;An &lt;a href=&quot;http://bit.ly/MkHe5&quot;&gt;updated version of XSRL-Policy&lt;/a&gt; has also been uploaded.&lt;br /&gt;&lt;/p&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3296960039786089638/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/xsrl-compliance-drafted.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3296960039786089638'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3296960039786089638'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/xsrl-compliance-drafted.html' title='XSRL Compliance drafted'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm3.static.flickr.com/2643/3835011501_6a2d13d4a2_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-6835381603318307368</id><published>2009-08-16T09:42:00.000-04:00</published><updated>2009-08-16T09:43:03.937-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="documentation"/><category scheme="http://www.blogger.com/atom/ns#" term="eXtensible Security Reporting Language"/><category scheme="http://www.blogger.com/atom/ns#" term="XSRL"/><title type='text'>Starting XSRL</title><content type='html'>&lt;p&gt;A brief announcement, I&#39;ve temporarily paused documenting A6 to put together a draft set of XML schema for XSRL (eXtensible Security Reporting Language).&lt;/p&gt;
&lt;p&gt;Draft 0.1 of the XSRL-Policy is the first release, to be followed by:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;XSRL-events&lt;/b&gt; - for reporting on events such as breaches or virus outbreaks&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;XSRL-compliance&lt;/b&gt; - for reporting compliance with stated XSRL-Policy or external XSRL-Policy such as PCI-DSS (my lazy example)&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;b&gt;XSRL-state&lt;/b&gt; - for reporting on the security state of your environment, systems and applications - will leverage SCAP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The schema looks like this (some child elements not shown):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3825654687/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3487/3825654687_16b6a3d199_m.jpg&quot; height=&quot;240&quot; width=&quot;186&quot; alt=&quot;XSRLPolicy_0.1.html0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The draft XSD file is on &lt;a href=&quot;http://www.box.net/shared/smv8nry285&quot;&gt;box.net&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Auto-generated documentation is below on Scribd iPaper below.&lt;/p&gt;
&lt;a title=&quot;View XSRLPolicy_0.1 on Scribd&quot; href=&quot;http://www.scribd.com/doc/18658988/XSRLPolicy01&quot; style=&quot;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&quot;&gt;XSRLPolicy_0.1&lt;/a&gt; &lt;object codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0&quot; id=&quot;doc_108310583602660&quot; name=&quot;doc_108310583602660&quot; classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; align=&quot;middle&quot;	height=&quot;500&quot; width=&quot;100%&quot; &gt;		&lt;param name=&quot;movie&quot;	value=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18658988&amp;access_key=key-1t93ph0nhtb1b3vkybp7&amp;page=1&amp;version=1&amp;viewMode=&quot;&gt; 		&lt;param name=&quot;quality&quot; value=&quot;high&quot;&gt; 		&lt;param name=&quot;play&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;loop&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;scale&quot; value=&quot;showall&quot;&gt;		&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt; 		&lt;param name=&quot;devicefont&quot; value=&quot;false&quot;&gt;		&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt; 		&lt;param name=&quot;menu&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt; 		&lt;param name=&quot;salign&quot; value=&quot;&quot;&gt;    				&lt;embed src=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18658988&amp;access_key=key-1t93ph0nhtb1b3vkybp7&amp;page=1&amp;version=1&amp;viewMode=&quot; quality=&quot;high&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot; play=&quot;true&quot; loop=&quot;true&quot; scale=&quot;showall&quot; wmode=&quot;opaque&quot; devicefont=&quot;false&quot; bgcolor=&quot;#ffffff&quot; name=&quot;doc_108310583602660_object&quot; menu=&quot;true&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; salign=&quot;&quot; type=&quot;application/x-shockwave-flash&quot; align=&quot;middle&quot;  height=&quot;500&quot; width=&quot;100%&quot;&gt;&lt;/embed&gt;	&lt;/object&gt;	
&lt;p&gt;&lt;i&gt;BTW Just got listed on&lt;/i&gt; &lt;a href=&quot;http://cloud-computing.alltop.com/&quot;&gt;&lt;i&gt;AllTop&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/6835381603318307368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/starting-xsrl.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6835381603318307368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6835381603318307368'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/starting-xsrl.html' title='Starting XSRL'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm4.static.flickr.com/3487/3825654687_16b6a3d199_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3224783114826680773</id><published>2009-08-12T22:20:00.001-04:00</published><updated>2009-08-12T22:28:25.296-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="humour"/><category scheme="http://www.blogger.com/atom/ns#" term="pledge"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Cloud Security Pundits Pledge</title><content type='html'>&lt;p&gt;Raise your EC2 key and repeat after me:&lt;/p&gt;
&lt;p&gt;I, &amp;lt;insert twitter handle here&amp;gt;, do solemnly affirm that when tweeting, blogging or retweeting about cloud security, I will never:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;cite twitter-gate as a reason to stay out of the cloud&lt;/li&gt;

  &lt;li&gt;confuse IaaS, PaaS or SaaS and the security responsibilities for each&lt;/li&gt;

  &lt;li&gt;insist on the right to audit&lt;/li&gt;

  &lt;li&gt;blame cloud providers for common software security flaws&lt;/li&gt;

  &lt;li&gt;debate on private versus public clouds&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I commit to always:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;recommend positive approaches to achieve security in the cloud&lt;/li&gt;

  &lt;li&gt;advocate the implementation of A6 and XSRL&lt;/li&gt;

  &lt;li&gt;diffuse twitter-gate debates&lt;/li&gt;

  &lt;li&gt;clarify on the difference between common security flaws and cloud specific issues&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;;-)&lt;/p&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3224783114826680773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/cloud-security-pundits-pledge.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3224783114826680773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3224783114826680773'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/cloud-security-pundits-pledge.html' title='Cloud Security Pundits Pledge'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-791731550491889199</id><published>2009-08-12T20:53:00.001-04:00</published><updated>2009-08-12T20:56:27.621-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="Assurance"/><category scheme="http://www.blogger.com/atom/ns#" term="auditors"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="documentation"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><category scheme="http://www.blogger.com/atom/ns#" term="XSRL"/><title type='text'>Closing the gaps on A6 (not the Audi)</title><content type='html'>&lt;p&gt;I&#39;ve started writing the A6 API document and I&#39;m bothered by two areas of incompleteness (voids, gaping voids):&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;No Assurance function (specifically my treatment of the assurance function as either &lt;a href=&quot;http://ironfog.blogspot.com/2009/08/some-thoughts-for-addressing-assurance.html&quot;&gt;emergent or orthogonal&lt;/a&gt;)&lt;/li&gt;

  &lt;li&gt;The unconnected dots that each URI represents&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I think I can close both of these gaps by cheating a little bit, I&#39;m going to repurpose &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_28.html&quot;&gt;/ssapi/ISO27002/&lt;/a&gt; to serve as the Assurance function, then use it as the point that we ultimately tie everything together.&lt;/p&gt;
&lt;p&gt;This won&#39;t be as good as an independent and trusted third party standing up and saying everything is kosher and I still hold that Assurance is best described as follows:&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&quot;a validated statement, specifically validated by a trusted third party (like an audit firm) reviews the supporting facts behind an assertion and confirms they are true, have integrity and have the correct scope (or completeness)&quot;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;However, I don&#39;t believe A6 was supposed to be the cure for all that ails our security world, its purpose it to provide transparency, so let&#39;s work on sharing security state information and we can circle back to the golden standard in a future standard.&lt;/p&gt;
&lt;p&gt;By modifying the return of &lt;b&gt;/ssapi/ISO27002/&lt;/b&gt; method we can not only use it to expose policy information, but also expose the level of compliance with the policy by providing references back to the &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_31.html&quot;&gt;/ssapi/environment/&lt;/a&gt; results or the existence of control elements (the latter will need to be self-asserted by a given element, as in &quot;I do this&quot;)&lt;/p&gt;
&lt;p&gt;There are two sticky bits:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;avoiding exposing sensitive information as follows: &quot;our policy is to have firewalls&quot; followed by &quot;the following elements have very bad scores&quot; and because they&#39;re referenced by that policy the intelligent attacker can conclude &quot;their firewalls are poorly configured, let me attack&quot;&lt;/li&gt;

  &lt;li&gt;there&#39;s a missing input covering the procedural/non-technical elements that we can&#39;t use &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html&quot;&gt;/ssapi/element/xccdf/&lt;/a&gt; to collect (which is my ever-so-clever way of circling back to the need for an &lt;a href=&quot;http://ironfog.blogspot.com/2009/08/some-thoughts-for-addressing-assurance.html&quot;&gt;eXtensible Security Reporting Language&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here&#39;s version 0.11 of the A6 API documentation - it&#39;s showing off a bit more structure, only a page more of content though.&lt;/p&gt;&lt;br /&gt;
&lt;a title=&quot;View A6 API Documentation - Draft 0.11 on Scribd&quot; href=&quot;http://www.scribd.com/doc/18515297/A6-API-Documentation-Draft-011&quot; style=&quot;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&quot;&gt;A6 API Documentation - Draft 0.11&lt;/a&gt; &lt;object codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0&quot; id=&quot;doc_419590777548687&quot; name=&quot;doc_419590777548687&quot; classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; align=&quot;middle&quot;	height=&quot;500&quot; width=&quot;100%&quot; &gt;		&lt;param name=&quot;movie&quot;	value=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18515297&amp;access_key=key-2wer3cevrlry2xjdy2d&amp;page=1&amp;version=1&amp;viewMode=list&quot;&gt; 		&lt;param name=&quot;quality&quot; value=&quot;high&quot;&gt; 		&lt;param name=&quot;play&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;loop&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;scale&quot; value=&quot;showall&quot;&gt;		&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt; 		&lt;param name=&quot;devicefont&quot; value=&quot;false&quot;&gt;		&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt; 		&lt;param name=&quot;menu&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt; 		&lt;param name=&quot;salign&quot; value=&quot;&quot;&gt;    			    	&lt;param name=&quot;mode&quot; value=&quot;list&quot;&gt;	    		&lt;embed src=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18515297&amp;access_key=key-2wer3cevrlry2xjdy2d&amp;page=1&amp;version=1&amp;viewMode=list&quot; quality=&quot;high&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot; play=&quot;true&quot; loop=&quot;true&quot; scale=&quot;showall&quot; wmode=&quot;opaque&quot; devicefont=&quot;false&quot; bgcolor=&quot;#ffffff&quot; name=&quot;doc_419590777548687_object&quot; menu=&quot;true&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; salign=&quot;&quot; type=&quot;application/x-shockwave-flash&quot; align=&quot;middle&quot; mode=&quot;list&quot; height=&quot;500&quot; width=&quot;100%&quot;&gt;&lt;/embed&gt;	&lt;/object&gt;
</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/791731550491889199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/closing-gaps-on-a6-not-audi.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/791731550491889199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/791731550491889199'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/closing-gaps-on-a6-not-audi.html' title='Closing the gaps on A6 (not the Audi)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-2247291351686320701</id><published>2009-08-12T00:25:00.001-04:00</published><updated>2009-08-12T00:25:15.118-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="documentation"/><category scheme="http://www.blogger.com/atom/ns#" term="SCAP"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Documenting the A6 REST API</title><content type='html'>&lt;p&gt;So after a week off (filled with good things like finishing Season 4 of Galactica), I decided I needed to actually document the A6 API. I&#39;m doing this for two reasons:&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;The blog posts are fragmented and make it harder for any potential implementers to follow&lt;/li&gt;

  &lt;li&gt;I like detailed documentation&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;So here&#39;s section 1.0 of draft 0.1 - the three salient elements are the introduction, the license and design philosophy.&lt;/p&gt;
&lt;a title=&quot;View A6 API Documentation - Draft 0.1 on Scribd&quot; href=&quot;http://www.scribd.com/doc/18473245/A6-API-Documentation-Draft-01&quot; style=&quot;margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;&quot;&gt;A6 API Documentation - Draft 0.1&lt;/a&gt; &lt;object codebase=&quot;http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0&quot; id=&quot;doc_404484710152533&quot; name=&quot;doc_404484710152533&quot; classid=&quot;clsid:d27cdb6e-ae6d-11cf-96b8-444553540000&quot; align=&quot;middle&quot;	height=&quot;500&quot; width=&quot;100%&quot; &gt;		&lt;param name=&quot;movie&quot;	value=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18473245&amp;access_key=key-2nd71xwwvtk2x85um6u6&amp;page=1&amp;version=1&amp;viewMode=&quot;&gt; 		&lt;param name=&quot;quality&quot; value=&quot;high&quot;&gt; 		&lt;param name=&quot;play&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;loop&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;scale&quot; value=&quot;showall&quot;&gt;		&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt; 		&lt;param name=&quot;devicefont&quot; value=&quot;false&quot;&gt;		&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt; 		&lt;param name=&quot;menu&quot; value=&quot;true&quot;&gt;		&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt; 		&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt; 		&lt;param name=&quot;salign&quot; value=&quot;&quot;&gt;    				&lt;embed src=&quot;http://d.scribd.com/ScribdViewer.swf?document_id=18473245&amp;access_key=key-2nd71xwwvtk2x85um6u6&amp;page=1&amp;version=1&amp;viewMode=&quot; quality=&quot;high&quot; pluginspage=&quot;http://www.macromedia.com/go/getflashplayer&quot; play=&quot;true&quot; loop=&quot;true&quot; scale=&quot;showall&quot; wmode=&quot;opaque&quot; devicefont=&quot;false&quot; bgcolor=&quot;#ffffff&quot; name=&quot;doc_404484710152533_object&quot; menu=&quot;true&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; salign=&quot;&quot; type=&quot;application/x-shockwave-flash&quot; align=&quot;middle&quot;  height=&quot;500&quot; width=&quot;100%&quot;&gt;&lt;/embed&gt;	&lt;/object&gt;	
</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/2247291351686320701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/documenting-a6-rest-api.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2247291351686320701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2247291351686320701'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/documenting-a6-rest-api.html' title='Documenting the A6 REST API'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-7960249104683367574</id><published>2009-08-03T12:31:00.002-04:00</published><updated>2009-08-03T12:32:38.820-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="rating"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Be wary of rating agencies</title><content type='html'>&lt;p&gt;Ruv Cohen, over at &lt;a href=&quot;http://www.elasticvapor.com/&quot;&gt;Elastic Vapor&lt;/a&gt;, proposed an interesting idea for a &lt;a href=&quot;http://www.elasticvapor.com/2009/07/cloud-service-rating-system.html&quot;&gt;Cloud Service Rating Agency&lt;/a&gt;. The idea was further defined as a &quot;Cloud Performance Ability (CPA) that estimates it&#39;s ability to meet certain service levels&quot;; similar in intent to &lt;a href=&quot;http://en.wikipedia.org/wiki/Standard_&amp;amp;_Poor&#39;s&quot;&gt;Standard &amp;amp; Poor&#39;s&lt;/a&gt; Claims-Paying Ability rating for an insurance provider explained as the &quot;financial capacity to meet its insurance obligations&quot;.&lt;/p&gt;&lt;p&gt;I love the concept of some standard, some metric that allows us all to look at a complex issue and agree what we&#39;re looking at, but there are a few problems:&lt;/p&gt;&lt;ul&gt;  &lt;li&gt;Metrics and ratings hide nuance, by design, which may be a relevant factor in your personal evaluation of a provider&lt;/li&gt;  &lt;li&gt;Every single rating agency has shown themselves vulnerable to the introduction of complex artefacts - look at what the introduction of CDO&#39;s ushered in and how credit scoring behaved&lt;/li&gt;  &lt;li&gt;Most rating agencies are for-profit entities, which means that while integrity is a priority in their branding, it is almost certainly not the topmost priority in their business objectives&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;(more issues with credit rating agencies can be found on &lt;a href=&quot;http://en.wikipedia.org/wiki/Credit_rating_agency#Criticism&quot;&gt;wikipedia&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;Now, before you think I pick on rating agencies unfairly, other public trusts (such as public audit firms) have suffered from conflict of interest problems, that have led to bad decision making (Arthur Andersen&#39;s involvement in Enron is a canonical &lt;a href=&quot;http://en.wikipedia.org/wiki/Enron_scandal#Financial_audit&quot;&gt;example&lt;/a&gt; and one of the reasons for the existence of &lt;a href=&quot;http://en.wikipedia.org/wiki/Sarbanes-Oxley_Act&quot;&gt;Sarbanes-Oxley&lt;/a&gt; legislation).&lt;/p&gt;&lt;p&gt;So bottom line, if you establish for-profit providing rating services, ultimately the integrity (intentionally or otherwise) will come into question.&lt;/p&gt;&lt;p&gt;Experience has also taught us that self-administered assessments - unless exceptionally detailed - are at best somewhat informative, at worst theatre (the early days of PCI-DSS come to mind).&lt;/p&gt;&lt;p&gt;If we were to build a Cloud Service Rating Agency, what we would really need is an independent, non-profit entity, something like the North American Electric Reliability Corporation (&lt;a href=&quot;http://en.wikipedia.org/wiki/North_American_Electric_Reliability_Corporation&quot;&gt;NERC&lt;/a&gt;). An entity with claws and a focus on assurance, so while I agree with James Urquhart that &lt;a href=&quot;http://news.cnet.com/8301-19413_3-10296370-240.html?tag=mncol;title&quot;&gt;data is not electricity&lt;/a&gt;, I think it&#39;s an interesting industry to draw lessons from.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/7960249104683367574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/be-wary-of-rating-agencies.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7960249104683367574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7960249104683367574'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/be-wary-of-rating-agencies.html' title='Be wary of rating agencies'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-7012940727057013549</id><published>2009-08-03T00:12:00.002-04:00</published><updated>2009-08-08T19:54:08.823-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="auditors"/><category scheme="http://www.blogger.com/atom/ns#" term="business"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="eXtensible Security Reporting Language"/><category scheme="http://www.blogger.com/atom/ns#" term="ponderings"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><category scheme="http://www.blogger.com/atom/ns#" term="XSRL"/><title type='text'>Some thoughts for addressing the Assurance component of A6</title><content type='html'>&lt;p&gt;The &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html&quot;&gt;A6 API&lt;/a&gt; is a security stack designed to provide Audit, Assertion, Assessment, and Assurance capabilities. There&#39;s one problem, providing assurance can&#39;t be done by machines alone - you need a human element, one that stands up and says &quot;these results are true and good&quot;. Outside of wild notions about black box mechanisms and trusted computing, I&#39;m hard pressed to find a technology solution to achieve this. What we really need is human participation in the stack, but the difficult part about humans is that we all have our own unique perspective on what is or isn&#39;t accurate, what&#39;s correct and ultimately how one defines security.&lt;/p&gt;
&lt;p&gt;What we need is a standardized way of reporting on complex concepts dealt with in security assessments and audits. If we had a standard security reporting language, we could reduce variation in security reporting and improve interpretability. We can look to financial reporting for an approach.&lt;/p&gt;
&lt;p&gt;In financial reporting there are two parts to the process, one is the assertion and the other assurance - one done by the public company and the other done by a public audit company. The public company says, we have X million dollars of this and that, the public audit company confirms that it is indeed true.&lt;/p&gt;
&lt;p&gt;Ofcourse, we all know that financial reports are subject to manipulation and there&#39;s always some grey area in what a term means, this is further compounded by the various forms financial reporting is published (human readable for sure, but set in any order and dressed up in many different ways).&lt;/p&gt;
&lt;p&gt;To address this, the International Accounting Standards Board (&lt;a href=&quot;http://en.wikipedia.org/wiki/International_Accounting_Standards_Board&quot;&gt;IASB&lt;/a&gt;) issued a standard known as International Financial Reporting Standards (&lt;a href=&quot;http://en.wikipedia.org/wiki/International_Financial_Reporting_Standards&quot;&gt;IFRS&lt;/a&gt;) which has a taxonomy defining terms and for situations where a term is not defined, the new term can be described from atomic components and concepts within the taxonomy. There&#39;s a standard known as an eXtensible Business Reporting Language (&lt;a href=&quot;http://en.wikipedia.org/wiki/XBRL&quot;&gt;XBRL&lt;/a&gt;) which allows for the clear meaning of financial numbers to be articulated in a way that is both machine readable but also IFRS compliant.&lt;/p&gt;
&lt;p&gt;Here&#39;s a snippet of XBRL (reporting on Operating Income, Administrative Expenses, Operating Expenses):&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&amp;lt;ifrs-gp:OtherOperatingIncomeTotalFinancialInstitutions contextRef=&quot;J2004&quot; decimals=&quot;0&quot; unitRef=&quot;EUR&quot;&amp;gt;38679000000&amp;lt;/ifrs-gp:OtherOperatingIncomeTotalFinancialInstitutions&amp;gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;lt;ifrs-gp:OtherAdministrativeExpenses contextRef=&quot;J2004&quot; decimals=&quot;0&quot; unitRef=&quot;EUR&quot;&amp;gt;35996000000&amp;lt;/ifrs-gp:OtherAdministrativeExpenses&amp;gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;lt;ifrs-gp:OtherOperatingExpenses contextRef=&quot;J2004&quot; decimals=&quot;0&quot; unitRef=&quot;EUR&quot;&amp;gt;870000000&amp;lt;/ifrs-gp:OtherOperatingExpenses&amp;gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&amp;nbsp;&amp;nbsp; &amp;lt;ifrs-gp:OtherOperatingIncomeTotalByNature contextRef=&quot;J2004&quot; decimals=&quot;0&quot; unitRef=&quot;EUR&quot;&amp;gt;10430000000&amp;lt;/ifrs-gp:OtherOperatingIncomeTotalByNature&amp;gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;If we had an IT Security Reporting standard similar to XBRL, which requires detailed exposure of information and provided clear definitions of terms, cloud providers could self-issue reports that while open to manipulation, become that much harder to subvert - let&#39;s call it eXtensible Security Reporting Language (XSRL). With an XSRL report, we&#39;d all use consistent terms and consistent inputs&lt;/p&gt;
&lt;p&gt;The three big challenges with the XSRL concept are:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;It&#39;s perfectly fine (in fact expected) for a public company to disclose their finances, but the same cannot be said of security vulnerabilities or perimeter defences (even though I&#39;m a strong believer in Shannon&#39;s maxim or Kirchoff&#39;s principle, it&#39;s important to understand that the maxim does not advocate broadcasting details, but rather assuming the enemy will learn them and that the knowledge should not make them a more effective attacker).&lt;/li&gt;

  &lt;li&gt;If you lie in a financial statements, you go to jail (usually) - if you lie in a security report (as long you don&#39;t breach &lt;a href=&quot;http://en.wikipedia.org/wiki/Sarbanes-Oxley_Act#Sarbanes-Oxley_Section_404:_Assessment_of_internal_control&quot;&gt;section 404 of Sarbanes Oxley&lt;/a&gt; or equivalent), you&#39;ll probably just get your hand slapped (or bad press).&lt;/li&gt;

  &lt;li&gt;Most security experts disagree on some aspect of security - financial reporters have &lt;a href=&quot;http://en.wikipedia.org/wiki/International_Financial_Reporting_Standards&quot;&gt;IFRS&lt;/a&gt; (International Financial Reporting Standards) - so it would be a lot of work to get people to agree on a canonical definition of what constitutes secure and security.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;That said, I still think we should try, it&#39;s hard, but it will be worth it - A6 could work without it, but I think we need to need to bring a formalism and maturity to security reporting that doesn&#39;t exist now, something akin to what financial auditors have today (Lehman Brothers and the like aside).&lt;/p&gt;&lt;br /&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/7012940727057013549/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/some-thoughts-for-addressing-assurance.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7012940727057013549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7012940727057013549'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/some-thoughts-for-addressing-assurance.html' title='Some thoughts for addressing the Assurance component of A6'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-1419679822489210712</id><published>2009-08-02T19:37:00.004-04:00</published><updated>2009-08-08T12:27:41.069-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="auditors"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully (are we there yet?)</title><content type='html'>&lt;p&gt;I&#39;ve been working on the A6 API for the past week and I&#39;m certain Mrs IronFog is wondering when I might be done (she&#39;s graciously been giving up about two hours of quality time each night - something I am immensely appreciative of).&lt;/p&gt;
&lt;p&gt;A6 stands for The Audit, Assertion, Assessment, and Assurance API (a term coined by &lt;a href=&quot;http://twitter.com/csoandy&quot;&gt;@CSOAndy&lt;/a&gt; via Chris Hoff&#39;s &lt;a href=&quot;http://www.rationalsurvivability.com/blog/?p=1177&quot;&gt;Rationale Survivability&lt;/a&gt;), so I figured I would know if I was done when I could put a check mark next to each aspect of the 6 A&#39;s (this feels like the start of a buffer overflow joke).&lt;/p&gt;
&lt;p&gt;So here we go:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Audit - Check - we have &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html&quot;&gt;/ssapi/compliance/&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Assertion - Check - we have &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_28.html&quot;&gt;/ssapi/ISO27002/&lt;/a&gt; and &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_31.html&quot;&gt;/ssapi/environment/&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Assessment - Check - we have &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html&quot;&gt;/ssapi/element/xccdf/&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;And - Check (for the sake of completeness)&lt;/li&gt;

  &lt;li&gt;Assurance - sort-of, it&#39;s somewhat of an emergent or external property - I&#39;ll explain below&lt;/li&gt;

  &lt;li&gt;API - Check - we have /ssapi/&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ok, so 5.0 out of 6 is pretty good, but here&#39;s why I think we&#39;re complete enough to consider this a first draft. The terms Assertion ad Assurance are financial audit terms:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Assertions_(auditing)&quot;&gt;Assertion&lt;/a&gt; is a self-issued statement made by one party (the provider) to others (end users) about their state - such as &quot;I have a billion dollars in cash&quot; or &quot;we are secure&quot; - they&#39;re not validated by anyone else.&lt;/li&gt;

  &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Assurance_services&quot;&gt;Assurance&lt;/a&gt; is a validated statement, specifically validated by a trusted third party (like an audit firm) reviews the supporting facts behind an assertion and confirms they are true, have integrity and have the correct scope (or completeness)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Assertions are easy, anyone can make a statement about anything - that&#39;s what our stack does - however, we just have to trust that the statements are true and good.&lt;/p&gt;
&lt;p&gt;For assurance, we have three options:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Have some trusted mechanism (black box software in a tamperproof appliance) validate the information from the stack and issue a signed XML blob;&lt;/li&gt;

  &lt;li&gt;Get a third party auditor to validate the assertions issued by the stack and provide a formal sign-off; and&lt;/li&gt;

  &lt;li&gt;Review the information ourselves and see if we can spot inconsistencies (and then call &quot;liar-liar-combusting-pants&quot;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Barring perfectly trustable computing, we cannot provide true Assurance functions through technology alone - we can just make it easier to share what we know in an easily interpretable fashion.&lt;/p&gt;
&lt;p&gt;So basically, the stack as it stands, is structurally complete enough for a first draft release (which I&#39;ll start packaging up shortly). Ofcourse, there&#39;s still specifications, nuances, details and documentation to get done; I know other things will emerge as I review and cleanup what I&#39;ve done, but that will be iterative, not net new.&lt;/p&gt;&lt;br /&gt;
&lt;br /&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/1419679822489210712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/can-we-do-security-stack-api-restfully.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/1419679822489210712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/1419679822489210712'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/can-we-do-security-stack-api-restfully.html' title='Can we do the Security Stack API RESTfully (are we there yet?)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-2778125685900332392</id><published>2009-08-02T17:21:00.001-04:00</published><updated>2009-08-08T14:27:58.090-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="business"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="ponderings"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="value curve"/><title type='text'>The value curve for the Cloud and what it means to security</title><content type='html'>&lt;p&gt;&lt;i&gt;I&#39;m taking a small break from the &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html&quot;&gt;A6 API&lt;/a&gt; work I&#39;ve been doing. I&#39;ve been pondering about the business side of security as it applies to the cloud. Indirectly, this is the rationale for something like A6.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;This post is meant for business types, not my fellow cloud believers.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Recently my benevolent overlords sent me off for some training at a business school, now being a survivor of another business school, I was rather skeptical of what I might learn, but learn I did (to my surprise quite a few times). One of the topics covered was blue ocean strategy, succinctly described as (see &lt;a href=&quot;http://en.wikipedia.org/wiki/Blue_Ocean_Strategy&quot;&gt;Wikipedia&lt;/a&gt; for more details):&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;&lt;span style=&quot;font-family: sans-serif; font-size: 13px; line-height: 19px;&quot;&gt;&lt;i&gt;&quot;Blue oceans&lt;/i&gt;, in contrast, denote all the industries not in existence today—the unknown market space, untainted by competition. In blue oceans, demand is created rather than fought over. There is ample opportunity for growth that is both profitable and rapid. In blue oceans, competition is irrelevant because the rules of the game are waiting to be set. Blue ocean is an analogy to describe the wider, deeper potential of market space that is not yet explored&quot;&lt;/span&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;In practice this means, take something that exists today and modifying it&#39;s parameters to give the customer what they need while eliminating the attributes they don&#39;t care about. The canonical examples are Cirque Du Soleil, South Western Airlines and Formule 1 hotels, whom respectively, reinvisioned circus as theatre, airplanes as competing with buses and trains, and hotels being about a place to sleep and nothing more.&lt;/p&gt;
&lt;p&gt;The Blue Ocean concept is not without it&#39;s flaws, but it provides a number of interesting tools for analysing a market and potential new offerings. One of those tools is a value curve, a visual representation of what&#39;s important to the customer and how much the solution or product provides of that value. Here&#39;s an analysis of what&#39;s important to a consumer of breakfast cereal:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3801529064/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2500/3801529064_f719087f0b_m.jpg&quot; height=&quot;162&quot; width=&quot;240&quot; alt=&quot;Value Curve - Captain crunch and All-Bran&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The value curve isn&#39;t an analysis of which one is better, but rather what each product provides to a customer:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Captain Crunch - covered in sugar, low in fibre, sugar equals lots of calories and comes with the standard decoder ring&lt;/li&gt;

  &lt;li&gt;All-Bran - taste is acceptable, loaded with fibre, very healthy and comes with a discount coupon for another box of cereal or orange juice - it comes in slightly larger quantities than it&#39;s sugar laden competitor.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Most competitors in the breakfast cereal market space will vary around taste, price or caloric content and promotional elements as they attempt to win customers from their competitors.&lt;/p&gt;
&lt;p&gt;Now imagine someone came up with a cereal that tastes great, lots of fibre, is healthier than a gym commercial and decided to forego coupons or decoder rings altogether (ok, its a simplified example) - more importantly, it doesn&#39;t require milk at all. The value curve would like something like this:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3800708931/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2569/3800708931_3776fff201_m.jpg&quot; height=&quot;145&quot; width=&quot;240&quot; alt=&quot;Value Curve - Captain crunch and All-Bran with competitor&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;That product, and the market it instantiated (having broken the inverse relationship between taste and healthy eating), would be an example of a blue ocean - they&#39;ve improved on certain aspects of the product (taste, fibre content and caloric count), got rid of things they don&#39;t think the customer values (decoder rings), reduce attributes that aren&#39;t as important (quantity) and introduced something completely new (no need for milk). While they are in reality competing with the other cereals, they also created an effectively new market (through technological innovation) that existing players would require a lot of repositioning to participate in, potentially at the cost of their existing customers.&lt;/p&gt;
&lt;p&gt;So what&#39;s this got to do with security and cloud computing. A few years ago (and still today), enterprise computing power, specifically that in data centres or collocated, looked like this:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3800709029/&quot;&gt;&lt;img src=&quot;http://farm4.static.flickr.com/3528/3800709029_158eec03ce_m.jpg&quot; height=&quot;142&quot; width=&quot;240&quot; alt=&quot;Value Curve - Currently in the data centre&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The curves shown here are averages for vendors like Dell, HP, Sun and IBM or collocation providers such as Rackspace, IBM, EDS or SunGard and also aggregates in the sense that a data centre includes a number of other vendors (EMC, Cisco, Juniper etc...). While some vendors into the data centre might be more cost effective, others may allow you to do more with less hardware; these are generalized representations.&lt;/p&gt;
&lt;p&gt;Then Amazon came along and said, let&#39;s compete and do this data centre/collocation thing differently - here&#39;s what you get:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/41246534@N02/3801529336/&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2526/3801529336_e590562216_m.jpg&quot; height=&quot;142&quot; width=&quot;240&quot; alt=&quot;Value Curve - data centre plus the cloud&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;The points of the new value curve for Cloud IaaS are:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;improved cost effectiveness (I know the jury is still out on that);&lt;/li&gt;

  &lt;li&gt;less control (for example governance) or ability to customize the environment - Amazon or public IaaS just aren&#39;t going to negotiate with you;&lt;/li&gt;

  &lt;li&gt;extremely fast deployment (minutes not days);&lt;/li&gt;

  &lt;li&gt;the flexibility to repurpose assets at will;&lt;/li&gt;

  &lt;li&gt;eliminating hardware that you own;&lt;/li&gt;

  &lt;li&gt;about the same security - let&#39;s assume that Amazon runs a relatively tight shop (they just don&#39;t tell us how in any great detail); and&lt;/li&gt;

  &lt;li&gt;and a new ability to buy computing power for only when you actually need it&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What this means to the business is you&#39;re dealing with a new beast, and because you value things like on-demand computing, elimination of CAPEX (the expense of owning assets), improved cost effectiveness and rapid deployment, you have to be willing to give certain things up. That&#39;s not to say you shouldn&#39;t expect, want or demand great security, it&#39;s just not under your control - more importantly, your security officers have to realize the same thing.&lt;/p&gt;
&lt;p&gt;That said, even if you don&#39;t control something, it&#39;s not unreasonable to ask the people that do to tell you what&#39;s going on - that way you have a meaningful way to assess the risk you&#39;re carrying - which is the reason I think &lt;a href=&quot;http://www.rationalsurvivability.com/blog/?p=1177&quot;&gt;A6&lt;/a&gt; is so important.&lt;/p&gt;
&lt;p&gt;(BTW, graphs were done with &lt;a href=&quot;http://group.com/applications/omnigraphsketcher/&quot;&gt;OmniGraphSketch&lt;/a&gt;, quite useful for creating arbitrary graphs).&lt;/p&gt;&lt;br /&gt;
&lt;br /&gt;

</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/2778125685900332392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/08/value-curve-for-cloud-and-what-it-means.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2778125685900332392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2778125685900332392'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/08/value-curve-for-cloud-and-what-it-means.html' title='The value curve for the Cloud and what it means to security'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm3.static.flickr.com/2500/3801529064_f719087f0b_t.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3530136812619288818</id><published>2009-07-31T22:45:00.004-04:00</published><updated>2009-08-01T00:29:03.031-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="SCAP"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully? (Part 5)</title><content type='html'>In &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html&quot;&gt;part 4&lt;/a&gt; of security stack API series, the /ssapi/element/xccdf/ URI was described, which allows elements in the environment to express their security status via &lt;a href=&quot;http://scap.nist.gov/specifications/xccdf/&quot;&gt;XCCDF&lt;/a&gt; (eXtensible Configuration Checklist Description Format). Now that we have a private part of the stack for data collection, we&#39;re going to jump back to the public stack to expose an anonymized aspect of the data.&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/registered/&lt;/b&gt; - a GET request will return the total number of elements registered with the aggregator, specifically, how many have uploaded a registration payload.&lt;/li&gt;&lt;li&gt;/&lt;b&gt;ssapi/environment/validated/&lt;/b&gt; - a GET request will return the total number of registered elements that have uploaded.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/freshness/new/&lt;/b&gt; - a GET request will return how many seconds have passed since any element updated their current XCCDF test result.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/freshness/old/&lt;/b&gt; - a GET request will return the age, in seconds, of the oldest current XCCDF test result for any element.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/freshness/mean/&lt;/b&gt;  - a GET request will return the mean age, in seconds, for all elements current XCCDF test result.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/freshness/median/&lt;/b&gt;  - a GET request will return the median age, in seconds, for all elements current XCCDF test result.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/freshness/@all&lt;/b&gt; - a GET request will return an XML blob containing a list of h(UUID4&#39;s) (the arbitrary handle that only the aggregator can connect back to a specific element - SHA-2 hashed along with a secret value to reduce likelihood of correlation) along with the age in seconds of the current XCCDF test result.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/score/current/@all&lt;/b&gt; - a GET request will return an XML blob containing a list of h(UUID4&#39;s) - described immediately above - along with the current XCCDF score value for each element.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/score/trend/@all&lt;/b&gt; - a GET request will return an XML blob containing a list of h(UUID4&#39;s) - described immediately above - along with a keyword attribute indicating if the score had &quot;improved&quot;, &quot;degraded&quot; or &quot;new&quot;. The new keyword is used in cases where a new XCCDF test package has been used (may mean the reporting element itself is new or the package has just changed).&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/environment/score/count/@all&lt;/b&gt; - a GET request will return an XML blob containing a list of h(UUID4&#39;s) - described two URI&#39;s above - along with a the total count of XCCDF test results uploaded.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;i&gt;Notes:&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;While all of the above URI&#39;s are public, none of them expose detailed information about the environment that will tell an attacker what defences they&#39;re up against or the specific state that any element is in.&lt;/li&gt;&lt;li&gt;The /&lt;i&gt;ssapi/environment/&lt;/i&gt; URI&#39;s provide anonymized data about the environment, that assuming the stack isn&#39;t lying about, tell the requester how broad the providers security efforts are, how much coverage they provide and how frequently they&#39;re examining or improving their environment and the elements therein. Ultimately though, it&#39;s up to the consuming organization to determine if the providers security efforts, as expressed through the stack, are sufficient.&lt;/li&gt;&lt;li&gt;Administrators with authenticated access to the private part of the stack, specifically the URI &lt;i&gt;/ssapi/element/xccdf/results/&lt;/i&gt; (described in &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html&quot;&gt;part 4&lt;/a&gt;), can view the actual results.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;@mhanco suggested we need to address message level security, I completely agree, but want to defer detailed XML payload structures (or other formats) until we&#39;ve got the broader structure mapped out.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;more to come...&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3530136812619288818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_31.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3530136812619288818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3530136812619288818'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_31.html' title='Can we do the Security Stack API RESTfully? (Part 5)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-1120772271864629395</id><published>2009-07-30T22:30:00.009-04:00</published><updated>2009-08-01T00:22:17.545-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="SCAP"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully? (Part 4)</title><content type='html'>(Mrs Iron Fog is awesome - she does my chores for me so I can blog)&lt;div&gt;
&lt;/div&gt;&lt;div&gt;(Part 3 is &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_29.html&quot;&gt;here&lt;/a&gt;)&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Using the previously described &lt;b&gt;/ssapi/register/&lt;/b&gt; an element can push up information about their security state. This data is considered private and wouldn&#39;t be exposed via the public part of the stack - aggregated or sanitized versions of it might be, but not in its as is form, some of the data could result in damaging information leakage.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;In this section we start using another SCAP element,  The eXtensible Configuration Checklist Description Format (&lt;a href=&quot;http://scap.nist.gov/specifications/xccdf/&quot;&gt;XCCDF&lt;/a&gt;)&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an element can POST the results of a configuration check with an XML XCCDF result blob.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/&lt;/b&gt; - an administrative entity can GET a list of elements that have provided test results.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/@all&lt;/b&gt; - an administrative entity can GET a list of all available test results for all elements (with URI, date and test type).&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an administrative entity can GET the list of recent XCCDF test results, an XML blob is returned with enumerated URI, date and test type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: normal;&quot;&gt;&lt;/span&gt;/ssapi/element/xccdf/results/current/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an administrative entity can GET the most recent results from a configuration check. If the original element attempts a GET, an error message is returned (prevents information leakage). &lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/00000001/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an administrative entity can GET a specific prior result from a configuration check - exact URI will be provided by the &lt;i&gt;/ssapi/element/xccdf/results/?&amp;lt;uuid4&amp;gt;&lt;/i&gt; query.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/current/score/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an administrative entity can GET the XCCDF standard score from the most recent configuration check. &lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/element/xccdf/results/00000001/score/?&amp;lt;uuid4&amp;gt;&lt;/b&gt; - an administrative entity can GET the XCCDF standard score from a specific prior configuration check&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Some additional thoughts:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;elements should be able to upload security information, but not read it. This prevents a malicious entity on the element interrogating the stack aggregator for useful information.&lt;/li&gt;&lt;li&gt;Within the private part of the stack, there should be URI&#39;s that are access restricted to all but high privilege users.&lt;/li&gt;&lt;li&gt;Again, none of the above is published to the outside world&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Next, how to express this information to the public stack without giving the game away...&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;(minor typo fixed - July 31, 2009)&lt;/span&gt;
&lt;/div&gt;&lt;div&gt;&lt;i&gt;(fixed incorrect escaping on non-HTML tags)&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/1120772271864629395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/1120772271864629395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/1120772271864629395'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_30.html' title='Can we do the Security Stack API RESTfully? (Part 4)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-8446328732441403980</id><published>2009-07-29T23:05:00.006-04:00</published><updated>2009-07-30T22:38:44.786-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="CPE"/><category scheme="http://www.blogger.com/atom/ns#" term="SCAP"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully? (Part 3)</title><content type='html'>&lt;div&gt;(&lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html&quot;&gt;Part 1&lt;/a&gt; and &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_28.html&quot;&gt;Part 2&lt;/a&gt; are here respectively)&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;(a bit of a shorter post tonight as I was on nephew duty)&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;So far, I&#39;ve been focusing on organization elements of the stack, by that I mean things about the provider, specifically policies and compliance.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;We&#39;re going to start moving into the stack space that deals with individual elements, and where we start using bits of SCAP. Before we can start considering individual elements, we need a way to register an element:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/registration/&lt;/b&gt; - invoked by a POST on an XML payload containing &lt;a href=&quot;http://cpe.mitre.org/&quot;&gt;Common Platform Enumeration&lt;/a&gt; data, IP address and other unique network identifiers (for example a FQDN - thinking MAC addresses are a problem given network segmentation) returns a UUID and new credentials to be cached by the POSTer. The POSTing element was provided with a limited use credential for the initial registration (consider this an authentication boorstrap). If another element tries to register the same IP address or other unique identifier  -&lt;i&gt; note, after having examined CPE, I think my &lt;/i&gt;&lt;a href=&quot;http://twitter.com/ironfog/statuses/2909012101&quot;&gt;&lt;i&gt;comment&lt;/i&gt;&lt;/a&gt;&lt;i&gt; earlier this morning about self-asserted URI&#39;s into a namespace (&quot;I am 10.45.0.34&quot; &amp;amp; &quot;I am http://www.f5.com/products/...&quot;) was slightly off, so I&#39;m changing course a little.&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/registration/&lt;uuid4&gt;&lt;/b&gt; - invoked by an authenticated DELETE will unregister the element. Invoked by an authenticated PUT will allow the element to update previously provided data including the network identifier, if and only if that identifier hasn&#39;t been claimed by anyone else (if it has, an error message is returned).&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;The registration payload could look like this:&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;&amp;lt;registration&amp;gt;&lt;/div&gt;&lt;div&gt; &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt; &lt;/span&gt;&amp;lt;networkID&amp;gt;&lt;/div&gt;&lt;div&gt;  &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;  &lt;/span&gt;&amp;lt;IP address=&quot;10.45.0.24&quot; /&amp;gt;&lt;/div&gt;&lt;div&gt;  &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;  &lt;/span&gt;&amp;lt;FQDN name=&quot;grump1234.xyz.corp&quot; /&amp;gt;&lt;/div&gt;&lt;div&gt; &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt; &lt;/span&gt;&amp;lt;/networkID&amp;gt;&lt;/div&gt;&lt;div&gt; &lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt; &lt;/span&gt;&amp;lt;cpe name=&quot;cpe:/o:sun:solaris:5.10&quot; /&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;lt;/registration&amp;gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;i&gt;note: I&#39;m being lazy, this is not fully formed XML, pseudo XML at best&lt;/i&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;A few more thoughts:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;this is a RESTful API, which implies web servers, but I don&#39;t think we want to start running embedded web servers all over the place (not a fan of increasing attack surfaces). So most elements in an environment would push information to a purpose built aggregator.&lt;/li&gt;&lt;li&gt;Much of the data that could be returned by the stack is not for public (or valued customer) consumption. That means part of this stack will be a generalized security information collection and sharing mechanism - I want to avoid repeating the wheel. The other part, and I think this is the most important thing we can accomplish, the stack provides cloud users with a tool and shared meaning to be confident in their cloud providers security.&lt;/li&gt;&lt;li&gt;I haven&#39;t said anything about authenticating access to the stack or access restrictions to parts of the stack - I&#39;m thinking &lt;a href=&quot;http://oauth.net/&quot;&gt;OAuth&lt;/a&gt; for the former and something akin to SNMP&#39;s public/private for the access restrictions (keep it simple for now, refine in v2.x).&lt;/li&gt;&lt;li&gt;The unique network identifier used by the element should be strongly bound to the element, that is we need some way to prevent impersonation of one element by a malicious element - client side x509 certs are the easy answer but impose deployment overhead, will need to think more on this.  Once registration is complete, the unique network identifier must be bound to the issued credentials and UUID.&lt;/li&gt;&lt;li&gt;I&#39;ve avoided discovery for now, you could use a trusted feed from NMAP to populate some of your data set, but you still need to register the element for future conversation, although I suppose one feature implementation could be an agentless aggregator that also provides element security state using remote scanning.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;Thanks to &lt;a href=&quot;http://twitter.com/lmacvittie&quot;&gt;@lmacvittie&lt;/a&gt; for some thoughts on unique identifiers which led to a discussion on auto-discovery and other goodness - the bad news is that the security stack has a lot more work to be put in, so maybe &lt;a href=&quot;http://twitter.com/Beaker/&quot;&gt;the squirrel&lt;/a&gt; won&#39;t get his Friday wish, the goods news is Monday is a public holiday, so lots of thinking time this long weekend. &lt;div&gt;
&lt;/div&gt;&lt;div&gt;more to follow...&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;i&gt;note: made some minor changes post a reread - removed incorrect reference to shared secret and revised URI to include UUID.&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/8446328732441403980/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_29.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/8446328732441403980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/8446328732441403980'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_29.html' title='Can we do the Security Stack API RESTfully? (Part 3)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-6362466713855273863</id><published>2009-07-28T20:31:00.008-04:00</published><updated>2009-07-29T00:48:12.239-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully? (Part 2)</title><content type='html'>the &lt;a href=&quot;http://twitter.com/Beaker/statuses/2883980801&quot;&gt;Uber-Squirrel demanded I be done by TGIF&lt;/a&gt;...&lt;div&gt;
&lt;/div&gt;&lt;div&gt;part one is &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html&quot;&gt;here&lt;/a&gt;; background detail is &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/security-stack-could-work-dont-worry.html&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;This section deals with expressing the actual policies of the provider organization, obviously a complex information set to represent, so this will require a lot more detail and thinking. I think it&#39;s best that we use ISO27002 (the next version of ISO17799) given that it&#39;s the root standard from which all other compliance standards are derived; additionally &lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/@all &lt;/span&gt;- returns an XML payload with values and freshness for all descendants&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;The following list enumerates the eleven clauses:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/1/&lt;/b&gt; - Security Policy&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/2/&lt;/b&gt; - Organizing Information Security&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/3/&lt;/b&gt; - Asset Management&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/4/&lt;/b&gt; - Human Resources Security&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/5/&lt;/b&gt; - Physical and Environmental Security&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/6/&lt;/b&gt; - Communications and Operations Management&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/7/&lt;/b&gt; - Access Control&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/8/&lt;/b&gt; - Information Systems Acquisition, Development and Maintenance&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/9/&lt;/b&gt; - Information Security Incident Management&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/10/&lt;/b&gt; - Business Continuity Management&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/ISO27002/11&lt;/b&gt;&lt;b&gt;/&lt;/b&gt; - Compliance&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;One can iterate through the provider&#39;s policies and security behaviours as follows:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/1/&lt;/span&gt; - returns a list of available security categories for the clause, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/1/1/ - &lt;/span&gt;returns a list of available controls within a given category&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/1/1/1/ - &lt;/span&gt;returns a list of available control statements&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/1/1/1/@all&lt;/span&gt; - returns an XML payload with values and freshness for the control set&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/2/@all&lt;/span&gt; - returns an XML payload with values and freshness for all descendants of the clause&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;An XML fragment from &lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold; &quot;&gt;/ssapi/ISO27002/1/1/1/@all &lt;/span&gt;might look like this:&lt;/div&gt;&lt;div&gt;
&amp;lt;standard name=&quot;ISO27002:2005&quot;&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt; &lt;/span&gt;&amp;lt;clause number=&quot;1&quot;&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;  &lt;/span&gt;&amp;lt;category number=&quot;1&quot;&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;   &lt;/span&gt;&amp;lt;control number=&quot;1&quot; freshness=&quot;2009-29-02&quot;&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;summary&amp;gt;&quot;We are compliant because of...&quot; &amp;lt;/summary&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;state &amp;gt;implemented&amp;lt;/state&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;details&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;     &lt;/span&gt;&quot;xyz cloud corp uses a multi-tiered approach to...&quot;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;/details&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;reference&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;     &lt;/span&gt;http://www.xyz.com/policies/policy1.pdf&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;/reference&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;reference&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;     &lt;/span&gt;http://www.xyz.com/policies/policy2.pdf&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;    &lt;/span&gt;&amp;lt;/reference&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;   &lt;/span&gt;&amp;lt;/control&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt;  &lt;/span&gt;&amp;lt;/category&amp;gt;
&lt;span class=&quot;Apple-tab-span&quot; style=&quot;white-space:pre&quot;&gt; &lt;/span&gt;&amp;lt;/clause&amp;gt;
&amp;lt;/standard&amp;gt;
&lt;/div&gt;
&lt;div&gt;Some additional thoughts on the Security Stack API (or A6):&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;this API should be a generic interface for exposing both technical and organizational security information&lt;/li&gt;&lt;li&gt;the API is a standardized framework for exposing information and while it won&#39;t replace existing approaches, it will ease users ability to ask for that information and get an answer that matches their expectations&lt;/li&gt;&lt;li&gt;vendors will populate data to different parts of the stack, vendors that can&#39;t respond to certain parts of the API (for example, a Cisco ASA firewall can&#39;t opine on your policy for asset management) shouldn&#39;t be considered non-compliant&lt;/li&gt;&lt;li&gt;there exists a need for an aggregator entity that collects stack information from distributed elements (maybe a firewall here, an IPS there, a compliance system somewhere else)&lt;/li&gt;&lt;li&gt;the stack should not explicitly disclose information about the security state of system (at least not to guests in the environment or the unwashed masses), that&#39;s pointedly unsafe. However, the stack may unintentionally leak information that could be useful to an attacker. For example, the stack should never say - &quot;I&#39;m not patched against CVE-2012-435&quot;, but it may say &quot;my patching policy is within 4 hours&quot;, which tells an attacker their window of opportunity - we&#39;ll have to think about this topic a lot more.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;more to come tomorrow...&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/6362466713855273863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_28.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6362466713855273863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6362466713855273863'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully_28.html' title='Can we do the Security Stack API RESTfully? (Part 2)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-7311051747016223102</id><published>2009-07-27T22:35:00.006-04:00</published><updated>2009-07-28T00:05:07.263-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="A6"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="stack"/><title type='text'>Can we do the Security Stack API RESTfully? (Part 1)</title><content type='html'>Been &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/can-we-api-more-than-vulnerability.html&quot;&gt;thinking&lt;/a&gt; about the Security Stack API (&lt;a href=&quot;http://www.rationalsurvivability.com/blog/?p=1177&quot;&gt;A6&lt;/a&gt;), wondering if we can do as a RESTful API, something about the URI structuring appeals to me and I think relates well to the many different sections one would need to cover, here&#39;s part the first blob:&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/&lt;/b&gt; - returns a list of compliance regimes the provider operates under and their &lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/1/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/1/@all&lt;/b&gt; - returns an XML payload with values and freshness for all descendants&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/1/1/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/1/2/1/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/PCI/1/2/1/a&lt;/b&gt; - returns answer and freshness attribute&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/HIPAA/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;li&gt;/&lt;b&gt;ssapi/compliance/HIPAA/@all&lt;/b&gt; - returns an XML payload with values and freshness for all descendants&lt;/li&gt;&lt;li&gt;&lt;b&gt;/ssapi/compliance/SOX/&lt;/b&gt; - returns a list of sub-elements for the standard, immediate descendants only&lt;/li&gt;&lt;/ul&gt;Working on layout for policy expression, will share tomorrow.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/7311051747016223102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7311051747016223102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/7311051747016223102'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-do-security-stack-api-restfully.html' title='Can we do the Security Stack API RESTfully? (Part 1)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3720168231743931031</id><published>2009-07-26T23:53:00.006-04:00</published><updated>2009-08-08T12:25:16.616-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="audit"/><category scheme="http://www.blogger.com/atom/ns#" term="auditors"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="cloudcamp"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Can we API more than vulnerability scans and change management?</title><content type='html'>I thought a bit more about Chris Hoff&#39;s idea of using something like &lt;a href=&quot;http://scap.nist.gov/index.html&quot;&gt;SCAP&lt;/a&gt; to provide a &lt;a href=&quot;http://www.rationalsurvivability.com/blog/?p=1177&quot;&gt;Security Stack API&lt;/a&gt; (to be honest, at first pass I thought he was only talking about vulnerability scanning, but it&#39;s quite clearly more than that)&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;At last week&#39;s local &lt;a href=&quot;http://www.cloudcamp.com/?page_id=997&quot;&gt;CloudCamp&lt;/a&gt;, &lt;a href=&quot;http://blogs.sun.com/gbrunett/&quot;&gt;Glen Brunette&lt;/a&gt; lead a session at which we talked about security for IaaS (Infrastructure as a Service) providers. Initially the session started with validating the micro-kernel/hypervisor - either through review, placing it in hardware or providing some sort of integrity metric - but from there we evolved to something a little more useful.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Regardless of the technique, attesting to the integrity of the hypervisor, providing proof that hypervisor is secure, doesn&#39;t mean much in isolation. The hypervisor can be the equivalent of Fort Knox and it won&#39;t be secure if I can grab a disk from the storage network, clone the virtual machine or walk the server it was running on out the door.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;So, we need more than a way to expose security state of the virtual environment. What you really need is a way to attest on the security processes of the entire organization.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;In fact, I think I really don&#39;t want my cloud provider to tell anyone how patched or unpatched his platform is. What I want him to tell me is how compliant he is with his published security processes (and what his processes are). Processes like user account lifecycle management, logging, auditing, incident response, physical security and take your pick from your favourite ISO27001 derived compliance standard. &lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;I reread Chris Hoff&#39;s article on the security stack (love the diagram), but some of the comments by other readers are bothering me - one concentrates on the technical matters and the other again focuses on the &quot;brain in a jar&quot; problem. A lying API is possible but has a number of &lt;a href=&quot;http://ironfog.blogspot.com/2009/07/security-stack-could-work-dont-worry.html&quot;&gt;issues&lt;/a&gt; (audience, cost and risk) that mean you&#39;re either focusing on the technical aspects of security assessments (only part of the picture) or aren&#39;t willing to settle for anything less that a personal audit of the providers entire operation, which is antithetical to what cloud users want.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Ultimately for the die hard security professionals, they&#39;ll have to give up the desire to know 100% for sure about security - your business gave up that right when they decided to save money by heading into the cloud (part of the reduce activities in changing the value curve). There is no perfect and cost-effective method for you to determine that you haven&#39;t been tricked, so the API&#39;s will give you more transparency (into what is rather opaque right now), but eventually you&#39;re going to have to make a reasonable decision to trust and live with the risk of a lie.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;Why not? You do it already with your software vendors today.&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;div&gt;&lt;i&gt;note:&lt;/i&gt; While I think this API would provide results on demand, I don&#39;t think it should be expected to deliver real-time results - you can&#39;t put sensors on everything. During the session at CloudCamp we got to the need for periodic audits of the providers security processes and that periodic should probably be monthly. If this sounds unreasonable, keep in mind Certificate Authorities can have weekly assessments (they rotate through all the major security domains, with full scale audits happening less frequently). I think major cloud providers are becoming as important as certificate authorities are. Ultimately it&#39;s up to the provider to decide the frequency, it&#39;s just that we should expect them to reveal the freshness of the audit findings.&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3720168231743931031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-api-more-than-vulnerability.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3720168231743931031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3720168231743931031'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/can-we-api-more-than-vulnerability.html' title='Can we API more than vulnerability scans and change management?'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3721737764606134933</id><published>2009-07-26T18:05:00.006-04:00</published><updated>2009-07-26T20:36:11.278-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="cloudcamp"/><category scheme="http://www.blogger.com/atom/ns#" term="compliance"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>The security stack could work, don&#39;t worry about the rabbit hole</title><content type='html'>&lt;div style=&quot;text-align: justify;&quot;&gt;I attended my first cloud camp and came to the incorrect conclusion that there are those that understand the security issues in the cloud and those who don&#39;t understand the cloud.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I say I came to the incorrect conclusion because I realized that the second catgegory is not of the uninformed, but rather because there are those folks that just see the cloud as a utility, a tool, and if the tool works as promised, they don&#39;t really care about the inner workings until they faced with a problem.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;The challenge tends to come in the form of a compliance person or a  security officer being a proud member of the RSFTPB (Royal Society For The Provention of Business). The security or compliance expert starts asking hard questions and the  tool user goes &quot;um... they have the lock thing on the browser&quot;. Which,  to me, is the right (obviously wrong) answer; why should the tool user have a good answer?&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;The problem arises when the expert tries to investigate the utility and gets at best a high level security whitepaper, at worst at bullet point feature list.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;&lt;a href=&quot;http://www.rationalsurvivability.com/blog/?p=1177&quot;&gt;Chris Hoff&lt;/a&gt; recently posted of building a standardized security assessment API, a way for cloud providers to express the security state of their environment. Some &lt;a href=&quot;http://twitter.com/myrcurial/status/2828115708&quot;&gt;rebutted&lt;/a&gt; with concerns of how do you know if the API is letting you talk to the real target of assessment? Short answer is ofcourse you don&#39;t (an evil provider can run the API inside a fully hardened virtual instance or just straight out return false answers)?, but I think that kind of misses the point, for three reasons.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Firstly, it&#39;s really about addressing the concerns posed to our tool user population, who don&#39;t know to ask these type of questions. As long as the system has the appearance of correctness and provides the right answers, then that&#39;s enough for the tool user and should appease the compliance kings (we know this from past experience with nearly total acceptance of the output of vulnerabilit scanners).&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Second, if you&#39;re going to fake the results, you&#39;re going to a lot of effort to build a lying stack that will provide reasonable answers that are consistent, persistent and have an appearance of integrity. I&#39;m fairly certain cost issues would win out and it would be cheaper to buy a stack or assemble from COTS components that craft your own.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;
&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;Third, lies only work if you don&#39;t get caught - while it will be small solace for the first victims, it will also be obvious to everyone that something wasn&#39;t right and eventually the truth would come out. Admittedly this is not a desirable, but it would not be dissimilar to the poor practices full disclosure policies were designed to overcome.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;text-align: justify;&quot;&gt;I think if you give the tool users real and easily accessible answers, in formats they can use (XML and PDF come to mind), we can make 80% of the cloud naysayers happy.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3721737764606134933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/07/security-stack-could-work-dont-worry.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3721737764606134933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3721737764606134933'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/07/security-stack-could-work-dont-worry.html' title='The security stack could work, don&#39;t worry about the rabbit hole'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-2995771873646901615</id><published>2009-06-17T12:35:00.011-04:00</published><updated>2009-08-01T17:58:16.001-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="document security"/><category scheme="http://www.blogger.com/atom/ns#" term="federated services"/><category scheme="http://www.blogger.com/atom/ns#" term="google"/><category scheme="http://www.blogger.com/atom/ns#" term="google wave"/><title type='text'>Google Wave - how do I secure your document when it&amp;#39;s the cloud?</title><content type='html'>A few days ago I got a change to sit down and watch the entire hour of the Google IO video on the early release of Google Wave. If you haven&#39;t watched it, here it is (suggestion, do it offer lunch, it&#39;s long but worth the watch).

&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;






 &lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/v_UyVmITiYQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1&quot;&gt;






 &lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;






 &lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt;






 &lt;embed src=&quot;http://www.youtube.com/v/v_UyVmITiYQ&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=en&amp;amp;feature=player_embedded&amp;amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;



&lt;/object&gt;

If you don&#39;t feel like watching, here&#39;s a &lt;a href=&quot;http://googleblog.blogspot.com/2009/05/went-walkabout-brought-back-google-wave.html&quot;&gt;link&lt;/a&gt; to the product team&#39;s blog posting.

To summarize, Wave is a collaborative real time editing environment (think Wiki meets subethaedit meets IRC meets CVS) delivered via the browser (assuming yours supports HTML5). I can invite people in to a wavelet (a document or object on Wave) and we can work together. As a collaboration tool, this takes sharepoint out behind the woodshed.

What really interested me was the part about federated wave servers - in a nutshell, Google wants to make Wave as popular as email and expects (or hopes) that organizations will setup their own wave servers, so they&#39;re open licensing/sourcing the whole stack, protocol and concept. The interaction between the federated servers is just too cool to watch - little chunks of document flying all over the place - being digitally signed, delivered over encrypted channels, synching perfectly so everyone can see the same thing at the same time.

&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://8477446762733596122-a-waveprotocol-org-s-sites.googlegroups.com/a/waveprotocol.org/wave-protocol/Home/federation_diagram.png?attredirects=0&amp;amp;auth=ANoY7cqRlmWKpIq90lleiiq8pi5RBXJVPQu8lbxA9DKM9ab1EMi243yx525ihHK5b_wp7gsdDqF3VGx0gfCoxuoMtIT93-ka6Yk3VqFOdcszeCNY6MlCPcTq0InAFDFEpVzW8jCeY6_kXeLbcpB4-Xs1_wr1Ayq8BX0bu_vC6w9ASJit4WdGq_WIzOQTNqBG_AL_P6CSoSVlLsybGSV6V4_jBYso5-mwuf8XilvrMvbNCOpGZKGOaP4%3D&quot; style=&quot;text-decoration: none;&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 367px; height: 256px;&quot; src=&quot;http://8477446762733596122-a-waveprotocol-org-s-sites.googlegroups.com/a/waveprotocol.org/wave-protocol/Home/federation_diagram.png?attredirects=0&amp;amp;auth=ANoY7cqRlmWKpIq90lleiiq8pi5RBXJVPQu8lbxA9DKM9ab1EMi243yx525ihHK5b_wp7gsdDqF3VGx0gfCoxuoMtIT93-ka6Yk3VqFOdcszeCNY6MlCPcTq0InAFDFEpVzW8jCeY6_kXeLbcpB4-Xs1_wr1Ayq8BX0bu_vC6w9ASJit4WdGq_WIzOQTNqBG_AL_P6CSoSVlLsybGSV6V4_jBYso5-mwuf8XilvrMvbNCOpGZKGOaP4%3D&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; It got me thinking, what happens if my employer has a wave server and I have a wave server at home (or use Google&#39;s Wave product):
&lt;ul&gt;  &lt;li&gt;Can I invite my home account into the document I&#39;m working on at work and continue editing when I get home?&lt;/li&gt;  &lt;li&gt;The document will now be in two places (sync&#39;d in glorious real-time)&lt;/li&gt;  &lt;li&gt;What happens if I quit/get fired - how does my employer remove that document from my Wave server?&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;...and then there&#39;s the normal stuff, like to companies working together, sharing information and all the ownership/security issues that come with it.&lt;/p&gt;Now granted, we&#39;re probably no worse off with email now (I can email work documents to my gmail account at will), but with a powerful tool like Wave, the sharing becomes continuous and real-time; the corporate firewall becomes a fine mesh and my documents are quite literally everywhere.

DRM&#39;s a nice answer (assuming it can be implemented), but it&#39;s somewhat antithetical to an open protocol and assumes that all participants honour the rights management request. Besides, DRM has never been very granular (its atomic tends to be the document or the song) and simple deletion seems wrong when it&#39;s a collaborative document between multiple participants.

Maybe the best we can for is legal agreements plus an honour driven deletion system that works along the lines of:
&lt;ul&gt;  &lt;li&gt;Party A asks Party B to drop all content generated by Party A&lt;/li&gt;  &lt;li&gt;Party B walks the current wavelet tree structure and nukes anything added by Party A&lt;/li&gt;  &lt;li&gt;Party B reports back to Party A on what it deleted&lt;/li&gt;  &lt;li&gt;Party A reminds Party B of it&#39;s legal obligations (pre-negotiated) and disappears in a puff of smoke&lt;/li&gt;&lt;/ul&gt;The two interesting properties are of an open rights management protocol are:
&lt;ul&gt;  &lt;li&gt;Healable data - Party B is now free to use the remaining elements of the wavelet (the stuff it provided) to rebuild the document with its own content (as much as you&#39;d like, you can&#39;t scrub the human mind, the ultimate anti-drm tool)&lt;/li&gt;  &lt;li&gt;Granular information protection - I can&#39;t actually stop stuff from going out, but at least I know where it lives and can demonstrate I took reasonable steps (short of seizing the other parties wave server) to protect my content.&lt;/li&gt;&lt;/ul&gt;One of the things an open rights management system presupposes (at least to me) is this notion of automatically negotiated (legal) agreements and policies between federated wave servers about how they will behave.</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/2995771873646901615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/06/google-wave-how-do-i-secure-your.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2995771873646901615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/2995771873646901615'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/06/google-wave-how-do-i-secure-your.html' title='Google Wave - how do I secure your document when it&amp;#39;s the cloud?'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-4382012708560663312</id><published>2009-06-09T22:08:00.011-04:00</published><updated>2009-06-10T22:30:41.861-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudbursting"/><category scheme="http://www.blogger.com/atom/ns#" term="defense-in-depth"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>OohRah! here come the security clouds</title><content type='html'>I&#39;m not sure what to make of this article, at first pass I thought it was somewhere between classic security &quot;re-invited here&quot; and solution seeking a problem, but I reread the article and on the second pass this piece got my attention: 
&lt;blockquote&gt;&lt;a href=&quot;http://cloudcomputing.sys-con.com/node/994396&quot;&gt;Cloud Computing: The Dawn of Maneuver Warfare in IT Security&lt;/a&gt;
A theoretical example of how maneuver IT security strategies could be use would be in responding to a  denial of service attack launched on DISA datacenter hosted DoD applications. After picking up a grossly abnormal spike in inbound traffic, targeted applications could be immediately transferred to virtual machines hosted in another datacenter.&lt;/blockquote&gt;
It&#39;s a nice idea of using on-demand infrastructure to outmanoeuvre your attackers (rather than fighting a war of attrition) a concept made great by the USMC, but the articles a little short of real world examples.

So it got me thinking, what defensive security activities can be improved by the application of cloud infrastructure (IaaS)? We&#39;ve got the (simple) use case of rerouting traffic to defend against a dDoS attack - but we already have that in the form of CDN (content distribution networks), although it would probably be noticeably cheaper given it&#39;s on-demand nature.

What about managing virus outbreaks, patch deployment and vulnerability detection?

&lt;span style=&quot;font-weight:bold;&quot;&gt;managing virus outbreaks&lt;/span&gt; - If I can scale my security infrastructure rapidly, I can scan my distributed filesystem and workstations, I can hunt down and remove infections - in theory I can scale my cloud rapidly enough to combat warhol-esque worms.

&lt;span style=&quot;font-weight:bold;&quot;&gt;patch deployment&lt;/span&gt; - if I need to force patches across my environment, I can deploy a swarm of servers that will connect to every server and workstation in my enterprise and force the patch down (after I&#39;ve spun up a multiple VM&#39;s to test/socialise the patch against my standard configurations).

&lt;span style=&quot;font-weight:bold;&quot;&gt;vulnerability detection&lt;/span&gt; - Scanning a class B sized network can take a while, but what if I can launch a few hundred servers and ask them to scan a less than a class C each, in parallel (note: this idea wasn&#39;t mine, credit to Richard at Enomaly) - I can get near-realtime vulnerability intelligence on my environment at relatively low cost. Running a few hundred EC2 servers for less than an hour is pretty cheap, especially if compared against buying a whole bunch of expensive scanning appliances (then again, there&#39;s nessus).

Here&#39;s the rub (actually two)

1) How do I coordinate this on-demand security infrastructure? how do I make sure work is evenyl shared? what about providing (domain) administrator credentials

2) Unless you&#39;re a highly distributed organization with multiple points-of-presence, you&#39;re biggest constraint for making using of IaaS from external providers (e.g. EC2) is bandwidth - granted, patches, vulnerability scans and virus detection aren&#39;t bandwidth intensive on their own, but there a chance your on-demand security infrastructure could overwhelm your not-so-scalable connection infrastructure. So here&#39;s my wild thought of the day, today you have peering points between major ISP&#39;s, service providers and backbone carriers - how long before enterprises will want to have peering points with EC2 and Savvis to make IaaS almost local?

&lt;span style=&quot;font-style:italic;&quot;&gt;side note:&lt;/span&gt; I recently read an article about &lt;a href=&quot;http://cio.co.nz/cio.nsf/depth/2AB2E3FA240C9113CC2574BE006CD563&quot;&gt;user provisioned hardware&lt;/a&gt;, when you add that to more remote work/work from home - maybe the connectivity problem goes away and the need for highly scalable security IaaS becomes more important - maybe the problem the solution has been looking for is &quot;how to I secure employees working form hundreds of different locations?&quot;

update: Jeff Barr from Amazon Web Services pinged me, apparently oeering with EC2 is doable - a little google-fu revealed Amazon uses &lt;a href=&quot;http://www.webhosting.info/news/1/aws-selects-equinixs-washington,-d.c.-data-center_0504050879.htm&quot;&gt;Equinix&lt;/a&gt; for peering.</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/4382012708560663312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/06/oohrah-hear-come-security-clouds.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/4382012708560663312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/4382012708560663312'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/06/oohrah-hear-come-security-clouds.html' title='OohRah! here come the security clouds'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-5194986823365956808</id><published>2009-04-23T21:11:00.011-04:00</published><updated>2009-04-24T08:07:53.786-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="hypervisor"/><category scheme="http://www.blogger.com/atom/ns#" term="not quite cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="VMSafe"/><category scheme="http://www.blogger.com/atom/ns#" term="VMWare"/><category scheme="http://www.blogger.com/atom/ns#" term="vSphere"/><title type='text'>Where&#39;s my VMSafe for VMSafe?</title><content type='html'>VMWare continues to tease with &lt;a href=&quot;http://www.networkworld.com/news/2008/091608-vmware-vmsafe.html&quot;&gt;VMSafe prototypes&lt;/a&gt;; while Reuven Cohen points out that vsphere isn&#39;t cloud computing (argue amongst yourselves about terms like &quot;private cloud&quot;), I like the idea of the ability to use the hypervisor to &lt;a href=&quot;http://www.vmware.com/technology/security/vmsafe/security_technology.html&quot;&gt;inspect the security state of the guest machines&lt;/a&gt;, but where&#39;s my API to confirm that the hypervisor is in a secure state?
&lt;blockquote&gt;VMsafe enables partners to build security solutions in the form of a virtual machine that can access, correlate and modify data to help control and protect:

* Memory and CPU. VMsafe provides introspection of virtual machine memory pages and CPU states.
* Networking. VMsafe enables filtering of network packets inside hypervisors,,as well as within the security virtual machine itself.
* Process execution. VMsafe provided in-guest, in-process APIs that enable complete monitoring and control of process execution.
* Storage. Guest virtual machine disk files can be mounted, manipulated and modified as they persist on storage devices.&lt;/blockquote&gt;
If the API that provides my security tools the ability to look inside guest machines doesn&#39;t allow me to confirm that it&#39;s executing in a secure state, how can I trust the output from the API.

It&#39;s the same old problem, if the someone shows up with a &lt;a href=&quot;http://bluepillproject.org/&quot;&gt;blue pill&lt;/a&gt;, any reliability assertion I can make from technology above is effectively meaningless. So really at the end of it all, I&#39;m just going to have to make an assumption that the stack is secure driven by how much I trust the provider and the compensating controls on the underlying host (anti-X, ACL&#39;s etc...) knowing that there will always be (with current state tech) no way to defend against a nested VM attack were the true hypervisor is malicious.

&lt;span style=&quot;font-style:italic;&quot;&gt;Speculation:&lt;/span&gt; Would full hardware virtualization solve this problem? Probably not unless it were completely locked in its behaviour (which would probably make it rather less than useful). I think the only way we&#39;re going to solve the nested VM security problem is a process outside of the virtualization stack, with a read-only monitoring port that can make assertions about the integrity of the virtualization stack (but that&#39;s just a WAG, I&#39;m clearly no computer scientist).

&lt;span style=&quot;font-style:italic;&quot;&gt;and now for a moment of pointless FUD: &lt;/span&gt;Here&#39;s a funny thought, if VMSafe allows me to inspect the &quot;memory pages and CPU states&quot; of a guest OS - does that mean I can get access to the encryption keys and other sensitive information inside the guest VMs?</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/5194986823365956808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/04/wheres-my-vmsafe-for-vmsafe.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/5194986823365956808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/5194986823365956808'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/04/wheres-my-vmsafe-for-vmsafe.html' title='Where&#39;s my VMSafe for VMSafe?'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-3366445887164187519</id><published>2009-04-23T07:44:00.001-04:00</published><updated>2009-04-23T21:11:10.209-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="IBM"/><category scheme="http://www.blogger.com/atom/ns#" term="news"/><category scheme="http://www.blogger.com/atom/ns#" term="not quite cloud"/><category scheme="http://www.blogger.com/atom/ns#" term="ponderings"/><category scheme="http://www.blogger.com/atom/ns#" term="RSA"/><category scheme="http://www.blogger.com/atom/ns#" term="web application firewall"/><title type='text'>IBM puts a WAF in the cloud?</title><content type='html'>IBM just announced a new cloud initiative around their Preventia and Rational platforms. The Rational play seems to meet the on-demand and scalability requirements of a cloud service (as many scans as you need for as many applications as you have) which puts them into the competitive space that contains solutions form Qualys and Cenzic among others.

The Preventia platform leaves me a little fuzzy though, my &lt;a href=&quot;http://www.net-security.org/secworld.php?id=7356&quot;&gt;first read&lt;/a&gt; on it is that it&#39;s a software appliance that you could put into your particular environment to protect your web app - same as you could incorporate a &lt;a href=&quot;http://www.checkpoint.com/products/security_virtualization/securing_virtual_servers.html&quot;&gt;checkpoint software appliance&lt;/a&gt; into your cloud. So yes it adds security to web apps in the cloud, but it doesn&#39;t follow the same pattern as the &quot;&lt;a href=&quot;http://ironfog.blogspot.com/2009/04/defining-true-cloud-security-service.html&quot;&gt;route through&lt;/a&gt;&quot; solutions out there, so I don&#39;t think this isn&#39;t a cloud security service. Still, a start to addressing the security concerns of QSAs and CISSPs everywhere.

(Best subtitle ever &quot;&lt;a href=&quot;http://www.techradar.com/news/internet/ibm-s-x-force-launches-cloud-security-products-593738&quot;&gt;Probably has a shiny uniform, catchphrase and secret handshake&lt;/a&gt;&quot;).

&lt;span style=&quot;font-weight:bold;&quot;&gt;UPDATE:&lt;/span&gt; The Hoff of &lt;a href=&quot;http://www.rationalsurvivability.com&quot;&gt;Rational Survivability&lt;/a&gt; is checking it out at RSA, thanks!</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/3366445887164187519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/04/ibm-puts-waf-in-cloud.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3366445887164187519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/3366445887164187519'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/04/ibm-puts-waf-in-cloud.html' title='IBM puts a WAF in the cloud?'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-6185170445830029306</id><published>2009-04-21T17:53:00.002-04:00</published><updated>2009-04-21T17:55:52.933-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="FUD"/><category scheme="http://www.blogger.com/atom/ns#" term="mal-machine"/><category scheme="http://www.blogger.com/atom/ns#" term="malware"/><category scheme="http://www.blogger.com/atom/ns#" term="trojan"/><title type='text'>mal-machine mark 1</title><content type='html'>Reuven at Elastic Vapor posted &lt;a href=&quot;http://www.elasticvapor.com/2009/04/introducing-virtual-machine-trojan.html#links&quot;&gt;Introducing The Virtual Machine Trojan&lt;/a&gt; on a PoC tool called ViMtruder.

It demonstrates Kris Buytaert&#39;s &lt;a href=&quot;http://virtualization.com/guest-posts/2009/04/17/on-the-dangers-of-ovf/&quot;&gt;concerns&lt;/a&gt; on portability of malicious code inside VMs, but I still believe that downloading a random VM from an untrusted source without doing your due diligence is asking for trouble, whether or not this trojan was available.</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/6185170445830029306/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/04/mal-machine-mark-1_21.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6185170445830029306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/6185170445830029306'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/04/mal-machine-mark-1_21.html' title='mal-machine mark 1'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3225552334088125803.post-8918054163644032764</id><published>2009-04-20T23:52:00.001-04:00</published><updated>2009-04-20T23:53:52.003-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="mckinsey"/><category scheme="http://www.blogger.com/atom/ns#" term="startup"/><title type='text'>Defining a true Cloud Security Service (Part 1)</title><content type='html'>I got excited by the title of this article in Channel Pro, &quot;&lt;a href=&quot;http://www.channelpro.co.uk/Analysis/217888/cloudbased_security_services_will_2009_be_the_year_this_much_hyped_sector_comes_of_age.html&quot;&gt;Cloud-based security services - will 2009 be the year this much hyped sector comes of age?&lt;/a&gt;&quot;, hoping it was a spiritual successor to &lt;a href=&quot;http://cloudsecurity.org/2009/03/11/cloud-security-startups-where-for-art-thou/&quot;&gt;Craig Baldings&lt;/a&gt; earlier posting. Sadly it was not (guess it&#39;s my fault for reading a trade rag). The Channel Pro article quickly headed towards product flog land (nothing wrong with that, if you don&#39;t try to sell, you don&#39;t sell) but it did give a brief consideration towards the reasons that security in the cloud hasn&#39;t happened:
&lt;blockquote&gt;no doubt resistance to some of the changes in thinking and internal processes needed to implement a SaaS strategy is a significant factor&lt;/blockquote&gt;Then I realized, the logic was sort of nonsense given that MSSPs (Managed Security Service Providers) are alive and well. Once a company is willing to outsource, whether it&#39;s on-premise and remotely managed, in someone else&#39;s data centre or in the cloud really comes down a price/functionality/trust debate.

Consider the following crop of cloud security services: &lt;a href=&quot;http://www.enstratus.com/&quot;&gt;enStratus&lt;/a&gt; provides security services for the cloud; Rozmic has &lt;a href=&quot;http://www.emailcloud.com/&quot;&gt;emailcloud&lt;/a&gt; (which seems to be a competitor to &lt;a href=&quot;http://www.proofpoint.com/products/ondemand.php&quot;&gt;ProofPoint&lt;/a&gt;, Frontbridge prior to &lt;a href=&quot;http://www.networkworld.com/news/2006/033006-microsoft-rebrands-frontbridge.html&quot;&gt;rebranding&lt;/a&gt; and lets not forget &lt;a href=&quot;http://www.google.com/postini/&quot;&gt;Postini&lt;/a&gt;); and &lt;a href=&quot;http://zscaler.com/interoperability.html&quot;&gt;Zscaler&lt;/a&gt; provides anti-X solutions.

This list is by no means canonical, but with the exception of enStratus, all of the cloud security services use a route-through implementation to provide the service. So does that make this current crop simply souped-up MSSPs?

McKinsey&#39;s &lt;a href=&quot;http://uptimeinstitute.org/images/stories/McKinsey_Report_Cloud_Computing/mckinsey_clearing_the%20clouds_final_04142009.ppt.pdf&quot;&gt;report&lt;/a&gt; on cloud computing (with all its vagaries) tried for a three part definition of &quot;the cloud&quot; (see page 12) that goes like this:

1) Hardware management is highly abstracted from the buyer
2) Buyers incur infrastructure costs as variable OPEX
3) Infrastructure capacity is highly elastic (up or down)

Cloud services are defined as only two of the three, specifically:

1) Hardware management is highly abstracted from the buyer
3) Infrastructure capacity is highly elastic (up or down)

MSSP&#39;s are clearly not cloud or cloud service, you buy a firewall or an IPS and if you need more capacity your MSSP will sell you another device.

If you look at McKinsey&#39;s definitions, I think it&#39;s important to clarify that abstraction should be so great, that not even the cloud operator really deals with the hardware - in the extreme, they simply plug in the raw physical substrate and the cloud subsumes it (look at Google - do you think they do any manual provisioning outside of putting their servers together). For the variability of the OPEX cost, periodicity counts (think by the hour, not the month). Finally, infrastructure elasticity should be automatic and not require the purchase of additional equipment on a per customer basis.

With that in mind, it&#39;s clear that services like ZScaler are not souped-up MSSPs, so does McKinsey&#39;s definition for clouds and clouds services work for cloud security services? I think so, but there&#39;s an interesting distinction to be made between services like enStratus and Rozmic&#39;s emailcloud.</content><link rel='replies' type='application/atom+xml' href='http://ironfog.blogspot.com/feeds/8918054163644032764/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://ironfog.blogspot.com/2009/04/defining-true-cloud-security-service.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/8918054163644032764'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3225552334088125803/posts/default/8918054163644032764'/><link rel='alternate' type='text/html' href='http://ironfog.blogspot.com/2009/04/defining-true-cloud-security-service.html' title='Defining a true Cloud Security Service (Part 1)'/><author><name>Ben</name><uri>http://www.blogger.com/profile/02782094271727843601</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXhY6o_m34IFslMu-_ivIxllj1ilAMdfWqryt_BTXvmm6Z5rlWwzqk5QXTcBSfLClc7iFvxjFmcLE4ffa_5cq9nks0rXRrgQ3bY-_yx5WSKw1pHHnetBmjmws25egm9CI/s1600-r/1602bca.jpg'/></author><thr:total>1</thr:total></entry></feed>