<?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: Thoughts on the TLS bug</title>
	<atom:link href="http://www.tombom.co.uk/blog/?feed=rss2&#038;p=85" rel="self" type="application/rss+xml" />
	<link>http://www.tombom.co.uk/blog/?p=85</link>
	<description>Nothing special, just me.</description>
	<lastBuildDate>Wed, 23 Jun 2010 02:42:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: macewan</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-195</link>
		<dc:creator>macewan</dc:creator>
		<pubDate>Fri, 06 Nov 2009 11:22:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-195</guid>
		<description>Your example brings back memories of interesting times in 1998. Fourty years old now and do not angry as quickly. Certainly would not perform the crazy shit we did those days.</description>
		<content:encoded><![CDATA[<p>Your example brings back memories of interesting times in 1998. Fourty years old now and do not angry as quickly. Certainly would not perform the crazy shit we did those days.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: moxie__</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-193</link>
		<dc:creator>moxie__</dc:creator>
		<pubDate>Fri, 06 Nov 2009 03:17:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-193</guid>
		<description>Chris, I think that&#039;s a totally fair assessment.  This is potentially interesting, and we should think about it carefully, but I&#039;d personally like to wait until we can assess whatever creative applications might emerge before equating this to DNS or BGP attacks.

Right now, all I see is the PR company that PhoneFactor has hired literally blackening the skies with press releases that are borderline-false.  Maybe I should realize how my bread is buttered and get on-point here with the hyperbole, but I just can&#039;t help but feel like we&#039;re taking ourselves too seriously.</description>
		<content:encoded><![CDATA[<p>Chris, I think that&#8217;s a totally fair assessment.  This is potentially interesting, and we should think about it carefully, but I&#8217;d personally like to wait until we can assess whatever creative applications might emerge before equating this to DNS or BGP attacks.</p>
<p>Right now, all I see is the PR company that PhoneFactor has hired literally blackening the skies with press releases that are borderline-false.  Maybe I should realize how my bread is buttered and get on-point here with the hyperbole, but I just can&#8217;t help but feel like we&#8217;re taking ourselves too seriously.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-192</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Thu, 05 Nov 2009 22:08:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-192</guid>
		<description>@Frank:

It&#039;s great to hear that you&#039;ve done a lot of research into this; it&#039;s reassuring that a pass over the relevant RFCs hasn&#039;t thrown up any major warning flags.  I&#039;m more concerned about the non-RFC&#039;ed protocols that use SSL; it&#039;s pretty common to see a layer of SSL added to proprietary protocols in order to hide the underlying flaws.  It&#039;ll be interesting to see where this flaw gets realised, for sure.


@samhooker: 

That thought had occurred to me.  I&#039;d love to hear if anyone has done any testing.


@Moxie:

You&#039;re right that there&#039;s a difference of scale between this auth gap and the other flaws I mention, and that this flaw does not immediately present an exploitable vector without significant work on the part of the attacker.  That said, when it does present an exploitable circumstance it would likely be quite severe.  That&#039;s why I made the statement about not getting it - this bug is a lot more subtle than just client-certificates or bizarre IIS configurations, and anyone who dismisses it based on the rarity of that vector hasn&#039;t seen the wider implications.  I&#039;m not saying it&#039;s huge but people certainly should not dismiss it out of hand - there&#039;s some significant potential for harm here.

You&#039;re also right that anyone who thinks the sky is falling also doesn&#039;t get it - that&#039;s simply not the case, but people do need to take it seriously until they&#039;ve quantified the effect that it will have in *their* environments.  The sky isn&#039;t falling but it&#039;s certainly cracked; I&#039;m expecting to see some creative applications of this flaw in the coming weeks.

Chris</description>
		<content:encoded><![CDATA[<p>@Frank:</p>
<p>It&#8217;s great to hear that you&#8217;ve done a lot of research into this; it&#8217;s reassuring that a pass over the relevant RFCs hasn&#8217;t thrown up any major warning flags.  I&#8217;m more concerned about the non-RFC&#8217;ed protocols that use SSL; it&#8217;s pretty common to see a layer of SSL added to proprietary protocols in order to hide the underlying flaws.  It&#8217;ll be interesting to see where this flaw gets realised, for sure.</p>
<p>@samhooker: </p>
<p>That thought had occurred to me.  I&#8217;d love to hear if anyone has done any testing.</p>
<p>@Moxie:</p>
<p>You&#8217;re right that there&#8217;s a difference of scale between this auth gap and the other flaws I mention, and that this flaw does not immediately present an exploitable vector without significant work on the part of the attacker.  That said, when it does present an exploitable circumstance it would likely be quite severe.  That&#8217;s why I made the statement about not getting it &#8211; this bug is a lot more subtle than just client-certificates or bizarre IIS configurations, and anyone who dismisses it based on the rarity of that vector hasn&#8217;t seen the wider implications.  I&#8217;m not saying it&#8217;s huge but people certainly should not dismiss it out of hand &#8211; there&#8217;s some significant potential for harm here.</p>
<p>You&#8217;re also right that anyone who thinks the sky is falling also doesn&#8217;t get it &#8211; that&#8217;s simply not the case, but people do need to take it seriously until they&#8217;ve quantified the effect that it will have in *their* environments.  The sky isn&#8217;t falling but it&#8217;s certainly cracked; I&#8217;m expecting to see some creative applications of this flaw in the coming weeks.</p>
<p>Chris</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: moxie__</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-190</link>
		<dc:creator>moxie__</dc:creator>
		<pubDate>Thu, 05 Nov 2009 16:28:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-190</guid>
		<description>Hey Chris, you&#039;re really equating this to BGP hijacking and DNS cache poisoning?  As an attacker, those vulnerabilities leave me with some very immediate ideas about how I can leverage attacks on an entire network.  When I first saw this, however, all I thought was &quot;wow, that&#039;s a really fragile and complicated way to do CSRF.&quot;

So I agree with you that this is not very useful in the context of HTTP, but all of the examples that were provided in the disclosure were portrayed in the context of HTTP, and they all seem to suggest that the sky is falling.  Personally, I don&#039;t find that kind of disclosure very helpful.  So yes, if anywhere, it&#039;s likely that this might actually be more useful in the context of other protocols, but my feeling is that the reason most of the discussion on this has been limited to HTTP is because that&#039;s where particular configuration issues actually make this &quot;exploitable.&quot;  How many other protocols do you know of that accept a request, then decide to ask for authentication through their &lt;i&gt;transport&lt;/i&gt; layer, then act on the request that they received &lt;i&gt;before&lt;/i&gt; the authentication was complete?

They might exist, but they&#039;re edge cases.  That&#039;s what this vulnerability is, a very nice edge case.  Clever, yes, but not the same as a whole-scale network-wide attack like DNS cache poisoning.  

Finally, I&#039;ll say that it&#039;s a little difficult to respond to this post because of the way that you&#039;ve employed tautology here.  By saying that &quot;anyone who doesn&#039;t think this is huge doesn&#039;t get it,&quot; you&#039;ve automatically cut off any discussion, because to question your assessment immediately pegs you as someone who &quot;doesn&#039;t get it.&quot;

So the best I can do is say:  &quot;Anyone who thinks this is huge REALLY doesn&#039;t get it.&quot;  There.  =)</description>
		<content:encoded><![CDATA[<p>Hey Chris, you&#8217;re really equating this to BGP hijacking and DNS cache poisoning?  As an attacker, those vulnerabilities leave me with some very immediate ideas about how I can leverage attacks on an entire network.  When I first saw this, however, all I thought was &#8220;wow, that&#8217;s a really fragile and complicated way to do CSRF.&#8221;</p>
<p>So I agree with you that this is not very useful in the context of HTTP, but all of the examples that were provided in the disclosure were portrayed in the context of HTTP, and they all seem to suggest that the sky is falling.  Personally, I don&#8217;t find that kind of disclosure very helpful.  So yes, if anywhere, it&#8217;s likely that this might actually be more useful in the context of other protocols, but my feeling is that the reason most of the discussion on this has been limited to HTTP is because that&#8217;s where particular configuration issues actually make this &#8220;exploitable.&#8221;  How many other protocols do you know of that accept a request, then decide to ask for authentication through their <i>transport</i> layer, then act on the request that they received <i>before</i> the authentication was complete?</p>
<p>They might exist, but they&#8217;re edge cases.  That&#8217;s what this vulnerability is, a very nice edge case.  Clever, yes, but not the same as a whole-scale network-wide attack like DNS cache poisoning.  </p>
<p>Finally, I&#8217;ll say that it&#8217;s a little difficult to respond to this post because of the way that you&#8217;ve employed tautology here.  By saying that &#8220;anyone who doesn&#8217;t think this is huge doesn&#8217;t get it,&#8221; you&#8217;ve automatically cut off any discussion, because to question your assessment immediately pegs you as someone who &#8220;doesn&#8217;t get it.&#8221;</p>
<p>So the best I can do is say:  &#8220;Anyone who thinks this is huge REALLY doesn&#8217;t get it.&#8221;  There.  =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: samhooker</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-189</link>
		<dc:creator>samhooker</dc:creator>
		<pubDate>Thu, 05 Nov 2009 16:00:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-189</guid>
		<description>SSL VPNs? Serious impact, or not?</description>
		<content:encoded><![CDATA[<p>SSL VPNs? Serious impact, or not?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frank.Heidt</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-186</link>
		<dc:creator>Frank.Heidt</dc:creator>
		<pubDate>Thu, 05 Nov 2009 10:44:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-186</guid>
		<description>Hey Chris,

Thanks for taking the time to allow me to brief you on this today. You were clearly one of the few folks that instantly got it and that, in of itself was,  really quite refreshing. 

Many of the folks I had to explain this too quickly got lost in the mechanics of the bug or went off on wild tangents of possible but unlikely scenarios. 

Having said that.  

I think that most if not all of the protocols currently protected via STARTTLS extensions are likely to remain safe. A careful reading  of the hundreds (literally) of RFC&#039;s on this topic shows some consistency of thought around channel  binding and state clearance that should, (should mind you) protect us. 

This is really quite a win! Your concerns about &quot;(what could you do with IMAP/S or POP3/S?)]...&quot;  are probably not as bad as they could be. I&#039;m not calling them baseless, they deserve examination, however  only experimentation will prove that for sure. Right now, as far as Leviathan&#039;s research shows, there are no credibility attacks against the two  protocols you mentioned.  Again, however, only time will tell.

&quot;RFC2595 - Using TLS with IMAP, POP3 and ACAP

&quot; A TLS negotiation begins immediately after the CRLF at the end of
      the tagged OK response from the server.  Once a client issues a
      STARTTLS command, it MUST NOT issue further commands until a
      server response is seen and the TLS negotiation is complete.

      The STARTTLS command is only valid in non-authenticated state.
      The server remains in non-authenticated state, even if client
      credentials are supplied during the TLS negotiation.  The SASL
      [SASL] EXTERNAL mechanism MAY be used to authenticate once TLS
      client credentials are successfully exchanged, but servers
      supporting the STARTTLS command are not required to support the
      EXTERNAL mechanism.

      Once TLS has been started, the client MUST discard cached
      information about server capabilities and SHOULD re-issue the
      CAPABILITY command.  This is necessary to protect against
      man-in-the-middle attacks which alter the capabilities list prior
      to STARTTLS.  The server MAY advertise different capabilities
      after STARTTLS.

Read more: http://www.faqs.org/rfcs/rfc2595.html#ixzz0Vyq56WNY
&quot;</description>
		<content:encoded><![CDATA[<p>Hey Chris,</p>
<p>Thanks for taking the time to allow me to brief you on this today. You were clearly one of the few folks that instantly got it and that, in of itself was,  really quite refreshing. </p>
<p>Many of the folks I had to explain this too quickly got lost in the mechanics of the bug or went off on wild tangents of possible but unlikely scenarios. </p>
<p>Having said that.  </p>
<p>I think that most if not all of the protocols currently protected via STARTTLS extensions are likely to remain safe. A careful reading  of the hundreds (literally) of RFC&#8217;s on this topic shows some consistency of thought around channel  binding and state clearance that should, (should mind you) protect us. </p>
<p>This is really quite a win! Your concerns about &#8220;(what could you do with IMAP/S or POP3/S?)]&#8230;&#8221;  are probably not as bad as they could be. I&#8217;m not calling them baseless, they deserve examination, however  only experimentation will prove that for sure. Right now, as far as Leviathan&#8217;s research shows, there are no credibility attacks against the two  protocols you mentioned.  Again, however, only time will tell.</p>
<p>&#8220;RFC2595 &#8211; Using TLS with IMAP, POP3 and ACAP</p>
<p>&#8221; A TLS negotiation begins immediately after the CRLF at the end of<br />
      the tagged OK response from the server.  Once a client issues a<br />
      STARTTLS command, it MUST NOT issue further commands until a<br />
      server response is seen and the TLS negotiation is complete.</p>
<p>      The STARTTLS command is only valid in non-authenticated state.<br />
      The server remains in non-authenticated state, even if client<br />
      credentials are supplied during the TLS negotiation.  The SASL<br />
      [SASL] EXTERNAL mechanism MAY be used to authenticate once TLS<br />
      client credentials are successfully exchanged, but servers<br />
      supporting the STARTTLS command are not required to support the<br />
      EXTERNAL mechanism.</p>
<p>      Once TLS has been started, the client MUST discard cached<br />
      information about server capabilities and SHOULD re-issue the<br />
      CAPABILITY command.  This is necessary to protect against<br />
      man-in-the-middle attacks which alter the capabilities list prior<br />
      to STARTTLS.  The server MAY advertise different capabilities<br />
      after STARTTLS.</p>
<p>Read more: <a href="http://www.faqs.org/rfcs/rfc2595.html#ixzz0Vyq56WNY" rel="nofollow">http://www.faqs.org/rfcs/rfc2595.html#ixzz0Vyq56WNY</a><br />
&#8220;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-183</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Thu, 05 Nov 2009 07:03:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-183</guid>
		<description>Marsh,

Thanks for the info, and good job on finding a very subtle bug.  I&#039;ve been comparing it to the bug that forced SSLv2 to become SSLv3, I&#039;m looking forward to reading the RFC that fixes this.

You&#039;re right that XSRF bugs are very serious, but they&#039;re also very easy to mitigate.  This bug doesn&#039;t directly reveal credentials (phew) but what worries me is how this is going to be widened once more eyeballs see it, and how many deployments think they&#039;re extra-secure because they&#039;ve enabled protections like client certificates and per-directory ciphering requirements.  It&#039;s one of those open-ended bugs that worry me in that I&#039;ll never believe we&#039;ve seen the last of it.

You&#039;ll certainly have my peer review when the draft is posted; do you know when any of the patches are planned?

Cheers!</description>
		<content:encoded><![CDATA[<p>Marsh,</p>
<p>Thanks for the info, and good job on finding a very subtle bug.  I&#8217;ve been comparing it to the bug that forced SSLv2 to become SSLv3, I&#8217;m looking forward to reading the RFC that fixes this.</p>
<p>You&#8217;re right that XSRF bugs are very serious, but they&#8217;re also very easy to mitigate.  This bug doesn&#8217;t directly reveal credentials (phew) but what worries me is how this is going to be widened once more eyeballs see it, and how many deployments think they&#8217;re extra-secure because they&#8217;ve enabled protections like client certificates and per-directory ciphering requirements.  It&#8217;s one of those open-ended bugs that worry me in that I&#8217;ll never believe we&#8217;ve seen the last of it.</p>
<p>You&#8217;ll certainly have my peer review when the draft is posted; do you know when any of the patches are planned?</p>
<p>Cheers!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: marshray</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-182</link>
		<dc:creator>marshray</dc:creator>
		<pubDate>Thu, 05 Nov 2009 06:23:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-182</guid>
		<description>Hi Chris,

I remember staying up too late watching a video of your Shmoocon RFID presentation. That is awesome stuff!

I think your comparison with XSRF is very apt, as there are a lot of similarities. Remember however, that XSRF bugs are pretty darn serious bugs and a lot of work has been done to close those holes down (same origin policy and whatnot). This TLS problem in a sense un-does most of that. It can bypass same-origin because the attacker can change the client&#039;s GET to a POST.

Re: &quot;The only ways to even trigger it require any of&quot;, those are the cases we wrote up for the paper, and we and the industry continue to learn more. For example, the first version of the paper speculated on the possibility of a client (i.e. MITM)-initiated renegotiation being accepted by the server. It seems that there are many HTTPS servers that accept it, and many which do not.

Client-cert auth may seem to be an obscure deployment scenario, but it seems to be used in places where security is most important. E.g. smart card systems. If MitM can take your smart card credentials to any server on the net that will accept them and use them to authorize his arbitrary request, that&#039;s a big problem.

Re: &quot;a hurried fix that isn’t-quite-thought-through by a lot of folks (and will have lots of implementation problems even if the protocol itself is secure)&quot; You may be right on that, but I hope not, and probably only time will tell. I hope to get the word out early though that I think we did get the right people in a room together and I think we did come up with the right fix, and I expect the Internet Draft doc to hit the public IETF process tomorrow. Some evidence that it probably doesn&#039;t totally suck (as far as protocol fixes go anyway) is that several people came up with the same idea more or less independently after getting a real understanding of the issue. Since then, it&#039;s had a few weeks of scrutiny and I&#039;m not aware of any shortcomings being pointed out.

Of course, all patches could always use more testing, and that goes 10x for  protocol changes. At the end of the day we weren&#039;t able to give the vendors as much time as any of us had wanted, but we (as security researchers) think we gave the industry the best possible chance to succeed.

So I&#039;d like to see the proposed fix get a fair shake, since I think it represents the best way to get the whole net patched quickly.

- Marsh</description>
		<content:encoded><![CDATA[<p>Hi Chris,</p>
<p>I remember staying up too late watching a video of your Shmoocon RFID presentation. That is awesome stuff!</p>
<p>I think your comparison with XSRF is very apt, as there are a lot of similarities. Remember however, that XSRF bugs are pretty darn serious bugs and a lot of work has been done to close those holes down (same origin policy and whatnot). This TLS problem in a sense un-does most of that. It can bypass same-origin because the attacker can change the client&#8217;s GET to a POST.</p>
<p>Re: &#8220;The only ways to even trigger it require any of&#8221;, those are the cases we wrote up for the paper, and we and the industry continue to learn more. For example, the first version of the paper speculated on the possibility of a client (i.e. MITM)-initiated renegotiation being accepted by the server. It seems that there are many HTTPS servers that accept it, and many which do not.</p>
<p>Client-cert auth may seem to be an obscure deployment scenario, but it seems to be used in places where security is most important. E.g. smart card systems. If MitM can take your smart card credentials to any server on the net that will accept them and use them to authorize his arbitrary request, that&#8217;s a big problem.</p>
<p>Re: &#8220;a hurried fix that isn’t-quite-thought-through by a lot of folks (and will have lots of implementation problems even if the protocol itself is secure)&#8221; You may be right on that, but I hope not, and probably only time will tell. I hope to get the word out early though that I think we did get the right people in a room together and I think we did come up with the right fix, and I expect the Internet Draft doc to hit the public IETF process tomorrow. Some evidence that it probably doesn&#8217;t totally suck (as far as protocol fixes go anyway) is that several people came up with the same idea more or less independently after getting a real understanding of the issue. Since then, it&#8217;s had a few weeks of scrutiny and I&#8217;m not aware of any shortcomings being pointed out.</p>
<p>Of course, all patches could always use more testing, and that goes 10x for  protocol changes. At the end of the day we weren&#8217;t able to give the vendors as much time as any of us had wanted, but we (as security researchers) think we gave the industry the best possible chance to succeed.</p>
<p>So I&#8217;d like to see the proposed fix get a fair shake, since I think it represents the best way to get the whole net patched quickly.</p>
<p>- Marsh</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dispensa</title>
		<link>http://www.tombom.co.uk/blog/?p=85&#038;cpage=1#comment-181</link>
		<dc:creator>dispensa</dc:creator>
		<pubDate>Thu, 05 Nov 2009 05:45:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.tombom.co.uk/blog/?p=85#comment-181</guid>
		<description>You&#039;re definitely right about non-HTTP implications. As for HTTP - first, the client often can&#039;t choose whether or not to use a client certificate (e.g. SOAP) - if he doesn&#039;t, he simply can&#039;t play. Also, you might have forgotten the client-initiated case. Either way, this is a problem for HTTP but it&#039;s not Armageddon.</description>
		<content:encoded><![CDATA[<p>You&#8217;re definitely right about non-HTTP implications. As for HTTP &#8211; first, the client often can&#8217;t choose whether or not to use a client certificate (e.g. SOAP) &#8211; if he doesn&#8217;t, he simply can&#8217;t play. Also, you might have forgotten the client-initiated case. Either way, this is a problem for HTTP but it&#8217;s not Armageddon.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
