<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Cupfighter.net &#187; SSL</title>
	<atom:link href="http://www.cupfighter.net/index.php/tag/ssl/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cupfighter.net</link>
	<description>A blog by Schuberg Philis colleagues</description>
	<lastBuildDate>Thu, 09 Feb 2012 14:27:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Certificate validation problems after upgrading to Tortoise 1.7</title>
		<link>http://www.cupfighter.net/index.php/2011/11/certificate-validation-tortoise-1-7/</link>
		<comments>http://www.cupfighter.net/index.php/2011/11/certificate-validation-tortoise-1-7/#comments</comments>
		<pubDate>Mon, 28 Nov 2011 14:56:06 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[SSL]]></category>
		<category><![CDATA[Tips and tricks]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[Frank Breedijk]]></category>
		<category><![CDATA[Intermediate CA]]></category>
		<category><![CDATA[Root CA]]></category>
		<category><![CDATA[Tortoise]]></category>
		<category><![CDATA[Tortoise1.7]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=1464</guid>
		<description><![CDATA[A few days ago while starting TortoiseSVN it prompted me to update to version 1.7 After I updated to version 1.7. I could not connect to our internal repository anymore. The connection failed with the following error: SSL error: sslv3 alert certificate unkown. Our internal respoitory is secured with a certificated issued by our internal [...]]]></description>
			<content:encoded><![CDATA[<p>A few days ago while starting TortoiseSVN it prompted me to update to version 1.7</p>
<p>After I updated to version 1.7. I could not connect to our internal repository anymore. The connection failed with the following error: SSL error: sslv3 alert certificate unkown.</p>
<div id="attachment_1466" class="wp-caption aligncenter" style="width: 677px"><a href="http://www.cupfighter.net/wp-content/uploads/2011/11/Tortoise-error1.png"><img class="size-full wp-image-1466" title="SSL error: sslv3 alert certificate unknown" src="http://www.cupfighter.net/wp-content/uploads/2011/11/Tortoise-error1.png" alt="SSL error: sslv3 alert certificate unknown" width="667" height="306" /></a><p class="wp-caption-text">SSL error: sslv3 alert certificate unknown</p></div>
<p>Our internal respoitory is secured with a certificated issued by our internal CA infrastructure.</p>
<p style="text-align: center;">Root CA</p>
<p style="text-align: center;">|<br />
v</p>
<p style="text-align: center;">Intermediate Certificate</p>
<p style="text-align: center;">|<br />
v</p>
<p style="text-align: center;">Repository certificate</p>
<p>Surfing to the svn repository does not produce an error, so the certificate chain is fine. At first I figured that Tortoise was using its own certificate store, but it turns out that Tortoise does use the Windows Root CA store, so there is no need to add the Root CA.</p>
<p>After some more investigation we found out that Tortoise does use the Windows Root CA store to validate the certificate chain, but does not use the Intermediate CA store to complete the certificate chain, like windows does. Since all our client machines have the intermediate certificate in the Intermediate CA store we never noticed that the certificates offered by apache were not chained. After chaining the repository certificate with the intermediate certificate Tortoise was able to talk to the repository again.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2011/11/certificate-validation-tortoise-1-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HitB2011AMS: A Real-Life Study of What Really Breaks SSL</title>
		<link>http://www.cupfighter.net/index.php/2011/05/hitb2011ams-what-breaks-ssl/</link>
		<comments>http://www.cupfighter.net/index.php/2011/05/hitb2011ams-what-breaks-ssl/#comments</comments>
		<pubDate>Fri, 20 May 2011 09:56:36 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[HitB2011AMS]]></category>
		<category><![CDATA[HitB]]></category>
		<category><![CDATA[Ivan Ristić]]></category>
		<category><![CDATA[Qualys]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=1314</guid>
		<description><![CDATA[By Ivan Ristić Slides on the HitB Materials page. Ivan researches SSL for Qualys. SSL was designed as a protocol add-on by Netscape to secure http, but can be used to secure other protocols as well. The main challenges today are: Fragility of the trust ecosystem Incorrect or weak configuration Slow adoption of modern statndar [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1317" class="wp-caption alignright" style="width: 190px"><a href="http://www.flickr.com/photos/11448492@N07/2078076913/"><img class="size-full wp-image-1317" title="Breaking the ice a cc nc nd by image from MarcelGermain's Flickr stream" src="http://www.cupfighter.net/wp-content/uploads/2011/05/break.jpg" alt="Breaking the ice a cc nc nd by image from MarcelGermain's Flickr stream" width="180" height="240" /></a><p class="wp-caption-text">Breaking the ice a cc nc nd by image from MarcelGermain&#39;s Flickr stream</p></div>
<p>By <a title="@ivanristic" href="http://twitter.com/ivanristic" target="_blank">Ivan Ristić</a></p>
<p>Slides on the <a href="http://conference.hackinthebox.org/hitbsecconf2011ams/materials/" target="_blank">HitB Materials page</a>.</p>
<p>Ivan researches SSL for Qualys. SSL was designed as a protocol add-on by Netscape to secure http, but can be used to secure other protocols as well.</p>
<p>The main challenges today are:</p>
<ol>
<li>
<div>Fragility of the trust ecosystem</div>
</li>
<li>
<div>Incorrect or weak configuration</div>
</li>
<li>
<div>Slow adoption of modern statndar</div>
</li>
<li>
<div>Lack of support for virtual SSL hosting</div>
</li>
<li>
<div>Mismatch between HTTP and SSL</div>
</li>
</ol>
<p>There are three main attacks against SSL:</p>
<ul>
<li>
<div>Passive MitM</div>
</li>
</ul>
<ul>
<li>
<div>Session Hijacking</div>
</li>
</ul>
<li>
<div>Active MitM</div>
</li>
<ul>
<li>
<div>Session bypass (ssl strip)</div>
</li>
<li>
<div>Renegotiation attack</div>
</li>
<li>
<div>Rogue certificates</div>
</li>
<li>
<div>User attackers (who reads warnings)</div>
</li>
</ul>
<li>
<div>Third party compromise</div>
</li>
<p>Ivan’s has a lot of data based on the a surveys conducted by his employer Qualys SSL Labs, EFF’s SSL Observatory. In total 1.2million sites with valid certificates where investigated.</p>
<p>Ivan showed a slide that indicates that of the sites visited only 0.6% of the sites had a fully correct SSL configuration, nearly 50% of the sites did not offer SSL at all.</p>
<p>In Qualys&#8217; most In the most recent SSL Survey only 32% of the sites offering SSL where configured correctly.</p>
<p><span id="more-1314"></span></p>
<p>So now for the bad stuff:</p>
<ul>
<li>
<div>48% of the sites offering SSL still offer SSLv2 which is know to be cryptographically insecure, it is a good thing that most browsers reject it</div>
</li>
<li>
<div>Most sites do not offer any support for TLSv1.1 and TLSv1.2</div>
</li>
<li>
<div>62% of the sites still use weaks ciphers</div>
</li>
<li>
<div>The TLS renegotiation vulnerability discovered in 2009 still effects nearly 35% the sites</div>
</li>
</ul>
<p>But it is not just about how SSL is configures, but also about how it is used:</p>
<ul>
<li>
<div>Nearly 80% of the sites offering SSL do not redirect their users to the secure sites by default.</div>
</li>
<li>
<div>HTTP Strict Transport Security is only used by 80 out of the the nearly 250,000 sites tested by Qualys.</div>
</li>
<li>
<div>The adoption of EV certificates is also low</div>
</li>
<li>
<div>Of the tested sites on 9 used all three above techniques.</div>
</li>
<li>
<div>A lot of sites mark their cookies as HttpOnly or Secure, but even less that use both techniques</div>
</li>
<li>
<div>22% of the tested sites use some form of mixed content, if you exclude the sites that only use it for images this number only drops slightly to nearly 19%</div>
</li>
<li>
<div>68% of the login forms where not served over HTTPS and 54% submitted data to an http site</div>
</li>
</ul>
<p>So what can we concluse:</p>
<ul>
<li>
<div>Systematic issues are hotly debated</div>
</li>
<li>
<div>However SSL is often broken  by bad deployment and implementation issues</div>
</li>
<li>
<div>It is possible to achieve reasonable security, but most sites choose not to do it</div>
</li>
<li>
<div>Among the popular sites only a handful have decent SSL deployments</div>
</li>
</ul>
<p>SSL is a success because it bought a relative security to the general public.</p>
<hr />Ivan Ristić is a respected security expert and author, known especially for his contribution to the web application firewall field and the development of ModSecurity, an open source web application firewall. He is also the author of Apache Security, a comprehensive security guide for the Apache web server, and ModSecurity Handbook. He founded SSL Labs, a research effort focused on the analysis of the real-life usage of SSL and the related technologies. A frequent speaker at computer security conferences, Ivan is a member of the Open Web Application Security Project (OWASP), and an officer of the Web Application Security Consortium (WASC).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2011/05/hitb2011ams-what-breaks-ssl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Confidence 2009.02 &#8211; My TLS renegotiation vulnerability slides</title>
		<link>http://www.cupfighter.net/index.php/2009/11/confidence-tls-renegotiation/</link>
		<comments>http://www.cupfighter.net/index.php/2009/11/confidence-tls-renegotiation/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 16:57:39 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Confidence 2009.02]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[confidence0902]]></category>
		<category><![CDATA[Marsh Ray]]></category>
		<category><![CDATA[Mitm]]></category>
		<category><![CDATA[TLS]]></category>
		<category><![CDATA[TLS renegotiation]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=797</guid>
		<description><![CDATA[Today I presented about the TLS regenotiation vulnerability I blogged about earlier. You can download the slides below: TLS renegotiation authentication GAP v1.1 pdf TLS renegotiation authentication GAP v1.1 pptx Special thanks to Marsh Ray for his suggestions and corrections.]]></description>
			<content:encoded><![CDATA[<p>Today I presented about the TLS regenotiation vulnerability <a title="TLS renegotiation attack post" href="http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/">I blogged about earlier</a>.</p>
<p>You can download the slides below:</p>
<ul>
<li><a href="http://www.cupfighter.net/wp-content/uploads/2009/11/TLS-renegotiation-authentication-GAP-v1.1.pdf">TLS renegotiation authentication GAP v1.1 pdf</a></li>
<li><a href="http://www.cupfighter.net/wp-content/uploads/2009/11/TLS-renegotiation-authentication-GAP-v1.1.pptx">TLS renegotiation authentication GAP v1.1 pptx</a></li>
</ul>
<p>Special thanks to Marsh Ray for his suggestions and corrections.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2009/11/confidence-tls-renegotiation/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>TLS renegotiation attack. More bad news for SSL</title>
		<link>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/</link>
		<comments>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 23:34:19 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[Attack]]></category>
		<category><![CDATA[cross site request forgery]]></category>
		<category><![CDATA[CSRF]]></category>
		<category><![CDATA[Dan Kaminiski]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[Man in the Middle]]></category>
		<category><![CDATA[Marsh Ray]]></category>
		<category><![CDATA[Mike Zusman]]></category>
		<category><![CDATA[Mitm]]></category>
		<category><![CDATA[Moxie]]></category>
		<category><![CDATA[Moxie Marlinspike]]></category>
		<category><![CDATA[Online Banking]]></category>
		<category><![CDATA[OpenSSL]]></category>
		<category><![CDATA[renegotiation]]></category>
		<category><![CDATA[request smuggling]]></category>
		<category><![CDATA[Steven Dispensa]]></category>
		<category><![CDATA[TLS]]></category>
		<category><![CDATA[TLS renegotiation]]></category>
		<category><![CDATA[XSRF]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=676</guid>
		<description><![CDATA[My take on the TLS renegotiation attack. A dangerous attack. ]]></description>
			<content:encoded><![CDATA[<p>Three days ago on the 3rd of November Marsh Ray and Steven Dispensa of <a title="Phone Factor website" href="http://www.phonefactor.com/" target="_blank">PhoneFactor</a> released a <a title="TLS renegotiation attack whitepaper" href="http://extendedsubset.com/Renegotiating_TLS.pdf" target="_blank">whitepaper</a> that describes a man in the middle attack against TLS and SSL v3 by using the “renegotiation” feature of the protocol. Let there be no mistake, this is a limited, but still serious attack.</p>
<p>This new attack adds to the issues published by <a title="Moxie's talk on Blackhat and Defcon" href="http://www.cupfighter.net/index.php/2009/07/blackhat-post-more-tricks-for-defeating-ssl-in-practice-moxie-marlinspike/" target="_blank">Moxie Marlinspike</a>, Dan Kaminski and Mike Zusman <a title="SSL in trouble at Blackhat and Defcon" href="http://www.cupfighter.net/index.php/2009/08/ssl-beaten-up-at-blackhat-and-defcon/" target="_blank">I blogged  about earlier</a>.</p>
<h1>So what does this new attack do?</h1>
<p>The attack described by Marsh Ray et al. exploits a feature of the TLS protocol called renegotiation. Renegotiation allows the TLS client or server to initiate a renegotiation of the encryption of the connection in order to refresh keys, increase authentication, increase the strength of the cipher suite or any other reason. This renegotiation can be performed by the server or the client by sending a server or client hello message.</p>
<p><span id="more-676"></span>The man in the middle attack 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. At this point there is an encrypted session between M and S and M can insert his own data into the connection and even read the reply for the period that the underlying protocol (e.g. HTTP for HTTPS) allows for a reply to arrive. M then replays the original client hello message received from C which will start a renegotiation of the cipher between C and S. Depending on the timing of the replay of the client hello message C will either append its request to M’s request, receive the answer to M’s request or will not be aware of M’s request and S’ reply to M’s request.</p>
<div id="attachment_677" class="wp-caption aligncenter" style="width: 458px"><a href="http://www.cupfighter.net/wp-content/uploads/2009/11/TLS-renegotiate.png"><img class="size-full wp-image-677 " title="TLS renegotiation attack" src="http://www.cupfighter.net/wp-content/uploads/2009/11/TLS-renegotiate.png" alt="TLS handshake with MitM renegotiation attack" width="448" height="584" /></a><p class="wp-caption-text">TLS handshake with MitM renegotiation attack</p></div>
<p>Using techniques similar to <a title="HTTP Request Smuggling whitepaper" href="http://www.cgisecurity.com/lib/HTTP-Request-Smuggling.pdf" target="_blank">request smuggling</a> M can even insert his own request into a session that requires client certificate authentication. In fact the original whitepaper’s first example deals with TLS renegotiation in case of client certificate authentication. Like <a title="Wikipedia article" href="http://en.wikipedia.org/wiki/Cross-site_request_forgery" target="_blank">Cross Site Request Forgery</a> this attack allows an attacker to send requests to resource within the, possibly authenticated, context of the client.</p>
<p>Because this attack requires the attacker to manipulate the traffic stream between client and server and is thus classified as a man in the middle (MitM) attack, it does not allow the attacker to decrypt any traffic sent between client and server.</p>
<h1>What are the consequences of this attack?</h1>
<p>While this attack does not completely break TLS, it does break on of its fundamental functions, in that it does not fully guarantee the integrity of the first request from the client to the server. This means e.g. that the attacker could insert a transaction into an online banking application without the user being aware.<br />
This attack does NOT affect the integrity of the reply from the server to the client (other than maybe not sending the reply to the client), so it does not allow the attacker to rewrite the reply from the server to the client. This means that if, e.g. an online bank publishes an overview of the transactions before and after the transaction is authorised, the user can spot the inserted transaction.</p>
<p>The attack also does not affect the confidentiality of either the original request or the reply from the server, however as with cross site request forgery, it may allow an attacker to use the clients credentials (e.g. a client certificate, cookie, or password) without knowing them.</p>
<p>While the attack only works for the first request sent over a TLS session (subsequent renegotiation requests are sent in the encryption context and can thus not be inserted) M could force the session to reset after x seconds of inactivity by sending a reset packet to both C and S, thus forcing a new TCP and TLS session to be re-established and thus gaining a new window of opportunity.</p>
<h1>What can be done against this attack?</h1>
<p>Currently there are no fixes available. In their whitepaper Marsh Ray et al describe several possible solutions, which unfortunately all more or less break backwards compatibility.</p>
<p>In response to this attack <a title="OpenSSL website" href="http://www.openssl.org/" target="_blank">OpenSSL</a> <a title="ISC Sans announcement" href="http://isc.sans.org/diary.html?storyid=7543" target="_blank">today released OpenSSL 0.9.8l</a> which does not fix the vulnerability, but disables renegotiation completely. This change to OpenSSL may break certain applications so it should be carefully tested before it is implemented.<br />
From an HTTPS perspective the problem has similarities with cross site request forgery and can be defended against in a similar manner. If a program requires a unique session ID with sufficient entropy as part of the URL this session ID cannot be read or reused by the attacker.<br />
The problem currently has the full attention of <a title="IETF TLS Workgroup mailing list archive" href="http://www.ietf.org/mail-archive/web/tls/current/msg03948.html" target="_blank">Internet Engineering Task Force (IETF) TLS workgroup</a> so hopefully they will come up with a fix soon. In the mean time you could disable renegotiation for OpenSSL based products if this does not break the application stack.</p>
<h1>Conclusion</h1>
<p>While the attack does not break the confidentiality of the communication between client and server it does allow an attacker to insert text into the first request of the client, thus breaking its integrity. This issue is a fundamental protocol level issue that cannot be fixed without breaking backward compatibility. If the application using TLS (e.g. HTTPS) does not need renegotiation, turning renegotiation off may be a possibility, however there are numerous situations where renegotiation is needed (e.g. certain scenarios where client certificate authentication is used for https).<br />
I do not agree with Moxie Marlinspike who was quoted to say <a title="Techtarget's article about TLS renegotionation attack" href="http://searchsecurity.techtarget.com/news/article/0,289142,sid14_gci1373678,00.html" target="_blank">“It doesn&#8217;t affect your webmail, online banking or online shopping experience.”</a> However the attack is hard to use and the attacker will need to have detailed knowledge of the application he is attacking. This attack will first appear in highly targeted scenarios. Since the attack is a man in the middle attack the attack will have to have control over all the traffic between client and server and vice versa in order to fully exploit the attack.</p>
<p>With this attack TLS does not fully protect the integrity of the communication between client and server.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2009/11/tls-renegotiation-attack/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SSL takes a serious beating at BlackHat and Defcon conferences</title>
		<link>http://www.cupfighter.net/index.php/2009/08/ssl-beaten-up-at-blackhat-and-defcon/</link>
		<comments>http://www.cupfighter.net/index.php/2009/08/ssl-beaten-up-at-blackhat-and-defcon/#comments</comments>
		<pubDate>Sat, 01 Aug 2009 16:00:42 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[Blackhat]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Defcon]]></category>
		<category><![CDATA[CA]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[Citrix]]></category>
		<category><![CDATA[Dan Kaminski]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[DNSSEC]]></category>
		<category><![CDATA[Maxie Marlinspike]]></category>
		<category><![CDATA[Mike Zusman]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[Thrust]]></category>
		<category><![CDATA[VPN]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=416</guid>
		<description><![CDATA[Moxie Marlinspike, Dan Kaminski and Mike Zusman all presented talks at both Blackhat and Defcon that expose serious flaws the implementation and model of SSL and the way we us it today. First of all both Marlinspike and Kaminski discovered a flaw in the implementation of the client side of SSL, which is all about [...]]]></description>
			<content:encoded><![CDATA[<p>Moxie Marlinspike, Dan Kaminski and Mike Zusman all presented talks at both Blackhat and Defcon that expose serious flaws the implementation and model of SSL and the way we us it today.<br />
<span id="more-416"></span><br />
First of all both Marlinspike and Kaminski discovered a flaw in the implementation of the client side of SSL, which is all about requesting an SSL certificate with a NULL (\0) character in the name. As Kaminski pointed out, Marlinspike’s exploit for this was the best of the two. Moxie was able to request a number of null-character certificates. His first request for www.bankofmaerica.com\0toughtcrime.com was interpreted by the Certificate Authority (CA), the company issuing certificates, as a toughtcrime.com certificate and thus it could validly be requested by Marlinspike, but nearly all browsers and other clients like SSL VPN’s, chat clients, etc as being a certificate for www.bankofameric.com. When Marlinspike investigated the routine that is responsible for handling these so called null terminated certificates, he discovered the certificates like (www.paypal.com|www.bankofamerica.com|login.live.com)\0tooughcrime.com would be valid for the first four domains and *\0toughtcrime.com would actually be valid for all domains. While he was inspecting the code, he also discovered that a certificate with the common name (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\0OVERWRITE).foo.com would actually cause an exploitable memory overwrite.</p>
<p>Moxie developed a tool and technique called SSLSNIFF which is able to do undetectable Man in the Middle attacks on SSL connections exploiting the possibilities null terminated certificates offer. He defined three possible counter measures against his attack. Certificate validation, software updates and extended validation certificates. Unfortunately he was able to defeat two of these three measures.<br />
Certificate validation these days is handled mostly by the OCSP, the Online Certificate Status Protocol. Marlinspike found a flaw in the protocol. On of the statuses the OCSP can send back is “Try later…”, represented by the number 3. Such a reply does not need to be signed by the CA an causes the browser to fail open, or as Moxie put it: “OCSP is defeated by the number 3”.<br />
Software updates can be another issue. At the time of the presentation, these bugs where only fixed in Firefox 3.5, so how do you prevent people from updating to this version? Most browsers these days have a so called auto update function, this function searches online for a more recent version of the browser, addons or plugins. In order to ensure that no malicious content is installed, the browsers rely on SSL, the same SSL that was broken by Marlinspike’s SSLSNIFF.</p>
<p>But there is more trouble in paradise. Marlinspike also demonstrated a technique het called ssl stripping. Ssl stripping does not attack SSL itself, instead it actually attacks, what Moxie described as the bridge between http and https. “Https is today’s world is not often encountered directly. Users don’t often type https:// in the address bar themselves. In stead they get redirected to an https site or click on a link to it”. By performing an man in the middle attack on the http connection and carefully rewriting all https requests to http requests, Marlinspike was able to create near exact copies of the login pages for services such as gmail and paypal. The user would only know something is wrong, if they notice that the https prefix is not there or that the padlock symbol is missing.</p>
<p>Dan Kaminski was also able to exploit the common name field to get certificates he should not be getting. Different implementations of certificate validation routines have flaws when it comes to handling certificates with multiple common names in them. By requesting a certificate with three common names: CN=www.ioactive.com, CN=www.bankofameric.com and CN=* Kaminski was able to get a certificate that would perceived as follows; the CA would sees the certificate as an www.ioactive.com certificate, which Kaminski is allowed to request. Internet Explorer will interpret the certificate as a www.bankofamerica.com certificate and Firefox will allow the certificate to be used for any url.</p>
<p>Besides the common name abuse, Kaminski also showed us that there is still an MD2RSA signed root certificate present in all browsers. While practical exploitation is not possible at the moment, it is very likely that this possible in the near future. Most browser vendors are working to fix the issue right now, but Kaminski kindly requested his public to “please, do not hack MD2 in the next six months.”</p>
<p>The last talk I attended was Mike Zusman’s “Criminal Charges not Pursued, Hacking PKI”. Mike used another technique to get “interesting” certificates. By exploiting a flaw in the web application of a CA, he was able to request certificates for pretty much any domain he wanted.</p>
<p>One of the solutions seems to be popping up is Extended Validation, which in a sense takes us back a couple of years. A few years back, the only way to buy a certificate was to provide legal evidence that you had control over a domain via an out of band mechanism to a human, but then these persons at the CA’s where replaced by an online application with an automated validation process and the fun started.</p>
<p>Extended Validation changes this by enforcing standards for validation and requiring validation by a human before the certificate gets issued. Extended Validation (EV) CA’s are hard coded in the browser to prevent the addition of malicious CA’s. But EV certificates get trusted just as much as classic certificates.</p>
<p>Mike Zusman was able to perform a man in the middle attack PayPal, which uses an EV certificate to protect its site. What his program does is only redirect a small portion of the traffic, the actual login, to his own malicious website which has a non-EV www.paypal.com certificate obtained via on of the methods described earlier. The only side effect visible to the user is a brief flickering of the green address bar. But will a user notice or care?</p>
<p>Obviously dual factor authentication, like <a href="https://www.paypal.com/securitykey" target="_blank">PayPal’s security key</a>, will reduce the risk, but what can we really do?</p>
<p>I was able to share a beer with Mike after he presentation and it looks like there are fundamental underlying problems with the current certificate structure. Here we have architecture of trust, yet its foundations are built on the known insecure DNS database. Browser vendors claim they have this set of rules that should be obeyed in order for a CA to be included in the browser, yet practice shows that certain CAs that have not followed these rules are still in the browser, while on commercial CAs, like CAcert are having a hard time getting included in browsers for what seems to be political reasons.<br />
It is time to ask ourselves fundamental questions like: Is it a good thing that a browser vendor determines who’s assertion of identity to trust. There is a trend that browsers make it harder to accept invalid certificates. Mike said: “It currently takes more clicks to accept an invalid certificate, then to import a new CA”. Is this a good thing?</p>
<p>Both Zusman and Kaminski agree that is would be a good thing if we had a trustworthy DNS structure that we could just to, e.g. store the fingerprints of certificates that are valid for our domain. Unfortunately DNSSEC is currently in a status quo. The current implementation still got issues, but until the root servers are going to be signed nobody will be motivated to fix these issues.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2009/08/ssl-beaten-up-at-blackhat-and-defcon/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Blackhat talk: More Tricks for Defeating SSL in Practice &#8211; Moxie Marlinspike</title>
		<link>http://www.cupfighter.net/index.php/2009/07/blackhat-post-more-tricks-for-defeating-ssl-in-practice-moxie-marlinspike/</link>
		<comments>http://www.cupfighter.net/index.php/2009/07/blackhat-post-more-tricks-for-defeating-ssl-in-practice-moxie-marlinspike/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 07:18:06 +0000</pubDate>
		<dc:creator>Frank Breedijk</dc:creator>
				<category><![CDATA[Blackhat]]></category>
		<category><![CDATA[Conferences]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Moxie]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSL]]></category>
		<category><![CDATA[Thunderbird]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=395</guid>
		<description><![CDATA[The background: In the past, basic constraints where not properly checked, so any client certificate could be used to create  another client certificate that would actually validate. Moxie wrote the tool SSLSNIF is that is able to do a man in the middle attack on  an SSL connection based on this vulnerability to proof to [...]]]></description>
			<content:encoded><![CDATA[<p>The background: In the past, basic constraints where not properly checked, so any client certificate could be used to create  another client certificate that would actually validate.</p>
<p>Moxie wrote the tool SSLSNIF is that is able to do a man in the middle attack on  an SSL connection based on this vulnerability to proof to Microsoft that it could be exploited, contrary to what Microsoft said.</p>
<p>Even tough Microsoft and others fixed the vulnerability, the tool is still useful, mainly because people don&#8217;t pay attention to certificate warning. Also when the guys that made the fake CA certificate by means of the the MD5 collision use SSLSNIFF to actually exploit is.</p>
<p>But there are more ways to attack SSL then doing a man-in-the-middle attack; SSL Stripping</p>
<p><span id="more-395"></span>SSLSTRIP actually attacks SSL before we get there by doing a MitM attack on http. Most https links are not typed, but clicked on or redirected to. SSLStrip watches the http traffic go by and modifies links to https sites to links to http, but it still does the https connection in the backend.</p>
<p>The server thinks is everything is normal because it is receiving valid https requests, the client does not display any warnings, but they are missing lock, but because the user is trained to pay attention to negative feedback and not look for positive feedback, this is not a big issue.</p>
<p>Where do we need to go next?</p>
<p>SSL needs to provide Secrecy, Authenticity and Integrity in order to be effective.</p>
<p>One of the issues is that today there are no people involved anymore with SSL certificates. Just domain validation which is based on a Whois lookup of root of the subject. This provides an email address or phone number to send a token to.</p>
<p>The standard for the DN has totally broken down. Most implementations just look at the CN= part. The CN is stored as a ASN1 string in memory, so they are basically Pascal strings, which means that the actual string is prepended by a byte representing the length. The null character is a valid part of CN string. However if you use the C routine Strcmp() it will actually regard www.paypall.com\0evil.org the same as www.paypall.com.</p>
<p>This bug exists in most web browsers, mail clients, chat clients and SSL vpn solutions like Citrix.</p>
<p>SSLSNIF 6.0 supports this.</p>
<p>Drawback of this attack: It needs to be targeted</p>
<p>Most of these products use NSSto do their certificate validation. If you look at the size and structure of the CN comparison code, there must be a bug in there somewhere.</p>
<p>There is: a certificate for *\0thoughtcrime.org will actually work. This is better then a CA certificate. *~thoughtcrime.org will work as well for some strange issue. As will grouping. CN=(www.paypal.com|www.google.com|www.bankofameric.com)\0.thoughtcrime.org actually works as well.</p>
<p>Also there is a flaw in the code thas actually remotely exploitable: (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\0OVERWRITE).foo.com. And the good thing is, the certificate does not even need to be signed.</p>
<p>Wildcard support is in SSLSNIF as well.</p>
<p>It does fingerprint the clients as well to see if they are SSN clients.</p>
<p>Two measures work against these attacks: Revocations and software updates.</p>
<p>These days most revocations are checked via OCSP. The OSCP response “try later”, the number 3, does not need to be signed. Most SSL implementations will assume a cert is valid if a “try later” rsponse is sent.</p>
<p>This is now also in SSLSniff.</p>
<p>Updates</p>
<p>Most software has an auto update function, e.g. take Firefox or Thunderbird. Unfortunately, these update mechanisms themselves could be a problem. Actually, Firefox/Thunderbird update files are not signed and they totally rely on TLS for their security.</p>
<p>This is also included in SSL Sniff</p>
<p>Stripping the NULL character is not the solution. Some CA&#8217;s are vulnerable sitekey.ba\0nkofamerica.com becomes sitekey.bankofamerica.com.</p>
<p><a href="http://www.thoughtcrime.org">http://www.thoughtcrime.org</a></p>
<p>When asked, Moxie confirmed that Firefox 3.5 is NOT vulnerable.</p>
<p>moxie@toughtcrime.org</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2009/07/blackhat-post-more-tricks-for-defeating-ssl-in-practice-moxie-marlinspike/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Certificate warnings don&#8217;t work</title>
		<link>http://www.cupfighter.net/index.php/2009/07/certificate-warnings-dont-work/</link>
		<comments>http://www.cupfighter.net/index.php/2009/07/certificate-warnings-dont-work/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 10:08:59 +0000</pubDate>
		<dc:creator>Cupfighter</dc:creator>
				<category><![CDATA[CaCert]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[certificates]]></category>
		<category><![CDATA[SSL]]></category>

		<guid isPermaLink="false">http://www.cupfighter.net/?p=377</guid>
		<description><![CDATA[As reported here: http://www.goodgearguide.com.au/article/312438/security_certificate_warnings_don_t_work_researchers_say &#8220;In a laboratory experiment, researchers found that between 55 percent and 100 percent of participants ignored certificate security warnings, depending on which browser they were using (different browsers use different language to warn their users). &#8220;Everyone knew that there was a problem with these warnings,&#8221; said Joshua Sunshine, a Carnegie Mellon [...]]]></description>
			<content:encoded><![CDATA[<p>As reported here: <a href="http://www.goodgearguide.com.au/article/312438/security_certificate_warnings_don_t_work_researchers_say" target="_blank">http://www.goodgearguide.com.au/article/312438/security_certificate_warnings_don_t_work_researchers_say</a></p>
<p>&#8220;In a laboratory experiment, researchers found that between 55 percent and 100 percent of participants ignored certificate security warnings, depending on which browser they were using (different browsers use different language to warn their users).</p>
<p>&#8220;Everyone knew that there was a problem with these warnings,&#8221; said Joshua Sunshine, a Carnegie Mellon graduate student and one of the paper&#8217;s co-authors. &#8220;Our study showed dramatically how big the problem was.&#8221; &#8230;</p>
<p>The researchers first conducted an online survey of more than 400 Web surfers, to learn what they thought about certificate warnings. They then brought 100 people into a lab and studied how they surf the Web.</p>
<p>They found that people often had a mixed-up understanding of certificate warnings. For example, many thought they could ignore the messages when visiting a site they trust, but that they should be more wary at less-trustworthy sites.</p>
<p>&#8220;That&#8217;s sort of a backwards understanding of what these messages mean,&#8221; Sunshine said. &#8220;The message is validating that you&#8217;re visiting the site you think you&#8217;re visiting, not that the site is trustworthy.&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cupfighter.net/index.php/2009/07/certificate-warnings-dont-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

