<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Curphey</title>
	
	<link>http://www.curphey.com</link>
	<description>Software, software security, running, atheism  &amp; more ....</description>
	<lastBuildDate>Tue, 20 Mar 2012 04:05:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/curphey" /><feedburner:info uri="curphey" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Is Threat Modeling Overrated ?</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/Cj9255DwhHk/</link>
		<comments>http://www.curphey.com/2012/03/is-threat-modeling-overrated/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 04:05:09 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Agile Software]]></category>
		<category><![CDATA[Practical Software Security]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=886</guid>
		<description><![CDATA[I few weeks ago I posted &#8220;Is Threat Modeling Overrated? I think so….&#8221; on Twitter. It was piggybacking on this blog post and my bait was a combination of a few glasses of red wine (aka &#8220;Dutch courage&#8221;) and less than 140 chars of expressiveness but I have come to think that despite the potential [...]]]></description>
			<content:encoded><![CDATA[<p>I few weeks ago I posted &#8220;<a href="http://www.twitter.com/curphey">Is Threat Modeling Overrated? I think so….</a>&#8221; on Twitter. It was piggybacking on this <a href="http://financialcryptography.com/mt/archives/001357.html">blog post</a> and my bait was a combination of a few glasses of red wine (aka &#8220;Dutch courage&#8221;) and less than 140 chars of expressiveness but I have come to think that despite the potential high value in analyzing an applications architecture from a security view point that threat modeling as generally practiced is not delivering on it&#8217;s potential. </p>
<p>[For full disclosure I owned the engineering of one of Microsofts Threat Modeling tools called <a href="http://msdn.microsoft.com/en-us/security/aa570413">TAM</a> while I was there. I will talk about tools later but the short story is that many people have seen the <a href="http://articles.businessinsider.com/2011-06-29/tech/30061635_1_major-tech-companies-humor-foursquare">MSFT org charts </a>(which are very accurate) and despite lots of feedback to me and my personal belief that TAM was a superior tool, I deprecated it to avoid the continued bun-fight and make it easier for customers to get behind a common message from MSFT. I was also involved in writing and reviewing the <a href="http://msdn.microsoft.com/en-us/library/ff648006.aspx">Threat Modeling Developer Guidance in 2005</a>.]</p>
<p>Let me be crystal clear up-front: I think looking at a systems software architecture (reviewing the design, user stories &#038; specs, visual models (whiteboard, napkins etc.), talking to the architects and developers etc.) upfront can be one of the highest value (low effort and high reward) security assessment activities that anyone can do. Pound for pound I reckon it&#8217;s right up there with anything, period. It is of course a totally different beast of an assessment technique that doesn&#8217;t replace static or dynamic analysis or pen testing but in the past I have been involved in assessment projects where we were quickly able to determine that we could shut down a service or lock out users or determine that the system wasn&#8217;t doing I/O validation and so was highly likely to have a lot of related issues. The issues identified typically don&#8217;t require proof or to be exhaustively pin-pointed for the development team to go back to the drawing board and redesign or re-implement. </p>
<p>So if this type of analysis is such a high value exercise then where does Threat Modeling break down?</p>
<p>-Why Just Threats?</p>
<p>-Models That Aren&#8217;t Really Models</p>
<p>-Retrofitting Analysis</p>
<p>-Tools</p>
<p><strong>Why Just Threats?</strong></p>
<p>I openly confess I have a very limited personal interest in what seems like an ongoing and never-ending debate about &#8220;what is risk?&#8221;. The GRC / compliance market surge of a few years ago just sucked any interest right out of me but it makes common sense (to me at least) that if we are looking to determine the potential security posture of a software design then you have to ground your analysis in more than just threats. Now I am about to enter the slippery slope of taxonomy and definition but if Risk is a function of the Vulnerabilities and the Threats.</p>
<blockquote><p>NIST SP 800-30: Risk is a function of the likelihood of a given threat-source’s exercising a particular potential vulnerability, and the resulting impact of that adverse event on the organization.</p></blockquote>
<p>Obsessing over Threats is only part of the job. Sadly in my experience it&#8217;s also the part that seems to be most open to subjective discussions of &#8220;this could happen&#8221; or &#8220;I don&#8217;t think that will ever happen&#8221;. It&#8217;s certainly helpful to think about the ways people will attack software but one part of the jigsaw. Then there is STRIDE. I don&#8217;t know about you but whenever I have sat with a developer and starting reading the acronyms I usefully get to Spoofing or Tampering before the eye-brows start to raise. It&#8217;s just not a clear set of definitions in my opinion to anyone but security people and if you have to explain it then I think something is wrong. What&#8217;s the difference between spoofing a user account by tampering with the URL? Some folks may say it doesn&#8217;t matter because you list the attack.</p>
<p>It would seem that an alternative approach would be to do Security Risk Analysis of Software where you look at potential Vulnerabilities, potential Threats and therefore determine the potential Risk. Based on that potential Risk you can make decisions on what to do or not to do. </p>
<p><strong>Models That Aren&#8217;t Really Models</strong></p>
<p>Most threat models I have seen aren&#8217;t models at all, at least not as in <a href="http://en.wikipedia.org/wiki/Modeling_language">software models.</a> They are diagrams and or lists. If we had security models that were derived from the code or code that was derived from the model then we would have a way to maintain a different representation of the application. When changes to the code were made, the model could change and the analysis updated. If the model was changed perhaps via modeling activity (trying different things is surely what modeling is all about after-all) then you could create code stubs for the new design or even refactor (although I suspect that is a long way off). This is the way UML works for instance. Yes people use UML as a diagramming language as well and yes UML is best in big water-fall like projects, but <a href="https://edit.ethz.ch/infsec/research/publications/pub2002/SecureUML.pdf">SecureUML</a> was a promising modeling language for modeling authorization.</p>
<p><strong>Retrofitting Analysis</strong></p>
<p>I have heard from several big companies where threat modeling is prevalent that internal studies have shown that many models are simply retrofitted to meet a step in their security process. The developers or project leads take what has been built and create an artifact to meet the step required in the process. This of course defeats the purpose but I have had heard this several times which seems to indicate that many developers just don&#8217;t see the value in the process. </p>
<p><strong>Tools</strong></p>
<p>Despite several threat modeling tool projects like <a href="http://www.myappsecurity.com/threatmodeler/">Threat Modeler</a> and Trike) the MSFT SDL threat modeling tool seems to be the only serious option. That tool is designed to work at MSFT which is a unique beast and no one builds software like MSFT. You can take that as a compliment or a jab, I&#8217;ll let you decide as it was intended as both but what works for MSFT is unlikely to work for most companies as few people build OS&#8217;s that ship every 3 years. The reality for me is that if threat modeling was such a high value activity for security people or developers, then market forces would have figured out how to monetize it and the big security tools vendors or IDE vendors would have options. It would be an option in IDE&#8217;s, built-in like static analysis is to Visual Studio or it would be available as value-added plugins like HP WebInspect, Fortify or IBM AppScan. </p>
<p><strong>Summary</strong></p>
<p>It&#8217;s easy to throw stones and without a better proposal this is hardly my most constructive post, but given the high value I see in Security Risk Analysis of Software I think it&#8217;s time to think again about how to analyze software designs and I think Threat Modeling is Overrated.</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fis-threat-modeling-overrated%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fis-threat-modeling-overrated%2F&amp;text=Is+Threat+Modeling+Overrated+%3F&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/03/is-threat-modeling-overrated/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fis-threat-modeling-overrated%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/Cj9255DwhHk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/03/is-threat-modeling-overrated/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/03/is-threat-modeling-overrated/</feedburner:origLink></item>
		<item>
		<title>PostgreSQL Adapter</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/S2VWNkbwWt4/</link>
		<comments>http://www.curphey.com/2012/03/postgresql-adapter/#comments</comments>
		<pubDate>Mon, 12 Mar 2012 01:57:41 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=882</guid>
		<description><![CDATA[If you are using PostgreSQL in your Rails development you will know that the documentation for setting it up is a little patchy and the error messages hardly helpful. StackOverFlow is of course your friend (this was the one that finally solved it for me today) but here is a common thing I keep getting [...]]]></description>
			<content:encoded><![CDATA[<p>If you are using PostgreSQL in your Rails development you will know that the documentation for setting it up is a little patchy and the error messages hardly helpful. StackOverFlow is of course your friend (<a href="http://stackoverflow.com/questions/1664364/how-to-handle-ruby-on-rails-error-please-install-the-postgresql-adapter-gem">this was the one that finally solved it for me today</a>) but here is a common thing I keep getting caught out by so this little post will save me 10 mins in future and maybe you too.</p>
<p>gem list pg will return if the pg gem is installed</p>
<p><img src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-03-11-at-6.54.27-PM.png" alt="Screen Shot 2012 03 11 at 6 54 27 PM" title="Screen Shot 2012-03-11 at 6.54.27 PM.png" border="0" width="312" height="84" /></p>
<p>You may still get the following error</p>
<p><img src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-03-11-at-6.47.46-PM.png" alt="Screen Shot 2012 03 11 at 6 47 46 PM" title="Screen Shot 2012-03-11 at 6.47.46 PM.png" border="0" width="581" height="96" /></p>
<p>(Please install the pg adapter: `gem install activerecord-pg-adapter` (no such file to load &#8212; active_record/connection_adapters/pg_adapter))</p>
<p>This is because the gem is called pg but the adapter is called postgresql. Doh ! Just make sure your database.yml looks something like this :</p>
<p><img src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-03-11-at-6.46.51-PM.png" alt="Screen Shot 2012 03 11 at 6 46 51 PM" title="Screen Shot 2012-03-11 at 6.46.51 PM.png" border="0" width="283" height="453" /></p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fpostgresql-adapter%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fpostgresql-adapter%2F&amp;text=PostgreSQL+Adapter&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/03/postgresql-adapter/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fpostgresql-adapter%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/S2VWNkbwWt4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/03/postgresql-adapter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/03/postgresql-adapter/</feedburner:origLink></item>
		<item>
		<title>Why I Am in No Rush to Launch Seconauts</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/fxJXqVlvQyg/</link>
		<comments>http://www.curphey.com/2012/03/why-i-am-in-no-rush-to-launch-seconauts/#comments</comments>
		<pubDate>Fri, 09 Mar 2012 23:52:27 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=874</guid>
		<description><![CDATA[I have always loved the Mark Twain quote “I didn&#8217;t have time to write a short letter, so I wrote a long one instead.” It reminds me that creating lots of &#8216;stuff&#8217; is easy but creating a focused set of high quality &#8216;stuff&#8217; takes time. After trying to push on OWASP to change for years [...]]]></description>
			<content:encoded><![CDATA[<p>I have always loved the Mark Twain quote “I didn&#8217;t have time to write a short letter, so I wrote a long one instead.” It reminds me that creating lots of &#8216;stuff&#8217; is easy but creating a focused set of high quality &#8216;stuff&#8217; takes time. After trying to push on OWASP to change for years and coming to the conclusion that it is just never going to be the community I originally hoped it would become (I dipped back in twice), I decided to bite the bullet and launch a new one. I hear regularly from many people about their frustrations about OWASP and the recently revelation that a chapter leader has been arrested by the FBI suspected of being part of Anonymous can&#8217;t be helping their credibility among corporate sponsors or the Gov. As a big proponent of agile software principles and believing strongly in getting software out early and iterating often, it may seem tempting to just launch something and let it find it&#8217;s feet but I am in no rush to launch Seconauts. I think community projects are not software projects and we will launch when we are ready. </p>
<p>Firstly Seconauts will not be like OWASP. It will not be an alternative to OWASP and won&#8217;t be suitable for everyone. At a high level of course it will be a predominately online community for software developers engaged in security so perhaps on the face similar but I would argue that OWASP is predominately security people involved in software and Seconauts will be software people involved in security. While fundamentally that may seem like semantics at this point I think it is important and if I get the setup right then that will happen on it&#8217;s own.</p>
<p>Having a strong vision to get behind with a clear focus that the project can use as it&#8217;s North Star is vital: a community roadmap if you will. Many successful online software projects like Apache and Rails have also worked well because of their strong leadership, a focused core team and a simple but effective set of practices to control quality, remove roadblocks to productivity,improve team health and improve the velocity of deliverables. Sounds like Agile right? It&#8217;s not a case of rules, in fact lots of rules seem to have a very negative effect on communities but its about a set of guiding principles and a mindset. Anyone can of course use software projects like Rails and Apache and they actively encourage wide participation by allowing anyone to submit a patch but few people have commit access to their code repositories. Anyone can write documentation and submit it to the projects but only when approved by a core team does it become that projects adopted work. It&#8217;s about having a simple way to work that allows people with different capabilities and motivations to engage without having a lowest common denominator model to accommodate everyone. Evolving a strong core team is key and so we are going to try something a little bit different, actually we are going to model those successful projects but try and automate it a little. </p>
<p>Projects will be open to anyone to consume for free and the Practical Software Security book will be the first published and will likely host a discussion system that anyone can join but documentation and code will be done by a core team. </p>
<p>That core team will be grown via an invite system and a rating system. We have built the basic site using Rails and Devise and already have an invite mechanism in place through Devise. I need to design and build the rating system as an extension to Devise but am thinking like this. After seeding the core team (current book authors + others), those core folks will have a limited set of invites to hand out. Each time someone hands out an invite their profile will be tagged to the person they invited (tainted) and so it&#8217;s in the best interests that people only invite A players to the game. If Joe invites Fred to the community and Fred turns out to be a rock star then it reflects on Joes profile but if Fred turns out to not contribute or contribute negatively then it will adversely affect Freds profile. Growth will of course be slower this way but I think controlled growth will avoid some of the things I have seen at OWASP and we should be able to adjust the way the system works as we learn. Activity will earn community points and community points may turn into more invites but mainly will reflect community kudos. It&#8217;s about rewarding the doers! I think we can create a wide set of events that will trigger points. For instance if you post to a discussion that activity is more valuable than lurking and so may earn you a set of points.Reading all discussion threads is valuable as well and so may earn you points, just not as many. Committing code may earn a certain amount of points, checking in via FourSquare to an event or meeting may earn another amount and writing a Gist or a blog another set. I think we can even allow discussion threads to be rated by everyone else in the discussion to further emphasize quality. Mark may rate Freds reply as a 5 star reply that earns Fred 10 points instead of just the normal 5 for a post. If Fred gets 5 stars from all the people on the thread then &#8220;voila&#8221; and so the system rewards quality. Gamification is such an buzz-word but I do want to try and create a community system where the good people are rewarded for good work and recognized by the community with community kudos and to get that right will take time. </p>
<p>Seconauts will also be different in that it will focus on a small number of software and documentation projects and not be a clearing house. If I look at OWASP today many projects are either abandoned or of such low quality that it taints the good ones. Just navigating through the trees to find the wood is almost impossible and some key projects like the OWASP Guide have frankly very questionable advice. I have always through that it is more effective to focus your limited resources into fewer projects and ensure they are high quality and well maintained. I think OWASP has tried to be everything to everyone. We will pick off a few things and do those few things really well!</p>
<p>So when will it launch? When it&#8217;s ready of course! Mike DeLibero has been working hard on building out a Rails based discussion site that integrates web based discussion and email discussions. User management and invites are via Devise and we have the user auth working using GitHub, Google and FaceBook via OmniAuth. I will be doing some CSS work this weekend and we will start using this in a few weeks for the current authors and reviewers of the book content. Mike will build book publishing system next taking the raw markdown and creating HTML, PDF and eReader formats. When the book is done (ETA summer) then we will launch as that being the first project. </p>
<p>Thanks for your patience but I think it will be worthwhile. Blue skies!</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fwhy-i-am-in-no-rush-to-launch-seconauts%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fwhy-i-am-in-no-rush-to-launch-seconauts%2F&amp;text=Why+I+Am+in+No+Rush+to+Launch+Seconauts&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/03/why-i-am-in-no-rush-to-launch-seconauts/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fwhy-i-am-in-no-rush-to-launch-seconauts%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/fxJXqVlvQyg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/03/why-i-am-in-no-rush-to-launch-seconauts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/03/why-i-am-in-no-rush-to-launch-seconauts/</feedburner:origLink></item>
		<item>
		<title>Escaping the Management Trap</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/425xao55a80/</link>
		<comments>http://www.curphey.com/2012/03/escaping-the-management-trap/#comments</comments>
		<pubDate>Sat, 03 Mar 2012 05:32:49 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=861</guid>
		<description><![CDATA[I have just taken a pretty dramatic right turn in my career. I have had an unconventional career to date by many peoples standards. After being thrown out of school in my late teens and a few years of questionable (I mean really questionable) &#8216;mis-spent youth&#8217;, I went to University in my mid-twenties. After a [...]]]></description>
			<content:encoded><![CDATA[<p>I have just taken a pretty dramatic right turn in my career. </p>
<p>I have had an unconventional career to date by many peoples standards. After being thrown out of school in my late teens and a few years of questionable (I mean really questionable) &#8216;mis-spent youth&#8217;, I went to University in my mid-twenties. After a first degree in Engineering and a Masters Degree in Information Security (where I specialized in cryptography) I was 28 before I started a serious career (I am 43 now). For the first few years I spent most of my time working on very technical computer security or crypto projects as both a consultant and for a bank before moving to run a small security consulting team in the US. For the last decade I have unintenionally found myself in roles running consulting and software engineering teams / businesses from small to large, local to global and seemingly everything in between. It was never an intentional plan to be a &#8220;manager&#8221; but it seemed like I had a natural skill to lead teams of technical people and have had success at doing it. </p>
<p>When I was younger I used to think that people management and business management was the only aspirational goal worth striving for. The head honchos had power and kudos. It was Yoda meets Richard Branson. The glamorous and ritzy side of work-life. The harsh reality (for me at least) has been that people management and business management is mundane and boring. Over the last decade I graduated to spending more and more time hacking spreadsheets than code, more time in meaningless meetings, dealing with lawyers, HR and filling in forms than feeling like a productive creative human making a dent in the world. </p>
<p>Good people management is tough and sadly rare. It&#8217;s not about giving orders or instructions but about providing a nurturing environment in which people can be their best. It&#8217;s about mentoring, caring (a shoulder to cry on and a set of ears to bounce ideas off), facilitating, removing roadblocks. It&#8217;s like parenting. It&#8217;s about taking care of people. Few people really like to take care of people at work. Most managers like to direct people with tasks and instructions. MSFT was a very toxic place to work for me in the last year and I know many others who feel the same. The brain drain from MSFT in recent times has been as meteoric as its fall from grace and relevance in the technology world. </p>
<p>Business management is also tough. Companies generally optimize for profit and not happiness. Investments in the long term can easily be passed over with little short term affect but the debt comes back with a negative culture that spirals, affecting company performance. Balancing tangible profits against intangible costs (great computers and cool offices) is granted tough but its not always about money. Simple things like saying thank-you, being open and honest, treating people with dignity and respect, sending flowers or gifting a Kindle book doesn&#8217;t cost much but has lasting effects. Having employees spend their lives in meetings when they could be spending time being creative kills both productivity and kills morale. MSFT had amazing healthcare and paid me very well but at the same time had me in a 70&#8242;s styled office with beige walls and grey carpet and fed us with what can only be described as &#8216;school dinners&#8217;. </p>
<p>Early last year I told my wife I was depressed with the prospects of continuing my career trend and that I needed to make a bold change. I need to change my role and the type of company I worked for. Sadly I needed to wait for my green card to come in before I could act (it finally arrived in December).</p>
<p>When I look back at my work life I have been the happiest when I have been creating things. I have been passionate about software for over a decade. The intellectual challenge and the nature of the medium means that you are only limited by your imagination making it the perfect tool for an aspirational mind. I am fascinated by the building blocks of development frameworks like Rails and now Node.js, I love the emergence of identity technologies like OAUth  and am fascinated by the emerging API economy. I think we are at the very start of the equivalent of a mega-scale industrial revolution and have just seen the tip of the ice-berg of the change that is possible. It&#8217;s a really exciting time to be living. I believe in the ideals of open source software and despite a break for the last few years from software security I realized that it really is in my DNA. I love Agile and software development process. </p>
<p>In short I want to build software, be involved in building software, create great things (new ideas, businesses, ways to do things) and I want to be involved in some ways with software security. </p>
<p>I have tried over the last few years to graduate from a part-time hobbyist developer to a serious developer but the reality is that when you are a relatively senior manager and have teams relying on you, then you always have a prioritized backlog and personal development early makes the sprint. I am no slacker, I typically crank out long work hours (although hours is hardly a measurement of results) but juggling a management career and juggling learning to become serious coder is no easy task and one I couldn&#8217;t manage. I tried courses, tutoring with friends (thanks Mike) and other less conventional options (fixing bugs in popular open source projects under a pseudonym) but &#8220;if you don&#8217;t use it you loose it&#8221; and the transition was simply taking too long. I decided on a two step plan. </p>
<p>The first step is to return to security consulting for a few years and the second step down the road will be a software start-up. I took step one on Monday returning to Foundstone. </p>
<p>Step 1 &#8211; Over the years I have spent a lot of time leading projects and teams creating software security programs and so there is a lot of value I can bring to a consulting company and it&#8217;s customers. When combined with the experience of OWASP and the book I am writing &#8220;Practical Software Security&#8221; for O&#8217;Reilly it seems like a no brainer. It will get me away from managing people and managing businesses and closer to creating software and software security. While it hard to plan the future I have set a rough plan for myself that will hopeful see my work-life something like this. In the early days I expect to spend most of my time involved in creating software security programs for companies and as time moves on I expect to expect more and more time writing and re-factoring code, creating tools and generally operating as a security developer. </p>
<p><img src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-03-02-at-8.38.45-PM.png" alt="Screen Shot 2012 03 02 at 8 38 45 PM" title="Screen Shot 2012-03-02 at 8.38.45 PM.png" border="0" width="600" height="296" /></p>
<p>During this period (my Step 1), I have decided to invest in becoming a serious Ruby on Rails and JavaScript developer. My personal goals are to be considered among the top few security people in the world in those technologies (within 18 months) but that&#8217;s not important. While I make this transition I will able to do a lot more writing, public speaking, contribute to and start more open source development projects (I have several ideas), launch the Seconauts community I have been planning for a while and finish my book. </p>
<p>Deciding which consulting firm to join was actually easy. We sold Foundstone to McAfee in 2004 and it&#8217;s since been acquired by Intel. There are a bunch of people still there I consider friends, a bunch of people I respect and I know the culture. Company culture is so important to me and Foundstone is so NOT Microsoft! There is a lack of beauacracy, fun, innovation and aspiration to do great things. Nowhere is perfect but I know it will be a great place to hang my hat for a few years and make a dent on the world and I am excited to be back; only this time as an individual consultant and not the VP in charge! </p>
<p>Step two is a way off at this point but it&#8217;s surprising how quickly time passes when you are having fun.</p>
<p>Everyone deserves happiness and life is too short to not pursue happiness at work.</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fescaping-the-management-trap%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fescaping-the-management-trap%2F&amp;text=Escaping+the+Management+Trap&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/03/escaping-the-management-trap/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F03%2Fescaping-the-management-trap%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/425xao55a80" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/03/escaping-the-management-trap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/03/escaping-the-management-trap/</feedburner:origLink></item>
		<item>
		<title>OSX Install Script</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/qBmJ2gERFRM/</link>
		<comments>http://www.curphey.com/2012/02/osx-install-script/#comments</comments>
		<pubDate>Wed, 29 Feb 2012 05:54:20 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[OSX]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=854</guid>
		<description><![CDATA[When you screw up your laptop all the time and need to fix 90% of it really fast&#8230;. I got back from vacation to yet another hard drive issue on my MacBook Pro that required a re-install. Don&#8217;t ask&#8230;..I think I have what is called an &#8216;Apple Lemon&#8217; hybrid. New motherboard, new uni-body (although that [...]]]></description>
			<content:encoded><![CDATA[<p><span style="color: #333333; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 22px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; background-color: #ffffff; display: inline !important; float: none; font-family: Helvetica; font-size: 12px;">When you screw up your laptop all the time and need to fix 90% of it really fast&#8230;.</span></p>
<p>I got back from vacation to yet another hard drive issue on my MacBook Pro that required a re-install. Don&#8217;t ask&#8230;..I think I have what is called an &#8216;Apple Lemon&#8217; hybrid. New motherboard, new uni-body (although that was my fault for being drunk and in charge of a laptop), replacement drive and the list goes on. I really need to learn to backup but with everything in the &#8216;cloud&#8217; these days it&#8217;s only the apps and not the data that goes South, so I figured that with a quick install script &#8220;life should be good&#8221; right? I cloned an install script from the ThoughtBot guys, removed some things I consider cruft, fixed it up to install Ruby 1.9.2 (I messed with 1.9.3 and clang options but gave up) and setup my shell preferences to Zsh……and BANG, a nice template dev environment on any MacBook in 15 mins or less. I just ran a fresh install on my new MacBook Air!</p>
<p>Code is here &#8211; <a href="https://github.com/curphey/laptop">https://github.com/curphey/laptop</a></p>
<p>Note 1 : You must install GCC for Lion first (I install XCode as well but several of the the scripts /configure will spew errors without GCC) <a href="https://github.com/downloads/kennethreitz/osx-gcc-installer/GCC-10.7-v2.pkg">https://github.com/downloads/kennethreitz/osx-gcc-installer/GCC-10.7-v2.pkg</a></p>
<p>Note 2 : You need root to change the shell defaults so there will be a prompt. I&#8217;ll try and automate this away somehow&#8230;.</p>
<p>Warning : It works for me, may not for you so use with caution!</p>
<p>Open your Terminal and run &#8220;bash &lt; &lt;(curl -s https://raw.github.com/curphey/laptop/master/mac)&#8221;</p>
<ul>
<li>SSH public key (for authenticating with services like Github and Heroku)</li>
<li>WGet</li>
<li>Homebrew (for managing operating system libraries)</li>
<li>Git (so Homebrew gets me the latest version)</li>
<li>Zsh (change default shell and installs oh-my-zsh)</li>
<li>Postgres</li>
<li>RVM </li>
<li>Ruby 1.9.2</li>
</ul>
<p>I will probably add a few tweaks to add a Node installation, setup my favorite oh-my-zsh theme and a few tweaks but in the meantime I hope you find this useful.</p>
<p>Tweaks, requests and pull requests welcome!</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F02%2Fosx-install-script%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F02%2Fosx-install-script%2F&amp;text=OSX+Install+Script&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/02/osx-install-script/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F02%2Fosx-install-script%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/qBmJ2gERFRM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/02/osx-install-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/02/osx-install-script/</feedburner:origLink></item>
		<item>
		<title>Cryptography Section of Practical Software Security Book</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/2Tkmjm0mXd8/</link>
		<comments>http://www.curphey.com/2012/01/cryptography-section-of-practical-software-security-book/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 00:17:05 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=851</guid>
		<description><![CDATA[Writing a CC book in the open is nice, you can ask questions! I started writing the cryptography section of the book today and here is the table of contents so far. An Introduction &#38; Brief History (I swear I will not start with a caesar cipher or ROT13!) Symmetric Key Cryptography (Private Key Cryptography) [...]]]></description>
			<content:encoded><![CDATA[<p>Writing a CC book in the open is nice, you can ask questions! I started writing the cryptography section of the book today and here is the table of contents so far.</p>
<ul>
<li>An Introduction &amp; Brief History (I swear I will not start with a caesar cipher or ROT13!)</li>
<li>Symmetric Key Cryptography (Private Key Cryptography)</li>
<li>Asymmetric Key Cryptography (Public Key Cryptography)</li>
<li>Digest Algorithms (Hash Functions)</li>
<li>Digital Signatures, Non-Repudiation &amp; MAC&#8217;s</li>
<li>Digital Certificates, SSL &amp; PKI PGP &amp; S/MIME</li>
<li>The Promise of Quantum Cryptography</li>
<li>Key Management</li>
<li>Cryptographic Standards</li>
<li>Why Cryptography Often Fails</li>
<li>A Word About Crypto Snake-Oil</li>
</ul>
<p>What else does a developer need to understand (or be able to look up ) ?</p>
<p> </p>
<p> </p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcryptography-section-of-practical-software-security-book%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcryptography-section-of-practical-software-security-book%2F&amp;text=Cryptography+Section+of+Practical+Software+Security+Book&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/01/cryptography-section-of-practical-software-security-book/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcryptography-section-of-practical-software-security-book%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/2Tkmjm0mXd8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/01/cryptography-section-of-practical-software-security-book/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/01/cryptography-section-of-practical-software-security-book/</feedburner:origLink></item>
		<item>
		<title>Software Security Weekly</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/q5tdTn9fnlg/</link>
		<comments>http://www.curphey.com/2012/01/software-security-weekly/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 21:01:00 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=848</guid>
		<description><![CDATA[I just pushed out a sign-up form for a very simple weekly software security newsletter. Recently I started signing up to Peter Coopers excellent HTML5, JavaScript and Ruby Weekly newsletters and after reading about the Information Diet thought I would create something similar for Software Security. The list is managed by MailChimp so you can [...]]]></description>
			<content:encoded><![CDATA[<p>I just pushed out a sign-up form for a very simple weekly software security newsletter. Recently I started signing up to Peter Coopers excellent <a href="http://www.html5weekly.com">HTML5</a>, <a href="http://www.javascriptweekly.com">JavaScript </a>and <a href="http://rubyweekly.com/">Ruby Weekly</a> newsletters and after reading about the <a href="http://www.informationdiet.com/">Information Diet</a> thought I would create something similar for Software Security.</p>
<p><img title="Screen Shot 2012-01-31 at 12.55.18 PM.png" src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-01-31-at-12.55.18-PM.png" border="0" alt="Screen Shot 2012 01 31 at 12 55 18 PM" width="600" height="366" /></p>
<p>The list is managed by <a href="http://www.mailchimp.com">MailChimp</a> so you can always un-subscribe and I will only ever be sending one email a week.</p>
<p>It&#8217;s very simple. A few static pages with a sign-up form (that points to MailChimp), and an archives page. I used <a href="http;//www.heroku.com">Heroku </a>and wrote a little Rack app to publish the static pages.  git push heroku master and it&#8217;s all ready to rock and roll! Doesn&#8217;t get easier than that.<a href="https://github.com/curphey/newsletter"> Code is on github </a>as I suspect when I have some more time I will build something more sophisticated.</p>
<p><img title="Screen Shot 2012-01-31 at 12.52.29 PM.png" src="http://www.curphey.com/wp-content/uploads//Screen-Shot-2012-01-31-at-12.52.29-PM.png" border="0" alt="Screen Shot 2012 01 31 at 12 52 29 PM" width="600" height="263" /></p>
<p>If you have news you would like included then mail me at <a href="mailto:news.desk@softwaresecurityweekly.com">news.desk@softwaresecurityweekly.com</a></p>
<p> </p>
<p> </p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fsoftware-security-weekly%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fsoftware-security-weekly%2F&amp;text=Software+Security+Weekly&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/01/software-security-weekly/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fsoftware-security-weekly%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/q5tdTn9fnlg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/01/software-security-weekly/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/01/software-security-weekly/</feedburner:origLink></item>
		<item>
		<title>Contributing Authors to the Practical Software Security Book</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/vnJmldwweO8/</link>
		<comments>http://www.curphey.com/2012/01/contributing-authors-to-the-practical-software-security-book/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 01:40:52 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Agile Software]]></category>
		<category><![CDATA[Practical Software Security]]></category>
		<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=838</guid>
		<description><![CDATA[If you are a regular reader of this blog you should know I am working on a book for O&#8217;Reilly called Practical Software Security. It&#8217;s in the early stages and evolving as we start to get into the details. You can sign up to get notifications of progress here. There are five main sections: Introduction [...]]]></description>
			<content:encoded><![CDATA[<p>If you are a regular reader of this blog you should know I am working on a book for O&#8217;Reilly called Practical Software Security. It&#8217;s in the early stages and evolving as we start to get into the details. You can sign up to get notifications of progress <a href="http://signup.seconauts.com/">here</a>.</p>
<p>There are five main sections:</p>
<ul>
<li>Introduction</li>
<li>Security Concepts</li>
<li>Languages &amp; Frameworks (was called Tools &amp; Technologies)</li>
<li>Building a Software Security Program</li>
<li>Engineering Scenarios</li>
</ul>
<p>In the <strong><em>Security Concepts</em></strong> section we will introduce developers to things like cryptography, authentication, authorization and then in the <strong><em>Languages &amp; Frameworks</em></strong> sections we will cover the security features available and how to use them properly for the popular development technologies. In the engineering scenarios well get to code level guidance of how to pull it all together to solve real world problems that all developers face like securing a REST API or creating a federated authentication system.</p>
<p>I am delighted that we have been able to recruit a fantastic list of subject matter experts to write and review the <strong><em>Languages &amp; Frameworks</em></strong> section of the book. I will be writing the <strong><em>Security Concepts</em></strong> section (and the Ruby on Rails section) and the following folks will be writing or reviewing:</p>
<ul>
<li>HTML5 (and friends) &#8211; Mark Curphey</li>
<li>Java &#8211; <a href="http://www.linkedin.com/in/pravirchandra">Pravir Chandra</a></li>
<li>.NET &#8211; <a href="http://www.securityninja.co.uk/">David Rook </a>(Security Ninja + Microsoft MVP for Developer Security)</li>
<li>JavaScript (Client + Node) &#8211; <a href="http://www.thespanner.co.uk/">Gareth Heyes</a> (The Spanner) with <a href="http://blog.reybango.com/about/">Rey Bango</a> as a core reviewer (JQuery Core Team Member)</li>
<li>Ruby on Rails &#8211; Mark Curphey with <a href="http://www.rorsecurity.info/">Heiko Webers</a> (wrote the official Rails security guide) as a core reviewer</li>
<li>PHP &#8211; <a href="https://twitter.com/#!/noskillz">Mike DeLibero</a> with <a href="http://shiflett.org/">Chris Shiflett </a>(wrote the <a href="http://shiflett.org/books">O&#8217;Reilly PHP Security</a> book) as a core reviewer</li>
<li>iOS &amp; Android &#8211; <a href="https://twitter.com/#!/danielcornell">Dan Cornell</a></li>
<li>Identity &#8211; <a href="https://twitter.com/#!/oneraindrop">Gunnar Peterson</a></li>
</ul>
<p>Note: we will be doing C / C++ as there is still so much being produced but haven&#8217;t yet locked on that author and we will be figuring out how to deal with things like Spring or Cake (and where to draw the line).</p>
<p>In the <strong><em>Building a Software Security Program</em></strong> section we organize the section into <em><strong>People, Process &amp; Tools</strong></em>. <a href="https://twitter.com/#!/presidentbeef">Justin Collins</a> (author of <a href="http://brakemanscanner.org/">Brakeman Scanner) </a>is going to write the static code analysis section in Tools and <a href="https://twitter.com/#!/Zap0tek">Tasos Laskos</a> (author of <a href="http://zapotek.github.com/arachni/">Arachni</a>) will write about how dynamic web application scanners work. Many other tools will of course be covered! I will be writing extensively about integrating Agile practices and using TDD / BDD techniques and tools. I probably won&#8217;t start on this section until March / April. I am hoping we will have the <strong><em>Security Concepts</em></strong> section and the <strong><em>Languages &amp; Frameworks</em></strong> section complete by the end of February so we can open up a site for a much broader set of reviewers (<a href="http://signup.seconauts.com/">invite only but register to get on the invite request list here</a>) around March.</p>
<p>OK, now to set up the git repo for the contributing authors, create a README.md for them and kick off the discussion about we want to <a href="http://www.curphey.com/2012/01/solid-application-security-frame/">structure things</a>. Gentlemen start your engines!</p>
<p>&nbsp;</p>
<p>Edits : 1/25 &#8211; Added HTML5 (and friends), 1/25 &#8211; Added Gunnar Peterson to Identity</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcontributing-authors-to-the-practical-software-security-book%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcontributing-authors-to-the-practical-software-security-book%2F&amp;text=Contributing+Authors+to+the+Practical+Software+Security+Book&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/01/contributing-authors-to-the-practical-software-security-book/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fcontributing-authors-to-the-practical-software-security-book%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/vnJmldwweO8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/01/contributing-authors-to-the-practical-software-security-book/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/01/contributing-authors-to-the-practical-software-security-book/</feedburner:origLink></item>
		<item>
		<title>OWASP Keynote Speech</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/W27u3PujRvI/</link>
		<comments>http://www.curphey.com/2012/01/owasp-keynote-speech/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 22:41:50 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=825</guid>
		<description><![CDATA[I just found this online Video streaming by Ustream]]></description>
			<content:encoded><![CDATA[<p>I just found this online</p>
<p><iframe style="border: 0px none transparent;" src="http://www.ustream.tv/embed/recorded/17432965" frameborder="0" scrolling="no" width="480" height="386"></iframe></p>
<p><a style="padding: 2px 0px 4px; width: 400px; background: #ffffff; display: block; color: #000000; font-weight: normal; font-size: 10px; text-decoration: underline; text-align: center;" href="http://www.ustream.tv/" target="_blank">Video streaming by Ustream</a></p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fowasp-keynote-speech%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fowasp-keynote-speech%2F&amp;text=OWASP+Keynote+Speech&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/01/owasp-keynote-speech/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fowasp-keynote-speech%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/W27u3PujRvI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/01/owasp-keynote-speech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/01/owasp-keynote-speech/</feedburner:origLink></item>
		<item>
		<title>Kudos for guard-brakeman</title>
		<link>http://feedproxy.google.com/~r/curphey/~3/XHHSr-YCu2g/</link>
		<comments>http://www.curphey.com/2012/01/kudos-for-guard-brakeman/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 19:08:28 +0000</pubDate>
		<dc:creator>Mark Curphey</dc:creator>
				<category><![CDATA[Practical Software Security]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.curphey.com/?p=828</guid>
		<description><![CDATA[Kudos to Niel Matatall for writing guard-brakeman. Neil has taken an open source static analysis tool, brakeman scanner and integrated it with the guard framework, a Ruby DSL for creating file-change events. Guard is typically used to automatically run the test suite as soon as a developer modifies any source code files and provides visual [...]]]></description>
			<content:encoded><![CDATA[<p>Kudos to <a href="https://twitter.com/#!/nilematotle">Niel Matatall </a>for writing <a href="http://rubygems.org/gems/guard-brakeman">guard-brakeman</a>. Neil has taken an open source static analysis tool, <a href="http://brakemanscanner.org">brakeman scanner</a> and integrated it with the guard framework, a Ruby DSL for creating file-change events. Guard is typically used to automatically run the test suite as soon as a developer modifies any source code files and provides visual notifications on pass or fail conditions. What Neil has done is simple but I think very powerful which is why I think he deserves public kudos. When a developer adds guard-brakeman to his guard configuration any time he/she makes a change to his application the security tests will automatically run. TDD developers don&#8217;t commit code until all tests pass and so he has effectively provided an easy way to push security back up the chain for developers following TDD. It&#8217;s that one stage further back than running static analysis before a commit. The only place further back up the chain left to explore is intelli-sense type security advice in the editor.</p>
<p>We need more people doing more things like this in my opinion. Simple, elegant and effective. Kudos to Neil!</p>

				<!-- Social Sharing Toolkit v2.0.4 | http://www.marijnrongen.com/wordpress-plugins/social_sharing_toolkit/ -->
				<div class="mr_social_sharing_wrapper"><span class="mr_social_sharing"><iframe src="https://www.facebook.com/plugins/like.php?locale=en_US&amp;href=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fkudos-for-guard-brakeman%2F&amp;layout=standard&amp;show_faces=false&amp;width=51px&amp;height=24px" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:51px; height:24px;" allowTransparency="true"></iframe></span><span class="mr_social_sharing"><a href="http://twitter.com/share?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fkudos-for-guard-brakeman%2F&amp;text=Kudos+for+guard-brakeman&amp;via=curphey" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/twitter.png" alt="Share on Twitter" title="Share on Twitter"/></a></span><span class="mr_social_sharing"><g:plusone size="medium" count="false" href="http://www.curphey.com/2012/01/kudos-for-guard-brakeman/"></g:plusone></span><span class="mr_social_sharing"><a href="http://www.reddit.com/submit?url=http%3A%2F%2Fwww.curphey.com%2F2012%2F01%2Fkudos-for-guard-brakeman%2F" target="_blank" class="mr_social_sharing_popup_link"><img src="http://www.curphey.com/wp-content/plugins/social-sharing-toolkit/images/buttons/reddit.png" alt="Submit to reddit" title="Submit to reddit"/></a></span></div><img src="http://feeds.feedburner.com/~r/curphey/~4/XHHSr-YCu2g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.curphey.com/2012/01/kudos-for-guard-brakeman/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.curphey.com/2012/01/kudos-for-guard-brakeman/</feedburner:origLink></item>
	</channel>
</rss>

