<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: OpenID - A Security Story</title>
	<atom:link href="http://www.gnucitizen.org/blog/openid-a-security-story/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gnucitizen.org/blog/openid-a-security-story/</link>
	<description>Information Security Think Tank</description>
	<pubDate>Sat, 30 Aug 2008 10:55:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
		<item>
		<title>By: A Brief Analysis of OpenID at Jon&#8217;s View</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-123140</link>
		<dc:creator>A Brief Analysis of OpenID at Jon&#8217;s View</dc:creator>
		<pubDate>Thu, 31 Jul 2008 05:09:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-123140</guid>
		<description>[...] http://www.gnucitizen.org/blog/openid-a-security-story/ [...]</description>
		<content:encoded><![CDATA[<p>[...] <a href="http://www.gnucitizen.org/blog/openid-a-security-story/" rel="nofollow">http://www.gnucitizen.org/blog.....ity-story/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hijacking OpenID enabled Accounts &#187; Inking&#8217;s Security Blog</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-108849</link>
		<dc:creator>Hijacking OpenID enabled Accounts &#187; Inking&#8217;s Security Blog</dc:creator>
		<pubDate>Mon, 04 Feb 2008 02:28:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-108849</guid>
		<description>[...] has been a long time since I last spoke about OpenID. Today I would like to draw your attention to a tiny problem, which I found among [...]</description>
		<content:encoded><![CDATA[<p>[...] has been a long time since I last spoke about OpenID. Today I would like to draw your attention to a tiny problem, which I found among [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hijacking OpenID enabled Accounts &#124; GNUCITIZEN</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-108557</link>
		<dc:creator>Hijacking OpenID enabled Accounts &#124; GNUCITIZEN</dc:creator>
		<pubDate>Sun, 03 Feb 2008 16:08:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-108557</guid>
		<description>[...] OpenID enabled Accounts published: February 3rd, 2008 It has been a long time since I last spoke about OpenID. Today I would like to draw your attention to a tiny problem, which I found among [...]</description>
		<content:encoded><![CDATA[<p>[...] OpenID enabled Accounts published: February 3rd, 2008 It has been a long time since I last spoke about OpenID. Today I would like to draw your attention to a tiny problem, which I found among [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mario</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-44250</link>
		<dc:creator>mario</dc:creator>
		<pubDate>Wed, 29 Aug 2007 19:00:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-44250</guid>
		<description>OpenID is not an authentication protocol. It is meant solely for homepage URL verification. It's not user-friendly and was never meant as generic login scheme for the web. It restricts itself to the technical experienced, so you can practically rule out phishing scams. The other security gaps might be troublesome, but hey, I see you are running Wordpress anyhow...</description>
		<content:encoded><![CDATA[<p>OpenID is not an authentication protocol. It is meant solely for homepage URL verification. It&#8217;s not user-friendly and was never meant as generic login scheme for the web. It restricts itself to the technical experienced, so you can practically rule out phishing scams. The other security gaps might be troublesome, but hey, I see you are running Wordpress anyhow&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OpenID security issues &#187; Ruby on Rails Security Blog</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-43649</link>
		<dc:creator>OpenID security issues &#187; Ruby on Rails Security Blog</dc:creator>
		<pubDate>Mon, 27 Aug 2007 11:15:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-43649</guid>
		<description>[...] more general article about OpenID security issues can be found on GNUCITIZEN.     &#160;   &#171; RedCloth security thoughts &#124;   [...]</description>
		<content:encoded><![CDATA[<p>[...] more general article about OpenID security issues can be found on GNUCITIZEN.     &nbsp;   &laquo; RedCloth security thoughts |   [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-42173</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Tue, 21 Aug 2007 13:12:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-42173</guid>
		<description>Ronald, I see what u mean. However, I would rather not start with certificates and stuff. It will make it too damn difficult to work it. I cannot see this happening. Moreover, Web2.0 mashups wont fit into tis model. There must be something else... or maybe not. Maybe the Web is just screwed up from day one and this is how it will remain forever.</description>
		<content:encoded><![CDATA[<p>Ronald, I see what u mean. However, I would rather not start with certificates and stuff. It will make it too damn difficult to work it. I cannot see this happening. Moreover, Web2.0 mashups wont fit into tis model. There must be something else&#8230; or maybe not. Maybe the Web is just screwed up from day one and this is how it will remain forever.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ronald</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-42172</link>
		<dc:creator>Ronald</dc:creator>
		<pubDate>Tue, 21 Aug 2007 13:03:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-42172</guid>
		<description>Indeed PDP, that is the biggest problem. Because the end-user is at risk here not the site owner persee. And I've pondered this question for a long time. Preventing it from happening in the browser is next to impossible. If we sitch to a different browser model we could potentially solve it.

I have ideas, but they are only ideas.

One of them is to sign all external content that is being requested. If it's unsigned it fails to load and thereby it prevents CSRF minimaly. The thing is, how do you sign it? if the browser must sign it, it must know the sites key. And there you have a key management problem.

Another idea is to disallow any Javascript inclusion below the head tag -which is the toughest to control in case of an XSS- therby making sure all Javascript inclusions are only done in the head, and they may not be dymanically be altered: so signing them is an option.

So I have a couple of hints &#38; clues, no absolute awnser. There is a lot to be investigated in this area.</description>
		<content:encoded><![CDATA[<p>Indeed PDP, that is the biggest problem. Because the end-user is at risk here not the site owner persee. And I&#8217;ve pondered this question for a long time. Preventing it from happening in the browser is next to impossible. If we sitch to a different browser model we could potentially solve it.</p>
<p>I have ideas, but they are only ideas.</p>
<p>One of them is to sign all external content that is being requested. If it&#8217;s unsigned it fails to load and thereby it prevents CSRF minimaly. The thing is, how do you sign it? if the browser must sign it, it must know the sites key. And there you have a key management problem.</p>
<p>Another idea is to disallow any Javascript inclusion below the head tag -which is the toughest to control in case of an XSS- therby making sure all Javascript inclusions are only done in the head, and they may not be dymanically be altered: so signing them is an option.</p>
<p>So I have a couple of hints &amp; clues, no absolute awnser. There is a lot to be investigated in this area.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41939</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Mon, 20 Aug 2007 15:43:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41939</guid>
		<description>Gareth, yes of course, but what I meant is preventing CSRF on browser level... otherwise we relay on the external site getting their security model right.</description>
		<content:encoded><![CDATA[<p>Gareth, yes of course, but what I meant is preventing CSRF on browser level&#8230; otherwise we relay on the external site getting their security model right.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gareth Heyes</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41938</link>
		<dc:creator>Gareth Heyes</dc:creator>
		<pubDate>Mon, 20 Aug 2007 15:38:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41938</guid>
		<description>@pdp

CSRF can be secured with form tokens and random page names. If the attacker doesn't know what the script is called then he can't perform a CSRF.</description>
		<content:encoded><![CDATA[<p>@pdp</p>
<p>CSRF can be secured with form tokens and random page names. If the attacker doesn&#8217;t know what the script is called then he can&#8217;t perform a CSRF.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Identity 2.0 &#187; Blog Archive &#187; OpenID - A Security Story</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41923</link>
		<dc:creator>Identity 2.0 &#187; Blog Archive &#187; OpenID - A Security Story</dc:creator>
		<pubDate>Mon, 20 Aug 2007 13:46:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41923</guid>
		<description>[...] rest is here: OpenID - A Security Story Identity [...]</description>
		<content:encoded><![CDATA[<p>[...] rest is here: OpenID - A Security Story Identity [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pdp</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41914</link>
		<dc:creator>pdp</dc:creator>
		<pubDate>Mon, 20 Aug 2007 12:53:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41914</guid>
		<description>Jordan, yes preventing CSRF is not an easy task. I personally don't know how this can be secured at browser level. Therefore, we need to relay on the remote website being responsible enough to take the necessary actions. The script you've provided is good but I was thinking is for the browser having the ability to detect the OpenID provider and force it in there.

Gareth, yes OpenID systems are full of CSRF today. It is not even funny. I don't know what developers were thinking when developing these systems. Thanks for the link.</description>
		<content:encoded><![CDATA[<p>Jordan, yes preventing CSRF is not an easy task. I personally don&#8217;t know how this can be secured at browser level. Therefore, we need to relay on the remote website being responsible enough to take the necessary actions. The script you&#8217;ve provided is good but I was thinking is for the browser having the ability to detect the OpenID provider and force it in there.</p>
<p>Gareth, yes OpenID systems are full of CSRF today. It is not even funny. I don&#8217;t know what developers were thinking when developing these systems. Thanks for the link.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gareth Heyes</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41911</link>
		<dc:creator>Gareth Heyes</dc:creator>
		<pubDate>Mon, 20 Aug 2007 12:20:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41911</guid>
		<description>I did a bit of OpenID security testing and I found many providers open to CSRF attacks. I found a exploit against MyOpenID and helped many others fix their problems. But I'm still not confident in OpenID security and providers need to up their game if it is to be ever considered for real world usage.

My exploit can be found here, if anyone finds it interesting:-
http://www.thespanner.co.uk/2007/06/29/openid-security-issues/</description>
		<content:encoded><![CDATA[<p>I did a bit of OpenID security testing and I found many providers open to CSRF attacks. I found a exploit against MyOpenID and helped many others fix their problems. But I&#8217;m still not confident in OpenID security and providers need to up their game if it is to be ever considered for real world usage.</p>
<p>My exploit can be found here, if anyone finds it interesting:-<br />
<a href="http://www.thespanner.co.uk/2007/06/29/openid-security-issues/" rel="nofollow">http://www.thespanner.co.uk/20.....ty-issues/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jordan</title>
		<link>http://www.gnucitizen.org/blog/openid-a-security-story/#comment-41908</link>
		<dc:creator>Jordan</dc:creator>
		<pubDate>Mon, 20 Aug 2007 12:03:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.gnucitizen.org/blog/openid-a-security-story#comment-41908</guid>
		<description>I imagine a variant of this greasemonkey script would work:

http://userscripts.org/scripts/show/1404

At least for forcing HTTPS.  CSRF against identity provider domain requires a bit more thought.  For example -- aren't the open id pictures stored on their domain?  And surely we want to allow linking to the domain in general.  Separating out which requests are potentially malicious CSRF would require all "action" urls to be obvious on the domain.  To be honest, I haven't looked at Open ID yet to know whether that's the case.</description>
		<content:encoded><![CDATA[<p>I imagine a variant of this greasemonkey script would work:</p>
<p><a href="http://userscripts.org/scripts/show/1404" rel="nofollow">http://userscripts.org/scripts/show/1404</a></p>
<p>At least for forcing HTTPS.  CSRF against identity provider domain requires a bit more thought.  For example &#8212; aren&#8217;t the open id pictures stored on their domain?  And surely we want to allow linking to the domain in general.  Separating out which requests are potentially malicious CSRF would require all &#8220;action&#8221; urls to be obvious on the domain.  To be honest, I haven&#8217;t looked at Open ID yet to know whether that&#8217;s the case.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
