<?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: Your cookies are borkt. Seriously.</title>
	<atom:link href="http://trilema.com/2014/your-cookies-are-borkt-seriously/feed/" rel="self" type="application/rss+xml" />
	<link>http://trilema.com/2014/your-cookies-are-borkt-seriously/</link>
	<description>Moving targets for a fast crowd.</description>
	<pubDate>Fri, 24 Apr 2026 07:40:28 +0000</pubDate>
	<generator>http://polimedia.us</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Mircea Popescu</title>
		<link>http://trilema.com/2014/your-cookies-are-borkt-seriously/#comment-97890</link>
		<dc:creator>Mircea Popescu</dc:creator>
		<pubDate>Sun, 02 Feb 2014 16:30:56 +0000</pubDate>
		<guid isPermaLink="false">http://trilema.com/?p=52605#comment-97890</guid>
		<description>No but look,

&lt;blockquote&gt;he just has to make the next request before you do&lt;/blockquote&gt;

&lt;blockquote&gt;Something as simple as a confirm page becomes an unsurmountable obstacle to the attacker.&lt;/blockquote&gt;

So he's made the request before you do, and updated your cookies. Now what ? He has to get you to let him ride again, and he doesn't have enough info to construct the request he needs anyway.

&lt;blockquote&gt;If you chose to invalidate each older nonce after new requests, you’re going to have to store them. Why not.&lt;/blockquote&gt;

&lt;blockquote&gt; which are a) stored&lt;/blockquote&gt;

You only store the latest. There's no requirement that you support tabbed browsing in your logged in site, for one. If what the guy is doing is surfing pics he doesn't actually need to be logged in. If what he;s doing is banking you don't need five tabs open. 

Moreover, you can serialize the requests like anything else, after all simultaneity doesn't exist in the real world. For that matter you can simply log him out if you get requests faster than one a minute, why not ? Nobody said security is convenient to any arbitrary degree of convenience. Let the user learn this.

&lt;blockquote&gt; and isn’t enough to protect from eavesdropping&lt;/blockquote&gt;

There's no way to protect http from eavesdropping, it's designed to be and functions as a plaintext channel. You can either implement end to end encryption like MPEx or else learn to live with the fact - the &lt;strong&gt;fact&lt;/strong&gt; that your communication is plaintext. No matter what you do. A fine example here is the fate of the SR pile of fail (and for that matter : some of the latter scriptkiddies vieing to fill that void of fail actually came up with models such as "paste your gpg secret key in here for security". &lt;a href=http://www.deepdotweb.com/wp-content/uploads/2014/01/avid.png &gt;Not kidding&lt;/a&gt;!)</description>
		<content:encoded><![CDATA[<p>No but look,</p>
<blockquote><p>he just has to make the next request before you do</p></blockquote>
<blockquote><p>Something as simple as a confirm page becomes an unsurmountable obstacle to the attacker.</p></blockquote>
<p>So he's made the request before you do, and updated your cookies. Now what ? He has to get you to let him ride again, and he doesn't have enough info to construct the request he needs anyway.</p>
<blockquote><p>If you chose to invalidate each older nonce after new requests, you’re going to have to store them. Why not.</p></blockquote>
<blockquote><p> which are a) stored</p></blockquote>
<p>You only store the latest. There's no requirement that you support tabbed browsing in your logged in site, for one. If what the guy is doing is surfing pics he doesn't actually need to be logged in. If what he;s doing is banking you don't need five tabs open. </p>
<p>Moreover, you can serialize the requests like anything else, after all simultaneity doesn't exist in the real world. For that matter you can simply log him out if you get requests faster than one a minute, why not ? Nobody said security is convenient to any arbitrary degree of convenience. Let the user learn this.</p>
<blockquote><p> and isn’t enough to protect from eavesdropping</p></blockquote>
<p>There's no way to protect http from eavesdropping, it's designed to be and functions as a plaintext channel. You can either implement end to end encryption like MPEx or else learn to live with the fact - the <strong>fact</strong> that your communication is plaintext. No matter what you do. A fine example here is the fate of the SR pile of fail (and for that matter : some of the latter scriptkiddies vieing to fill that void of fail actually came up with models such as "paste your gpg secret key in here for security". <a href=http://www.deepdotweb.com/wp-content/uploads/2014/01/avid.png >Not kidding</a>!)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pankkake</title>
		<link>http://trilema.com/2014/your-cookies-are-borkt-seriously/#comment-97889</link>
		<dc:creator>pankkake</dc:creator>
		<pubDate>Sun, 02 Feb 2014 16:19:23 +0000</pubDate>
		<guid isPermaLink="false">http://trilema.com/?p=52605#comment-97889</guid>
		<description>Interestingly, you can compare browsers and SSH.

SSH doesn't lie to you. When you connect for the first time to a server, it doesn't accept the certificate, and displays the fingerprint for you to check. Browsers trust external services, where any of them has ultimate authority.

SSH allows you to use a password, or better, a client side-key. (Actually, you can do even more custom stuff if you want.)
SSH is stateful, though you can use it for one-time requests if you want to.
Browsers have nothing of the sort; users have to authenticate with things than can be replayed.
Added bonus: multiplexing.</description>
		<content:encoded><![CDATA[<p>Interestingly, you can compare browsers and SSH.</p>
<p>SSH doesn't lie to you. When you connect for the first time to a server, it doesn't accept the certificate, and displays the fingerprint for you to check. Browsers trust external services, where any of them has ultimate authority.</p>
<p>SSH allows you to use a password, or better, a client side-key. (Actually, you can do even more custom stuff if you want.)<br />
SSH is stateful, though you can use it for one-time requests if you want to.<br />
Browsers have nothing of the sort; users have to authenticate with things than can be replayed.<br />
Added bonus: multiplexing.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pankkake</title>
		<link>http://trilema.com/2014/your-cookies-are-borkt-seriously/#comment-97888</link>
		<dc:creator>pankkake</dc:creator>
		<pubDate>Sun, 02 Feb 2014 16:00:16 +0000</pubDate>
		<guid isPermaLink="false">http://trilema.com/?p=52605#comment-97888</guid>
		<description>If by cookie stealing you mean stealing it from the client computer, yes. Otherwise you can still eavesdrop.

If you chose to invalidate each older nonce after new requests, you're going to have to store them. Why not. However you're probably going to have to handle users opening multiple pages at once, and having multiple browsers (not that hard, store a cookie to distinguish which browser is which). And in the end, the attacker can still make a request instead of you, he just has to make the next request before you do.

In the end, you have a system that is overkill if you want to prevent stealing the cookie from the computer, and isn't enough to protect from eavesdropping; the time based tokens are enough and transport security should take care of the rest.

Any better solution would require browser cooperation or JavaScript.</description>
		<content:encoded><![CDATA[<p>If by cookie stealing you mean stealing it from the client computer, yes. Otherwise you can still eavesdrop.</p>
<p>If you chose to invalidate each older nonce after new requests, you're going to have to store them. Why not. However you're probably going to have to handle users opening multiple pages at once, and having multiple browsers (not that hard, store a cookie to distinguish which browser is which). And in the end, the attacker can still make a request instead of you, he just has to make the next request before you do.</p>
<p>In the end, you have a system that is overkill if you want to prevent stealing the cookie from the computer, and isn't enough to protect from eavesdropping; the time based tokens are enough and transport security should take care of the rest.</p>
<p>Any better solution would require browser cooperation or JavaScript.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
