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

<channel>
	<title>echolibre blog &#187; security</title>
	<atom:link href="http://blog.echolibre.com/category/security/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.echolibre.com</link>
	<description></description>
	<pubDate>Mon, 25 Apr 2011 20:44:15 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>HipHop for PHP, Facebook unveils it&#8217;s magic</title>
		<link>http://blog.echolibre.com/2010/02/hiphop-for-php-facebook-unveils-its-magic/</link>
		<comments>http://blog.echolibre.com/2010/02/hiphop-for-php-facebook-unveils-its-magic/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 18:38:26 +0000</pubDate>
		<dc:creator>David</dc:creator>
		
		<category><![CDATA[APC]]></category>

		<category><![CDATA[Facebook]]></category>

		<category><![CDATA[HipHopPHP]]></category>

		<category><![CDATA[LLVM]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[RoadsendPHP]]></category>

		<category><![CDATA[community]]></category>

		<category><![CDATA[echolibre]]></category>

		<category><![CDATA[industry]]></category>

		<category><![CDATA[innovation]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[phc]]></category>

		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.echolibre.com/?p=791</guid>
		<description><![CDATA[Facebook Releases HipHop for PHP]]></description>
			<content:encoded><![CDATA[<p>After many days of speculations all around the web about Facebook&#8217;s rewrite of PHP, today Haiping Zhao from the Facebook team has announced &#8220;HipHop for PHP&#8221;. The basic idea of HipHop for PHP is that it turns the code you write in PHP into C++ which then can be turned into machine code.</p>
<p>Even though there are others idea that have tried accomplishing the same goal as HipHop for PHP, I believe it is quite safe to assume that Facebook has a large enough user-base to produce code that is solid enough to run and can run well.</p>
<p>The announcement has been made on the <a title="Facebook HipHop For PHP" href="http://developers.facebook.com/news.php?blog=1&amp;story=358">Facebook blog earlier today</a>, and tonight there is going to be the video tech talk that everybody can watch:</p>
<blockquote><p>This evening we&#8217;re hosting a small group of developers to dive deeper into HipHop for PHP and will be streaming this tech talk live. Check back <a title="Facebook HipHop For PHP" href="http://developers.facebook.com/news.php?blog=1&amp;story=358">here</a> around 7:30pm Pacific time if you&#8217;d like to watch.</p></blockquote>
<p>A few questions come to mind even though we haven&#8217;t seen the code just yet. My main concern though is the one of buffer overflows and the security implications of turning PHP code into C++. As they say on the blog, it took nearly 18 months before having a relatively stable version and 3 developers. This is a very short lapse of time to develop a solution used by so many.</p>
<p>Another interest of mine related to this release is how does it compete with the likes of <a title="phc php compiler" href="http://phpcompiler.org">phc</a> or <a title="Roadsend PHP (raven)" href="http://code.roadsend.com/rphp">roadsend php</a>. If it does at all.</p>
<p>However I have noticed on their blog that Facebook has also developed HPHPi which seems to let you use HipHop but without having to actually compile your code before running it (The concept seems a bit like <a title="PHP APC stat" href="http://ie.php.net/manual/en/apc.configuration.php#ini.apc.stat">APC&#8217;s stat</a> on and off switch from the few lines of description), which seems like a quite interesting idea for the development stages.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.echolibre.com/2010/02/hiphop-for-php-facebook-unveils-its-magic/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Practical JSON Format Standard</title>
		<link>http://blog.echolibre.com/2009/04/practical-json-format-standard/</link>
		<comments>http://blog.echolibre.com/2009/04/practical-json-format-standard/#comments</comments>
		<pubDate>Fri, 03 Apr 2009 16:00:33 +0000</pubDate>
		<dc:creator>David</dc:creator>
		
		<category><![CDATA[API]]></category>

		<category><![CDATA[OSS Bar Camp]]></category>

		<category><![CDATA[PHP London]]></category>

		<category><![CDATA[PJSF]]></category>

		<category><![CDATA[echolibre]]></category>

		<category><![CDATA[industry]]></category>

		<category><![CDATA[innovation]]></category>

		<category><![CDATA[performance]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[web3.0]]></category>

		<category><![CDATA[javascript]]></category>

		<category><![CDATA[json]]></category>

		<category><![CDATA[semantics web]]></category>

		<category><![CDATA[standards]]></category>

		<category><![CDATA[technology]]></category>

		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://blog.echolibre.com/?p=339</guid>
		<description><![CDATA[Watch out! The semantic web is on the way, a thought that many (and not just the marketeers) may find daunting . Why? Because system and web app developers that want to take advantage of the semantic web will need to learn a lot of new standards and change the way they work.
I have been [...]]]></description>
			<content:encoded><![CDATA[<p>Watch out! The <em>semantic web</em> is on the way, a thought that many (and not just the marketeers) may find daunting . Why? Because system and web app developers that want to take advantage of the semantic web will need to learn a lot of new standards and change the way they work.</p>
<p>I have been studying and working with web standards (XHTML, RDF, ATOM, RSS) for well over 4 years now, something I am glad of,  because recently something struck me. Conventions are arising, for example DOAP, SKOS and others, that are built on top of the Resource Description Framework otherwise known as <a title="Resource Description Language" href="http://en.wikipedia.org/wiki/RDF" target="_blank">RDF</a>, if they aren&#8217;t, they are usually built on something very similar or related.<span id="more-339"></span></p>
<p>In this blog post I am going to be using the <a title="Friend of a Friend" href="http://www.foaf-project.org/" target="_blank">FOAF</a> standard as an example and base for my proposal. First of all, the Friend Of A Friend standard (FOAF) is a project aimed at creating machine readable pages that describe people. It covers all basis of human interactions and behaviours. From basic profile information - name, mailbox, title, homepage, img, depiction, surname, given name, family name, firstname - to more detailed information as such as web blog, based near, geekcode, publications, etc.  As you can see on their <a title="FOAF specifications 2007" href="http://xmlns.com/foaf/spec/20071002.html" target="_blank">standard description page</a>, it also covers the following personal aspects: Online Account / IM, Projects / Groups and Documents and Images.</p>
<p>For instance, if a web application was to describe me using FOAF it could look something like this:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;foaf:Person</span> <span style="color: #000066;">rdf:about</span>=<span style="color: #ff0000;">&quot;#davidc&quot;</span> <span style="color: #000066;">xmlns:foaf</span>=<span style="color: #ff0000;">&quot;http://xmlns.com/foaf/0.1/&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;foaf:name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>David Coallier<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/foaf:name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;foaf:homepage</span> <span style="color: #000066;">rdf:resource</span>=<span style="color: #ff0000;">&quot;http://echolibre.com&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;foaf:img</span> <span style="color: #000066;">rdf:resource</span>=<span style="color: #ff0000;">&quot;/images/david.jpg&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/foaf:Person<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<h2>The Problem</h2>
<p>Whilst such a standard is clearly easy for a computer to read and does seem a logical fit, it&#8217;s not the easiest for a developer to read. These days, web users are looking for performance, simplicity, ease of use, and so are the developers creating web applications. Considering that XML is heavy to parse using current technologies (Javascript mostly), it makes very little sense for developers to make web applications that are going to be slower due to parsing complex XML nodes. However, <a title="Javascript Object Notation" href="http://json.org" target="_blank">JSON</a> (JavaScript Object Notation) is a lightweight data-interchange format made to carry data over networks with a very small footprint. It has seen massive adoption across the web and is used in widget apps, web apps and various other systems.</p>
<p>As I was talking at <a href="http://blog.echolibre.com/2009/03/slides-from-oss-barcamp/">OSS Bar Camp</a>, something struck me. Developers need a standard. Fact. We need standards for the same reason the industrial revolution had need of machine part standards: to reduce the amount of different solutions to learn in order to achieve the same goal by having everyone do what they do in a standard way. Some may see standards as a way to prevent innovation, I see them as a way to innovate. See &#8220;<a title="W3c Web standards slides/talk" href="http://www.w3.org/2006/Talks/07-ausweb-IH/Slides.pdf" target="_blank">why are web standards important</a>&#8221; by the W3C, a good read.</p>
<p>So, developers need standards. Great, now what currently exists? Development standards (IDE, Documentation, tools, design patterns, unit testing, etc.), Output standards (XHTML, CSS, etc), XML based standards (Namespaces, Schemas, XPath, XQuery, XSLT, DOM, XML Base, RDF(s), etc.), usual web architectural principles, and many more. One thing that is missing though is the standards that allow developers to easily and rapidly work with each other&#8217;s web application.</p>
<p><strong>If &#8220;Web 2.0&#8243; was characterised by the democratisation of content, we feel strongly that the next stage of web evolution, &#8220;Web 3.0&#8243; for want of a better word, will be characterised by the democratisation of data and applications.</strong></p>
<h2>The Solution</h2>
<p>A standard would make that democratisation a little easier. I&#8217;ve decided that I am going to be working on this over the next few months with the help of a few others as such as <a title="Ed Finkler CERIAS Purdue" href="http://www.cerias.purdue.edu/about/people/directory.php?class=staff;id=8" target="_blank">Ed Finkler from the CERIAS</a> (Also the creator of Spaz and all round awesome guy).</p>
<p>So, today I&#8217;m putting forward the need for PJFS - The Practical JSON Format Standard. It will strive to make heavy XML based standards more developer friendly and lighter by creating new, fresh and adapted Practical JSON Formatted Standardized outputs.</p>
<p>For instance, the FOAF example I drew above, is a great example of the need for PJFS. Consider the following from a developers perspective:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code"><pre class="json" style="font-family:monospace;">{
    &quot;Person&quot;: {
        &quot;name&quot;:&quot;David Coallier&quot;,
        &quot;homepage&quot;:&quot;http:\/\/echolibre.com&quot;,
        &quot;img&quot;:&quot;http:\/\/echolibre.com\/images\/david.jpg&quot;
    }
}</pre></td></tr></table></div>

<p>It&#8217;s easy to read but also easy to parse. It&#8217;s fast and reliable. I am well aware of the implications of this post and I do not underestimate the complexity of existing standards. I think each one of them, as complex as they can be, are needed and are something we should all aim to use. However, computers are not completely independent ( just yet!) and the middlemen (developers and users) should not be forgotten.</p>
<p>The implications of JSON formatting standards mean that it&#8217;s adoption will make things easier for developers by reducing the amount of work they have to do, and remove the learning curve on new object structures for every web service the want to use.</p>
<p>The first task I will start working on is a PJFS for micro-blogging web services. The likes of identi.ca have already started in the general direction by &#8220;copying&#8221; the behaviours of the Twitter API, however many other micro-blogging platforms are still very independent and a unified standard could help the tools developers creating more flexible tools that would cover more networks.</p>
<p>So, remember where you heard about PJFS first <img src='http://blog.echolibre.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> It&#8217;s there to create standard object names, properties, variables, class members names to JSON elements so that developers can expect something identically formed when requesting JSON information from a webservice.</p>
<p>If you&#8217;d like to be involved leave a comment or catch me on twitter - <a title="David Coallier on Twitter" href="http://twitter.com/davidcoallier">@davidcoallier</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.echolibre.com/2009/04/practical-json-format-standard/feed/</wfw:commentRss>
		</item>
		<item>
		<title>IIA Web Development Working Group</title>
		<link>http://blog.echolibre.com/2009/01/iia-web-development-working-group/</link>
		<comments>http://blog.echolibre.com/2009/01/iia-web-development-working-group/#comments</comments>
		<pubDate>Mon, 26 Jan 2009 18:53:20 +0000</pubDate>
		<dc:creator>Eamon</dc:creator>
		
		<category><![CDATA[Irish Internet Association]]></category>

		<category><![CDATA[Web Development Working Group]]></category>

		<category><![CDATA[echolibre]]></category>

		<category><![CDATA[industry]]></category>

		<category><![CDATA[leadership]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[data protection]]></category>

		<category><![CDATA[IIA]]></category>

		<category><![CDATA[WebDevWG]]></category>

		<guid isPermaLink="false">http://blog.echolibre.com/?p=155</guid>
		<description><![CDATA[Today the Irish Internet Association announced the setting up of a new working group for web development. The main aim of the group is to educate decision makers on the web development process. This will cover areas such as server-side technologies, front-end technologies, development processes, best practices and standards in web, security and data protection.
Anyone [...]]]></description>
			<content:encoded><![CDATA[<p><img style="padding-left:10px" title="Irish Internet Association" src="http://blog.echolibre.com/wp-content/uploads/2009/01/iia-logo1.png" alt="iia-logo1" width="99" height="120" align="right" />Today the Irish Internet Association announced the setting up of a new <a title="IIA Web Development Working Group" href="http://www.iia.ie/about-us/working-groups/web-development-working-group/" target="_self">working group for web development</a>. The main aim of the group is to educate decision makers on the web development process. This will cover areas such as server-side technologies, front-end technologies, development processes, best practices and standards in web, security and data protection.</p>
<p>Anyone who has ever worked with a client to build a web site or web application will know that there are areas where the client could benefit from having a better understanding of what is involved in the development process. Ultimately, when a client is better advised in these areas, they can make more informed decisions. This also can be beneficial to the development company or freelancer, as it can ensure better communication from the beginning of a project.<span id="more-155"></span></p>
<p>The <a title="About the IIA " href="http://www.iia.ie/about-us/">Irish Internet Association</a> is&#8230;</p>
<blockquote><p>the professional body for those conducting business via the Internet from Ireland. The IIA provides leadership to enterprises and society conducting business in Ireland. The aim of the Association is to Connect, Inform and Promote.</p></blockquote>
<p>I&#8217;m delighted to have been asked by the IIA to chair this working group. I&#8217;m looking forward to working with what I&#8217;m sure will be a talented team of professionals from development, security, and decision making backgrounds.</p>
<p>If you would like to be involved in the Web Development Working Group, you can drop Roseanne Smith of the IIA an email on <a title="email Roseanne Smith @ IIA" href="mailto:members@iia.ie">members@iia.ie</a> or you can contact me on <a href="mailto:eamon@echolibre.com">eamon@echolibre.com</a> .</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.echolibre.com/2009/01/iia-web-development-working-group/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Twitter, user privacy, it&#8217;s implications</title>
		<link>http://blog.echolibre.com/2009/01/the-importance-behind-user-privacy/</link>
		<comments>http://blog.echolibre.com/2009/01/the-importance-behind-user-privacy/#comments</comments>
		<pubDate>Wed, 07 Jan 2009 22:51:20 +0000</pubDate>
		<dc:creator>David</dc:creator>
		
		<category><![CDATA[OSS Bar Camp]]></category>

		<category><![CDATA[industry]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[twitter]]></category>

		<category><![CDATA[attacks]]></category>

		<category><![CDATA[schemes]]></category>

		<guid isPermaLink="false">http://blog.echolibre.com/?p=113</guid>
		<description><![CDATA[Over the past number of days a few issues have arisen around Twitter&#8217;s security platform. Most of the security &#8220;problems&#8221; discovered were either minor or required a high level of social engineering. One thing that has been realized and that is becoming common knowledge, is that once you are logged in to twitter, as soon [...]]]></description>
			<content:encoded><![CDATA[<p>Over the past number of days a few issues have arisen around <a title="ReadWriteWeb" href="http://short.ie/rrw-twitter-security" target="_blank">Twitter&#8217;s security</a> platform. Most of the security &#8220;problems&#8221; discovered were either minor or required a high level of social engineering. One thing that has been realized and that is becoming common knowledge, is that once you are logged in to twitter, as soon as you visit another web site, that other site can make an Ajax request and retrieve your user profile.</p>
<p>Personally, I believe that this will be one of the features of web3.0*. The ability to have a single login, not having to log in anywhere and your profile will be recognized, etc. (<a title="OAuth" href="http://oauth.org" target="_blank">OAuth</a>, <a title="Open ID" href="http://openid.net" target="_blank">OpenID</a>, etc). We could almost say browser-identifiable-security where one browser window (with as many tabs as you want) could be associated with a single account and all websites you visit would know about you and your information. The idea itself is very neat, but brings with it issues around user privacy.</p>
<p><span id="more-113"></span>Whilst this is a really cool concept from a developers point of view, I can easily see why anyone would be scared of the ability to retrieve your <a title="Twitter HI demo" href="http://icant.co.uk/sandbox/twitter-hi-demo.html" target="_blank">Twitter profile from within any webpages</a>. I have found a few other services and web apps with public APIs that are also affected by that sort of bug &#8211;  if they consent to being named, I&#8217;ll do so here.</p>
<p>The type of vulnerability we&#8217;re talking about here is commonly known as a <a title="Cross Site Scripting" href="http://en.wikipedia.org/wiki/Cross-site_request_forgery" target="_blank">CSRF vulnerability</a> . Twitter has some protection against this attack on the forms that are used to write to the profile settings, direct messages, etc. It&#8217;s rather trivial to protect from CSRF &#8212; some good methods out there include adding encrypted tokens as well as verifying cookies &#8212; but the fact that <a title="Twitter status user_timeline" href="http://twitter.com/statuses/user_timeline.xml" target="_blank">http://twitter.com/statuses/user_timeline.xml</a> is accessible by anyone logged in to Twitter, it means that it will also be available to the websites they visit.</p>
<p>For instance, using <a title="JQuery Javascript Framework" href="http://jquery.com" target="_blank">jQuery</a>,  a malicious website could run something as such as:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="php" style="font-family:monospace;">$<span style="color: #009900;">&#40;</span>document<span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span>ready<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
$<span style="color: #339933;">.</span>getJSON<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;http://twitter.com/statuses/user_timeline.json, null, function(data) {
// Do something interesting with the user data you have just collected
// Maybe ajax request to your own server to insert the data?
});
});</span></pre></td></tr></table></div>

<p>Using this you could easily track anyone who comes to your website and also retrieve a list of their friends if you feel a bit more &#8230; creative.</p>
<p>Basically the process is as follows:</p>
<div id="attachment_149" class="wp-caption alignnone" style="width: 630px"> <img class="size-full wp-image-149" title="Twitter Attack Scheme Diagram " src="http://blog.echolibre.com/wp-content/uploads/2009/01/twitter_vulnerabilities.png" alt="Twitter Attack Scheme Diagram " width="620" height="300" /> <p class="wp-caption-text">Twitter Attack Scheme Diagram</p></div>
<p>1. The user logs in Twitter<br />
2. Twitter creates a cookie and logs the user in<br />
3. The user (while still logged in to Twitter) visits a malicious website<br />
4. The malicious website uses the weak-cookie and retrieves information about the user<br />
5. The malicious website outputs the data as usual and says nothing to the user.</p>
<p>One of the main implications of this openness and lack of user communication is user privacy. Many people could potentially be exposed with their names/profiles available in the wild. This will affect their privacy in a way that websites they visit could become known to everyone (And do we know how bad this could be in terms of reputation&#8230; :P)</p>
<p>I can think of two possible solutions to this problem. First, ensure a stronger authentication system for retrieving any API methods and even reading user information &#8212; not allowing the main website cookie to be used with the API would be a start. It&#8217;s a bit radical, but it may be the only option. A second option might be that the user gets choice whether to make their profile cross session available or not.</p>
<p>I&#8217;m not sure what they&#8217;ll choose but today after a few rants and playing around, I realized that this issue will probably become mainstream with other apps in the months and years to come, but only if the user is informed and their privacy respected.</p>
<p>* Some ideas from this post will be in my talk on Web 3.0 at <a title="Laura Czajkowski OSS Barcamp Dublin Event" href="http://short.ie/ossbarcamp" target="_blank">ossbarcamp</a></p>
<p>[Thanks to <a title="He likes turtles" href="http://short.ie/i-like-turtles">Turtle Kid</a> and the awesome <a href="http://short.ie/war-games-awesome">War Games</a> ]</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.echolibre.com/2009/01/the-importance-behind-user-privacy/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Skitch.com, security alert? Alert the team</title>
		<link>http://blog.echolibre.com/2008/12/skitchcom-security-alert-alert-the-team/</link>
		<comments>http://blog.echolibre.com/2008/12/skitchcom-security-alert-alert-the-team/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 10:39:42 +0000</pubDate>
		<dc:creator>David</dc:creator>
		
		<category><![CDATA[echolibre]]></category>

		<category><![CDATA[industry]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[audits]]></category>

		<category><![CDATA[skitch]]></category>

		<category><![CDATA[xss]]></category>

		<guid isPermaLink="false">http://blog.echolibre.com/?p=73</guid>
		<description><![CDATA[About two weeks ago I was uploading something to skitch.com and saw an inline button. So being a security person myself, I decided to try some XSS on their fields. 1, 2, 3, 4 tries done, I was able to load some of my javascript from a remote host and the nice thing is that [...]]]></description>
			<content:encoded><![CDATA[<p>About two weeks ago I was uploading something to <a title="Skitch" href="http://skitch.com" target="_blank">skitch.com</a> and saw an inline button. So being a security person myself, I decided to try some <a title="XSS on wikipedia Cross site scripting" href="http://en.wikipedia.org/wiki/Cross-site_scripting">XSS</a> on their fields. 1, 2, 3, 4 tries done, I was able to load some of my javascript from a remote host and the nice thing is that this was a public URL. So for fun I sent the URL to a few friends. What that script was really doing was taking their cookies, writing to a file on my server and sending them back to the main page of <a title="Skitch" href="http://skitch.com" target="_blank">skitch</a>. So basically what people told me was that the link didn&#8217;t work, they were sent to the main page. In the meantime I was finishing my PoC by editing my cookie with their cookies. After about 10 minutes I had changed their first name and last name. <span id="more-73"></span></p>
<p>Ok this is a trivial remote code injection / theft and sensitive data access/loss attack, but what I wanted to say in this post is the speed of answer and resolution from the skitch team. After putting a nice little security audit/report and sending it to them, I got an answer from them about an hour later saying thanks for all this and they had fixed the problem. They even thanked me for telling them and said, I quote:</p>
<blockquote><p>As a security precaution, we have also changed our &#8220;masterkey&#8221;<br />
that is the basis of all session-id-generation and keys for<br />
automated logins, as well as invalidated all existing sessions<br />
to make sure no user already compromised by such an exploit<br />
are compromised for future logins.</p>
<p>As we&#8217;re constantly fighting against XSS-attacks, being a site<br />
driven by user content, humble humans still fail at times, and<br />
we would love and welcome any future bugreports you might be<br />
able to come up with revealing similiar problems in our code!</p></blockquote>
<p>Fairplay to Skitch.com and it&#8217;s team. This is very responsive, open minded and nice at the same time. Well done <img src='http://blog.echolibre.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.echolibre.com/2008/12/skitchcom-security-alert-alert-the-team/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

