<?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: TLS renegotiation attack. More bad news for SSL</title>
	<atom:link href="http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/</link>
	<description>A blog by Schuberg Philis colleagues</description>
	<lastBuildDate>Wed, 25 Jan 2012 15:13:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
	<item>
		<title>By: MitM Plaintext Injection Vulnerability in TLS (openssl) &#171; waffle</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1834</link>
		<dc:creator>MitM Plaintext Injection Vulnerability in TLS (openssl) &#171; waffle</dc:creator>
		<pubDate>Sun, 13 Dec 2009 12:26:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1834</guid>
		<description>[...] TLS renegotiation attack. More bad news for SSL &#124; Cupfighter.net [...]</description>
		<content:encoded><![CDATA[<p>[...] TLS renegotiation attack. More bad news for SSL | Cupfighter.net [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frank Breedijk</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1785</link>
		<dc:creator>Frank Breedijk</dc:creator>
		<pubDate>Fri, 11 Dec 2009 10:36:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1785</guid>
		<description>The attack works with client site certificates if the server allows renegotiation. Since the certificate is sent in the replayed client hello message and subsequent handshake an attacker would be able to execute a reuest of his liking and still authenticate with the client certificate. 
A TLS MitM attack where the attacker can inject arbitraty data before the clients original request is very feasable. Client site certificates do not change this, on fact, the first demonstrated attacks where against webservers that requested client side certs.</description>
		<content:encoded><![CDATA[<p>The attack works with client site certificates if the server allows renegotiation. Since the certificate is sent in the replayed client hello message and subsequent handshake an attacker would be able to execute a reuest of his liking and still authenticate with the client certificate.<br />
A TLS MitM attack where the attacker can inject arbitraty data before the clients original request is very feasable. Client site certificates do not change this, on fact, the first demonstrated attacks where against webservers that requested client side certs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sylvain Maret</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1474</link>
		<dc:creator>Sylvain Maret</dc:creator>
		<pubDate>Sun, 29 Nov 2009 22:17:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1474</guid>
		<description>Thanks for this nice article. 

A have a question: Does this attacks works if we use mutual SSL Client Authentication with a cert in the Browser ?

Sylvain</description>
		<content:encoded><![CDATA[<p>Thanks for this nice article. </p>
<p>A have a question: Does this attacks works if we use mutual SSL Client Authentication with a cert in the Browser ?</p>
<p>Sylvain</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marsh Ray</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1366</link>
		<dc:creator>Marsh Ray</dc:creator>
		<pubDate>Sun, 08 Nov 2009 15:50:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1366</guid>
		<description>&lt;blockquote cite=&quot;#commentbody-1365&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-1365&quot; rel=&quot;nofollow&quot;&gt;Frank Breedijk&lt;/a&gt; :&lt;/strong&gt;
Thanks for your comment, I have two questions.
 
I understood from your paper that client and server can initiate a renegoiation at any time, however all your examples revolve around a server initiated reneg. Why is this?
&lt;/blockquote&gt;
Because that&#039;s the first case I got working. I agree, it is unfortunate that our document spends a bit too much time on the client cert case, but we had very little time to update it before going public.

It is a very important case, however.

&lt;blockquote cite=&quot;#commentbody-1365&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-1365&quot; rel=&quot;nofollow&quot;&gt;Frank Breedijk&lt;/a&gt; :&lt;/strong&gt;
Does eliminating server renegotiation elemitate the problem?
&lt;/blockquote&gt;

Eliminating all renegotiation does solve the problem, some sites may be able to turn it off entirely (OpenSSL has patches for that already).

Very little client-initiated renegotiation is needed, probably none for https, so that will be relatively easy to patch.

Many https servers will be able disable server-initiated renegotiation.
A minority, but significant, number of https apps depend on it.

Really, the best solution is for everyone to patch with the new TLS protocol extension header as soon as it becomes available. This patch will drop in the missing bit of crypto needed to make renegotiation safe.

&lt;blockquote cite=&quot;#commentbody-1365&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-1365&quot; rel=&quot;nofollow&quot;&gt;Frank Breedijk&lt;/a&gt; :&lt;/strong&gt;
When you say that M can forward C&#039;s cerdentials to another server this seems to indicate the the attack can compromise the confidentiality of C&#039;s request. If I understand correctly in order for C to send the request it has to have receive a valid server key exchange, which includes the server certificate and a server hello done, thus placing the request in the C-S cipher context.
&lt;/blockquote&gt;

Good question. You&#039;re right, C will only send the http request after he checks the server certificate. However, due to an artifact of the design of TLS, client cert and smart card credentials have to be presented _before_ he has a chance to fully check the server&#039;s credentials.
Servers will execute M&#039;s evil request as soon as they receive the client cert/smart card credentials.

&lt;blockquote cite=&quot;#commentbody-1365&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-1365&quot; rel=&quot;nofollow&quot;&gt;Frank Breedijk&lt;/a&gt; :&lt;/strong&gt;
Thanks for your reaction.
&lt;/blockquote&gt;

Any time. I need all the help I can get to get the word out that everyone needs to update as soon as patches are available. People should also expect their browsers to inform them when they are connecting to an unpatched server.

- Marsh
</description>
		<content:encoded><![CDATA[<blockquote cite="#commentbody-1365"><p>
<strong><a href="#comment-1365" rel="nofollow">Frank Breedijk</a> :</strong><br />
Thanks for your comment, I have two questions.</p>
<p>I understood from your paper that client and server can initiate a renegoiation at any time, however all your examples revolve around a server initiated reneg. Why is this?
</p></blockquote>
<p>Because that&#8217;s the first case I got working. I agree, it is unfortunate that our document spends a bit too much time on the client cert case, but we had very little time to update it before going public.</p>
<p>It is a very important case, however.</p>
<blockquote cite="#commentbody-1365"><p>
<strong><a href="#comment-1365" rel="nofollow">Frank Breedijk</a> :</strong><br />
Does eliminating server renegotiation elemitate the problem?
</p></blockquote>
<p>Eliminating all renegotiation does solve the problem, some sites may be able to turn it off entirely (OpenSSL has patches for that already).</p>
<p>Very little client-initiated renegotiation is needed, probably none for https, so that will be relatively easy to patch.</p>
<p>Many https servers will be able disable server-initiated renegotiation.<br />
A minority, but significant, number of https apps depend on it.</p>
<p>Really, the best solution is for everyone to patch with the new TLS protocol extension header as soon as it becomes available. This patch will drop in the missing bit of crypto needed to make renegotiation safe.</p>
<blockquote cite="#commentbody-1365"><p>
<strong><a href="#comment-1365" rel="nofollow">Frank Breedijk</a> :</strong><br />
When you say that M can forward C&#8217;s cerdentials to another server this seems to indicate the the attack can compromise the confidentiality of C&#8217;s request. If I understand correctly in order for C to send the request it has to have receive a valid server key exchange, which includes the server certificate and a server hello done, thus placing the request in the C-S cipher context.
</p></blockquote>
<p>Good question. You&#8217;re right, C will only send the http request after he checks the server certificate. However, due to an artifact of the design of TLS, client cert and smart card credentials have to be presented _before_ he has a chance to fully check the server&#8217;s credentials.<br />
Servers will execute M&#8217;s evil request as soon as they receive the client cert/smart card credentials.</p>
<blockquote cite="#commentbody-1365"><p>
<strong><a href="#comment-1365" rel="nofollow">Frank Breedijk</a> :</strong><br />
Thanks for your reaction.
</p></blockquote>
<p>Any time. I need all the help I can get to get the word out that everyone needs to update as soon as patches are available. People should also expect their browsers to inform them when they are connecting to an unpatched server.</p>
<p>- Marsh</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frank Breedijk</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1365</link>
		<dc:creator>Frank Breedijk</dc:creator>
		<pubDate>Sun, 08 Nov 2009 09:02:32 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1365</guid>
		<description>Thanks for your comment, I have two questions.

I understood from your paper that client and server can initiate a renegoiation at any time, however all your examples revolve around a server initiated reneg. Why is this? Does eliminating server renegotiation elemitate the problem?

When you say that M can forward C&#039;s cerdentials to another server this seems to indicate the the attack can compromise the confidentiality of C&#039;s request. If I understand correctly in order for C to send the request it has to have receive a valid server key exchange, which includes the server certificate and a server hello done, thus placing the request in the C-S cipher context.

Thanks for your reaction.</description>
		<content:encoded><![CDATA[<p>Thanks for your comment, I have two questions.</p>
<p>I understood from your paper that client and server can initiate a renegoiation at any time, however all your examples revolve around a server initiated reneg. Why is this? Does eliminating server renegotiation elemitate the problem?</p>
<p>When you say that M can forward C&#8217;s cerdentials to another server this seems to indicate the the attack can compromise the confidentiality of C&#8217;s request. If I understand correctly in order for C to send the request it has to have receive a valid server key exchange, which includes the server certificate and a server hello done, thus placing the request in the C-S cipher context.</p>
<p>Thanks for your reaction.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marsh Ray</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/comment-page-1/#comment-1023</link>
		<dc:creator>Marsh Ray</dc:creator>
		<pubDate>Sun, 08 Nov 2009 04:18:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.cupfighter.net/?p=676#comment-1023</guid>
		<description>Nice writeup! I like your diagram!

&quot;works by intercepting and forwarding the first client hello message sent by the client (C) to the server (S) and then negotiating the cipher between the Man in the Middle (M) and the server only.&quot;

Actually, M doesn&#039;t have to use an exact copy of the client&#039;s hello, it just has to be reasonably similar. Some servers are stricter than others, but even if they were all perfectly strict, M could make his match perfectly if he wanted to. Actual clients show some variation in client hellos even over the same connection.

The &quot;Reply to evil request&quot; in your diagram is specifically a TLS &quot;Hello Request&quot;, indicating the server wants to renegotiate. Actually, even this is optional on some servers, some allow the client (i.e., mitm) to conduct an unsolicited renegotiation!

Also, M needn&#039;t allow the server&#039;s &quot;Finished&quot; message to make it all the way back to the client. In these cases, M can forward C&#039;s credentials to another server and C (if it&#039;s a browser) never even shows the scary page.</description>
		<content:encoded><![CDATA[<p>Nice writeup! I like your diagram!</p>
<p>&#8220;works by intercepting and forwarding the first client hello message sent by the client (C) to the server (S) and then negotiating the cipher between the Man in the Middle (M) and the server only.&#8221;</p>
<p>Actually, M doesn&#8217;t have to use an exact copy of the client&#8217;s hello, it just has to be reasonably similar. Some servers are stricter than others, but even if they were all perfectly strict, M could make his match perfectly if he wanted to. Actual clients show some variation in client hellos even over the same connection.</p>
<p>The &#8220;Reply to evil request&#8221; in your diagram is specifically a TLS &#8220;Hello Request&#8221;, indicating the server wants to renegotiate. Actually, even this is optional on some servers, some allow the client (i.e., mitm) to conduct an unsolicited renegotiation!</p>
<p>Also, M needn&#8217;t allow the server&#8217;s &#8220;Finished&#8221; message to make it all the way back to the client. In these cases, M can forward C&#8217;s credentials to another server and C (if it&#8217;s a browser) never even shows the scary page.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

