<?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/"
		>
<channel>
	<title>Comments on: Fixing browser security: SameRefererOnly, and DNS Pinning</title>
	<atom:link href="http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 09 Feb 2012 06:55:33 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
	<item>
		<title>By: legoitalia</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-285684</link>
		<dc:creator>legoitalia</dc:creator>
		<pubDate>Fri, 18 Feb 2011 06:42:25 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-285684</guid>
		<description>Putting security features into URLs might work. It’s probably dangerous because URLs get mailed around, bookmarked, and probably other things.
The real point however is that you should not need to do it. If all browsers supported SameRefererOnly you could just flip the switch and be done.</description>
		<content:encoded><![CDATA[<p>Putting security features into URLs might work. It’s probably dangerous because URLs get mailed around, bookmarked, and probably other things.<br />
The real point however is that you should not need to do it. If all browsers supported SameRefererOnly you could just flip the switch and be done.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tack</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253659</link>
		<dc:creator>tack</dc:creator>
		<pubDate>Wed, 08 Aug 2007 18:47:30 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253659</guid>
		<description>My hand-rolling example was there just to bring up the point that you can&#039;t trust that the client side will play ball.  Not as an example of a specific attack in this context.  Joe Walker proves my point unintentionally:
&lt;i&gt;If all browsers supported SameRefererOnly you could just flip the switch and be done.&lt;/i&gt;
All browsers supporting something... the same way... are we kidding ourselves?  We can&#039;t even be sure that what we&#039;re dealing with is a browser at all.  Depending on a client side app to solve our security problems is unwise.</description>
		<content:encoded><![CDATA[<p>My hand-rolling example was there just to bring up the point that you can&#8217;t trust that the client side will play ball.  Not as an example of a specific attack in this context.  Joe Walker proves my point unintentionally:<br />
<i>If all browsers supported SameRefererOnly you could just flip the switch and be done.</i><br />
All browsers supporting something&#8230; the same way&#8230; are we kidding ourselves?  We can&#8217;t even be sure that what we&#8217;re dealing with is a browser at all.  Depending on a client side app to solve our security problems is unwise.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dmitry</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253632</link>
		<dc:creator>Dmitry</dc:creator>
		<pubDate>Wed, 08 Aug 2007 10:14:25 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253632</guid>
		<description>and can you check out Host header in your application?
Like here: http://www.servletsuite.com/servlets/hostflt.htm
On the picture above: Host header still points to the original site, rather than to attacked. So site can simply discard requests with a wrong Host header</description>
		<content:encoded><![CDATA[<p>and can you check out Host header in your application?<br />
Like here: <a href="http://www.servletsuite.com/servlets/hostflt.htm" rel="nofollow">http://www.servletsuite.com/servlets/hostflt.htm</a><br />
On the picture above: Host header still points to the original site, rather than to attacked. So site can simply discard requests with a wrong Host header</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe Walker</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253631</link>
		<dc:creator>Joe Walker</dc:creator>
		<pubDate>Wed, 08 Aug 2007 09:11:02 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253631</guid>
		<description>@Kishore: my earlier reply was to tack
Putting security features into URLs might work. It&#039;s probably dangerous because URLs get mailed around, bookmarked, and probably other things.
The real point however is that you should not need to do it. If all browsers supported SameRefererOnly you could just flip the switch and be done.</description>
		<content:encoded><![CDATA[<p>@Kishore: my earlier reply was to tack<br />
Putting security features into URLs might work. It&#8217;s probably dangerous because URLs get mailed around, bookmarked, and probably other things.<br />
The real point however is that you should not need to do it. If all browsers supported SameRefererOnly you could just flip the switch and be done.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kishore Senji</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253629</link>
		<dc:creator>Kishore Senji</dc:creator>
		<pubDate>Wed, 08 Aug 2007 07:32:18 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253629</guid>
		<description>I was not talking about hand-rolling issue. From the reason, that was mentioned for the Referers not working, it sounded like a hacker website embeds a link to a genuine site that the user already logged in to (in another tab or used remember me). The cookies are sent to the genuine site and things are done on behalf of the hacker site by the consent of the user without the user knowing it. For this thing you mentioned Referrer is not a good idea because they can be compromised as well. So, that why I was referring to always expect a token in all the urls. If the genuine site is visited by the user, all the urls would have tokens in them. If the hacker site tries to embed a link to that genuine site the hacker site cannot possible form a valid url to execute the CSRF stuff.  Please let me know if I&#039;m missing something here.</description>
		<content:encoded><![CDATA[<p>I was not talking about hand-rolling issue. From the reason, that was mentioned for the Referers not working, it sounded like a hacker website embeds a link to a genuine site that the user already logged in to (in another tab or used remember me). The cookies are sent to the genuine site and things are done on behalf of the hacker site by the consent of the user without the user knowing it. For this thing you mentioned Referrer is not a good idea because they can be compromised as well. So, that why I was referring to always expect a token in all the urls. If the genuine site is visited by the user, all the urls would have tokens in them. If the hacker site tries to embed a link to that genuine site the hacker site cannot possible form a valid url to execute the CSRF stuff.  Please let me know if I&#8217;m missing something here.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe Walker</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253627</link>
		<dc:creator>Joe Walker</dc:creator>
		<pubDate>Wed, 08 Aug 2007 07:02:43 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253627</guid>
		<description>CSRF is a problem that crops up because *someone-elses* browser isn&#039;t as careful with cookies as you would like it to be. The hand-roll issue isn&#039;t relevant here.

If you are hand-rolling requests and as a result of sending requests to 2 websites at the same time get conned by one into sending a request to the other that you didn&#039;t want to, then you deserve all you get. This proposal does not help that situation.</description>
		<content:encoded><![CDATA[<p>CSRF is a problem that crops up because *someone-elses* browser isn&#8217;t as careful with cookies as you would like it to be. The hand-roll issue isn&#8217;t relevant here.</p>
<p>If you are hand-rolling requests and as a result of sending requests to 2 websites at the same time get conned by one into sending a request to the other that you didn&#8217;t want to, then you deserve all you get. This proposal does not help that situation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kishore Senji</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253625</link>
		<dc:creator>Kishore Senji</dc:creator>
		<pubDate>Wed, 08 Aug 2007 06:57:01 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253625</guid>
		<description>Why not use a per session token part of the url. The token will be validated before performing an action on the server side and that way there is no way a hacker site would be able to make a request forgery call as it cannot get (or guess) the per session token.</description>
		<content:encoded><![CDATA[<p>Why not use a per session token part of the url. The token will be validated before performing an action on the server side and that way there is no way a hacker site would be able to make a request forgery call as it cannot get (or guess) the per session token.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: tack</title>
		<link>http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning/comment-page-1#comment-253615</link>
		<dc:creator>tack</dc:creator>
		<pubDate>Wed, 08 Aug 2007 00:16:01 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/fixing-browser-security-samerefereronly-and-dns-pinning#comment-253615</guid>
		<description>&lt;i&gt;However if we move the checking into the browser, then we should be able to instruct browsers to be more careful what they do without our cookies.&lt;/i&gt;

We have no control over the browser.  A malicious actor could be writing out posts and gets by hand and sending them along via telnet/netcat for all we know.  Or our users could be running a custom build of firefox that some attacker provided them via a Man in the Middle attack when they upgraded.

Trusting that the user agent will provide security solutions for us is naive.  The only environment we have any amount of control over is the server.  And that&#039;s the only place we have any amount of confidence that our application is running the way we like it.

The browser is a great place to do things we aren&#039;t depending on going as planned from a security standpoint.  But only that.</description>
		<content:encoded><![CDATA[<p><i>However if we move the checking into the browser, then we should be able to instruct browsers to be more careful what they do without our cookies.</i></p>
<p>We have no control over the browser.  A malicious actor could be writing out posts and gets by hand and sending them along via telnet/netcat for all we know.  Or our users could be running a custom build of firefox that some attacker provided them via a Man in the Middle attack when they upgraded.</p>
<p>Trusting that the user agent will provide security solutions for us is naive.  The only environment we have any amount of control over is the server.  And that&#8217;s the only place we have any amount of confidence that our application is running the way we like it.</p>
<p>The browser is a great place to do things we aren&#8217;t depending on going as planned from a security standpoint.  But only that.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

