<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments for WebstersProdigy</title>
	<atom:link href="http://webstersprodigy.net/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://webstersprodigy.net</link>
	<description>Colored Hat. New post roughly every other Friday</description>
	<lastBuildDate>Sun, 19 May 2013 18:09:05 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>Comment on .NET MVC AntiforgeryToken CSRF Testing by webstersprodigy</title>
		<link>http://webstersprodigy.net/2013/02/14/mvc-antiforgery/comment-page-1/#comment-2029</link>
		<dc:creator><![CDATA[webstersprodigy]]></dc:creator>
		<pubDate>Sun, 19 May 2013 18:09:05 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2113#comment-2029</guid>
		<description><![CDATA[There are a lot of PHP frameworks and a lot of them seem to try to mitigate CSRF in a different way. The principles are the same though. For it to be effective for multi-users, the nonce should be tied to the auth. A good generic design can be as simple as (sha512(sessionCookie) == postNonce)]]></description>
		<content:encoded><![CDATA[<p>There are a lot of PHP frameworks and a lot of them seem to try to mitigate CSRF in a different way. The principles are the same though. For it to be effective for multi-users, the nonce should be tied to the auth. A good generic design can be as simple as (sha512(sessionCookie) == postNonce)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on .NET MVC AntiforgeryToken CSRF Testing by mall</title>
		<link>http://webstersprodigy.net/2013/02/14/mvc-antiforgery/comment-page-1/#comment-2024</link>
		<dc:creator><![CDATA[mall]]></dc:creator>
		<pubDate>Sun, 19 May 2013 12:26:36 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2113#comment-2024</guid>
		<description><![CDATA[can you show how this CSRF nonce should be tied to the user&#039;s session in PHP? ....ASP.NET it&#039;s  quite strange to me........Thanks.]]></description>
		<content:encoded><![CDATA[<p>can you show how this CSRF nonce should be tied to the user&#8217;s session in PHP? &#8230;.ASP.NET it&#8217;s  quite strange to me&#8230;&#8230;..Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common .NET ViewstateUserKey CSRF Issue by webstersprodigy</title>
		<link>http://webstersprodigy.net/2013/03/21/common-net-viewstateuserkey-csrf-issue/comment-page-1/#comment-1952</link>
		<dc:creator><![CDATA[webstersprodigy]]></dc:creator>
		<pubDate>Thu, 16 May 2013 20:35:17 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2133#comment-1952</guid>
		<description><![CDATA[It should be ok if you set viewstateuserkey to sessionID in forms auth because in that case ASP.NET_SessionId is used for auth. It&#039;s important to understand writing a cookie is a lot easier than reading a cookie. So if the victim uses forms auth, then yes, an attacker could still write over the sessionID cookie, but at that point the victim is no longer logged in and CSRF isn&#039;t as relevant.]]></description>
		<content:encoded><![CDATA[<p>It should be ok if you set viewstateuserkey to sessionID in forms auth because in that case ASP.NET_SessionId is used for auth. It&#8217;s important to understand writing a cookie is a lot easier than reading a cookie. So if the victim uses forms auth, then yes, an attacker could still write over the sessionID cookie, but at that point the victim is no longer logged in and CSRF isn&#8217;t as relevant.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common .NET ViewstateUserKey CSRF Issue by Pawel</title>
		<link>http://webstersprodigy.net/2013/03/21/common-net-viewstateuserkey-csrf-issue/comment-page-1/#comment-1948</link>
		<dc:creator><![CDATA[Pawel]]></dc:creator>
		<pubDate>Thu, 16 May 2013 18:14:37 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2133#comment-1948</guid>
		<description><![CDATA[What should be done in a scenario with forms authentication? If attacker hijacks formsauth cookie, wouldn&#039;t it be the same case like hijacking the ASP.NET_SessionId?]]></description>
		<content:encoded><![CDATA[<p>What should be done in a scenario with forms authentication? If attacker hijacks formsauth cookie, wouldn&#8217;t it be the same case like hijacking the ASP.NET_SessionId?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common .NET ViewstateUserKey CSRF Issue by Murali</title>
		<link>http://webstersprodigy.net/2013/03/21/common-net-viewstateuserkey-csrf-issue/comment-page-1/#comment-1925</link>
		<dc:creator><![CDATA[Murali]]></dc:creator>
		<pubDate>Wed, 15 May 2013 16:37:31 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2133#comment-1925</guid>
		<description><![CDATA[Hmm, I see. So the key needs to be tightly coupled with the auth.]]></description>
		<content:encoded><![CDATA[<p>Hmm, I see. So the key needs to be tightly coupled with the auth.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common .NET ViewstateUserKey CSRF Issue by webstersprodigy</title>
		<link>http://webstersprodigy.net/2013/03/21/common-net-viewstateuserkey-csrf-issue/comment-page-1/#comment-1921</link>
		<dc:creator><![CDATA[webstersprodigy]]></dc:creator>
		<pubDate>Wed, 15 May 2013 14:53:38 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2133#comment-1921</guid>
		<description><![CDATA[It shouldn&#039;t matter. Assuming the key is constant between users and &quot;session&quot; is not used for auth, then $attacker could just replace $victim&#039;s values as his own and the application has no way to distinguish.]]></description>
		<content:encoded><![CDATA[<p>It shouldn&#8217;t matter. Assuming the key is constant between users and &#8220;session&#8221; is not used for auth, then $attacker could just replace $victim&#8217;s values as his own and the application has no way to distinguish.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common .NET ViewstateUserKey CSRF Issue by Murali</title>
		<link>http://webstersprodigy.net/2013/03/21/common-net-viewstateuserkey-csrf-issue/comment-page-1/#comment-1918</link>
		<dc:creator><![CDATA[Murali]]></dc:creator>
		<pubDate>Wed, 15 May 2013 11:48:45 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2133#comment-1918</guid>
		<description><![CDATA[How about encrypting Session ID with a server secret key and using the encrypted value as the viewstateuserkey?]]></description>
		<content:encoded><![CDATA[<p>How about encrypting Session ID with a server secret key and using the encrypted value as the viewstateuserkey?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common OAuth issue you can use to take over accounts by Egor Homakov (@homakov)</title>
		<link>http://webstersprodigy.net/2013/05/09/common-oauth-issue-you-can-use-to-take-over-accounts/comment-page-1/#comment-1812</link>
		<dc:creator><![CDATA[Egor Homakov (@homakov)]]></dc:creator>
		<pubDate>Sat, 11 May 2013 09:22:01 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2207#comment-1812</guid>
		<description><![CDATA[lsd lol. There are 2 kinds of bugs. 1st - CSRF for no state (http://homakov.blogspot.ru/2012/07/saferweb-most-common-oauth2.html) and 2nd Facebook login fixation. It cannot be fixed w/o fb efforts, so their answer is unbelievable]]></description>
		<content:encoded><![CDATA[<p>lsd lol. There are 2 kinds of bugs. 1st &#8211; CSRF for no state (<a href="http://homakov.blogspot.ru/2012/07/saferweb-most-common-oauth2.html" rel="nofollow">http://homakov.blogspot.ru/2012/07/saferweb-most-common-oauth2.html</a>) and 2nd Facebook login fixation. It cannot be fixed w/o fb efforts, so their answer is unbelievable</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common OAuth issue you can use to take over accounts by Stephen Sclafani</title>
		<link>http://webstersprodigy.net/2013/05/09/common-oauth-issue-you-can-use-to-take-over-accounts/comment-page-1/#comment-1790</link>
		<dc:creator><![CDATA[Stephen Sclafani]]></dc:creator>
		<pubDate>Fri, 10 May 2013 17:54:13 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2207#comment-1790</guid>
		<description><![CDATA[Back in 2009 I report a vulnerability to Facebook in their pre-OAuth Facebook Connect that was very smiler to the attack you describe: An attacker could force a user to login to a Facebook account and then finish the connection process with any website that had implemented Facebook Connect through a series of additional CSRF attacks. I advised Facebook to implement login CSRF protection and in response they added the &quot;lsd&quot; parameter to their logged out forms. However, the check for the parameter was never turned on. The explanation that was given to me at the time was that doing so would break desktop and other such apps. Four years later and the parameter is still being sent unchecked for.]]></description>
		<content:encoded><![CDATA[<p>Back in 2009 I report a vulnerability to Facebook in their pre-OAuth Facebook Connect that was very smiler to the attack you describe: An attacker could force a user to login to a Facebook account and then finish the connection process with any website that had implemented Facebook Connect through a series of additional CSRF attacks. I advised Facebook to implement login CSRF protection and in response they added the &#8220;lsd&#8221; parameter to their logged out forms. However, the check for the parameter was never turned on. The explanation that was given to me at the time was that doing so would break desktop and other such apps. Four years later and the parameter is still being sent unchecked for.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Common OAuth issue you can use to take over accounts by webstersprodigy</title>
		<link>http://webstersprodigy.net/2013/05/09/common-oauth-issue-you-can-use-to-take-over-accounts/comment-page-1/#comment-1785</link>
		<dc:creator><![CDATA[webstersprodigy]]></dc:creator>
		<pubDate>Fri, 10 May 2013 14:07:15 +0000</pubDate>
		<guid isPermaLink="false">http://webstersprodigy.net/?p=2207#comment-1785</guid>
		<description><![CDATA[I totally agree this is a Facebook bug, but it&#039;s also a bug with people who don&#039;t apply CSRF protection correctly. Without this you can do almost the same attack in several scenarios, like MiTM. But Facebook having CSRF on the login makes it worse.

I reported a repro (the above text almost) to Facebook last January. They basically said, yeah, it would be good to have csrf protection on login, but they&#039;ve been aware of it for some time and it&#039;s more an issue with the sites that use them for OAuth. Maybe I&#039;ll update the post with some of this. Anyway, this is the second bug I&#039;ve reported to FB. The first landed me on the wall but was before a bug bounty program, this one didn&#039;t qualify :)]]></description>
		<content:encoded><![CDATA[<p>I totally agree this is a Facebook bug, but it&#8217;s also a bug with people who don&#8217;t apply CSRF protection correctly. Without this you can do almost the same attack in several scenarios, like MiTM. But Facebook having CSRF on the login makes it worse.</p>
<p>I reported a repro (the above text almost) to Facebook last January. They basically said, yeah, it would be good to have csrf protection on login, but they&#8217;ve been aware of it for some time and it&#8217;s more an issue with the sites that use them for OAuth. Maybe I&#8217;ll update the post with some of this. Anyway, this is the second bug I&#8217;ve reported to FB. The first landed me on the wall but was before a bug bounty program, this one didn&#8217;t qualify :)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
