image

Microsoft negeert eigen advies met SSL-certificaat

vrijdag 18 juli 2008, 15:03 door Redactie, 13 reacties

De meeste online consumenten kijken bij het winkelen naar het 'gouden slotje' omdat ze is aangeleerd dat dit veilig is, maar hoe kun je dit nu zeker weten? Dat kun je doen door te kijken naar de uitgever van het certificaat, de zogeheten Certificaat Autoriteit. Maar wat als een website zijn eigen certificaat uitgeeft en ondertekent? Technisch is dit geen probleem, maar kun je de uitgever dan wel vertrouwen?

"Ik gebruik zelf-ondertekende certificaten altijd voor hobby-projecten en interne webservers van mijn bedrijf, maar als ik een miljardenbedrijf zou zijn, zou ik de tweeduizend dollar voor een Verisign certificaat wel kunnen betalen. Het gaat uiteindelijk om een vertrouwenszaak," zegt 'El Di Pablo', die doelt op Microsoft. De softwaregigant blijkt haar eigen certificaten te ondertekenen en dat is geen goede zaak. "Vertrouw ik jouw zelf-ondertekend certificaat? Zeker weten van niet! Vertrouw ik die van mij? Ja. Vertrouw ik Microsoft's zelf-ondertekende certificaten? Geen idee. Hoe kan ik weten dat iemand niet de DNS heeft vergiftigd en mij naar een phishingsite doorstuurt?"

Volgens Di Pablo is het probleem met zelf-ondertekende certificaten dat iedereen er eentje kan maken en aan zichzelf kan toekennen. "De reden dat er een publiekelijk betrouwbare Certificaat Autoriteit zoals Verisign is om websites te identificeren, is juist een van de voornaamste redenen dat er SSL-certificaten zijn."

Microsoft lijkt door het zelf ondertekenen van certificaten haar eigen advies te negeren. "U kunt op verschillende manieren een servercertificaat verkrijgen. U kunt een zelfondertekend certificaat genereren, een certificaat aanschaffen bij een externe CA van derden, of u kunt een certificaat aanvragen bij een interne domein-CA. Van deze drie opties zijn zelfondertekende certificaten het minst veilig. Een dergelijk certificaat mag alleen worden gebruikt voor het testen of oplossen van problemen met toepassingen die HTTPS gebruiken."

Reacties (13)
18-07-2008, 15:58 door Anoniem
Bron heeft het volstrekt verkeerd: er is weldegelijk een
certificate chain met GTE Cybertrust als root CA en een
tussenliggende MS certificate authority. Of de bron snapt
niet wat een self-signed cert is...
18-07-2008, 16:03 door Anoniem
Waarom zou verisign betrouwbaarder zijn dan Microsoft? Omdat ze geld
vragen voor het certificaat en MS wel eens gratis dingen wegggeeft?
18-07-2008, 16:30 door spatieman
hmpf.
voor deze keer weet ik geen geflambeert antwoordt tegeven.
18-07-2008, 16:52 door Mameomowskwooz
Di Pablo begrijpt er kennelijk niks van nee.
Leuk is dat dit dus TE eenvoudig is om na te
trekken/controleren...

@Redactie: Dit bericht maar snel verwijderen/rectificeren.

Overigens verbaast 't me dat zo'n blog als bauer-power als
(kennelijk enige) bron gebruikt wordt voor een dergelijk
artikel op security.nl
18-07-2008, 16:58 door Anoniem
Door Mameomowskwooz
Di Pablo begrijpt er kennelijk niks van nee.
Leuk is dat dit dus TE eenvoudig is om na te
trekken/controleren...

@Redactie: Dit bericht maar snel verwijderen/rectificeren.

Jullie roepen te vroeg. Microsoft gebruikt een cerificate
authority die wel wordt herkend in eigen browser, maar niet
in bijvoorbeeld firefox. Dat lijkt me toch redelijk dom.
18-07-2008, 16:58 door SirDice
Door Anoniem
Bron heeft het volstrekt verkeerd: er is weldegelijk een certificate chain met GTE Cybertrust als root CA en een tussenliggende MS certificate authority. Of de bron snapt niet wat een self-signed cert is...
Het certificaat op https://mcp.microsoft.com ? Ik zie daar toch echt geen chain.. Alleen dat MS zelf 't ding heeft uitgegeven.

Interesting.. Ik had met FF gekeken. Als je met IE kijkt zie je inderdaat GTE als root CA staan. Drie keer raden waar die root CA certificaten in IE vandaan komen...
18-07-2008, 17:06 door Mameomowskwooz
Door SirDice
Door Anoniem
Bron heeft het volstrekt verkeerd: er is weldegelijk een
certificate chain met GTE Cybertrust als root CA en een
tussenliggende MS certificate authority. Of de bron snapt
niet wat een self-signed cert is...
Het certificaat op https://mcp.microsoft.com ? Ik
zie daar
toch echt geen chain.. Alleen dat MS zelf 't ding heeft
uitgegeven.

CA Issuers: URI:
http://www.microsoft.com/pki/mscorp/Microsoft%20Secure%20Server%20Authority(4).crt

en die weer met:
http://www.microsoft.com/pki/mscorp/mswww(3).crt
En daar zie je dus dat ie is uitgegeven door GTE CyberTrust...
18-07-2008, 17:15 door SirDice
Geinig.. In FF zie je dus alleen die Issuer vermelt in het certificaat.
Issuer:
CN = Microsoft Secure Server Authority
DC = redmond
DC = corp
DC = microsoft
DC = com

Authority information Access:
Not Critical
CA Issuers: URI:
http://www.microsoft.com/pki/mscorp/Microsoft%20Secure%20Server%20Authority(4).crt
CA Issuers: URI:
http://corppki/aia/Microsoft%20Secure%20Server%20Authority(4).crt

En meer niet.. Let op die laatste url.. Tikkeltje funky..


Als je in FF dat MS Secure Server Authority certificate ophaalt vraagt FF netjes of je deze vertrouwt en waarvoor. Daarna pas is die hele chain te zien.
18-07-2008, 17:21 door Mameomowskwooz
Door SirDice
Geinig.. In FF zie je dus alleen die Issuer vermelt in het
certificaat.
Issuer:
CN = Microsoft Secure Server Authority
DC = redmond
DC = corp
DC = microsoft
DC = com

Authority information Access:
Not Critical
CA Issuers: URI:
http://www.microsoft.com/pki/mscorp/Microsoft SecureServer Authority(4).crt
CA Issuers: URI:
http://corppki/aia/Microsoft Secure ServerAuthority(4).crt

En meer niet.. Let op die laatste url.. Tikkeltje funky..


Als je in FF dat MS Secure Server Authority certificate
ophaalt vraagt FF netjes of je deze vertrouwt en waarvoor.
Daarna pas is die hele chain te zien.
SirDice, hier een url met meer
hierover....http://blogs.msdn.com/larryosterman/archive/2004/06/04/148612.aspx

Moet em zelf ook nog es lezen,...maar is dus een bekend
issue. :-)
18-07-2008, 17:30 door SirDice
Door Mameomowskwooz
SirDice, hier een url met meer hierover....http://blogs.msdn.com/larryosterman/archive/2004/06/04/148612.aspx

Moet em zelf ook nog es lezen,...maar is dus een bekend issue. :-)
Aha.. Duidelijk.. Thanks :)

En het is inderdaad geen self-signed certificaat.

Here is a screen shot of Microsoft's Volume License website's cert info taken from Firefox

Edit: Nog even verder zitten graven..
Interessante discussie over dit "gedrag" (of het gebrek er aan):
https://bugzilla.mozilla.org/show_bug.cgi?id=399324
18-07-2008, 18:37 door Mameomowskwooz
Door SirDice

Edit: Nog even verder zitten graven..
Interessante discussie over dit "gedrag" (of het
gebrek er aan):
https://bugzilla.mozilla.org/show_bug.cgi?id=399324

Haha, aan die discussie van Mozilla kan ik wel toevoegen dat
Opera 9.51 en IE7 beiden dit gedrag niet vertonen.
(net ff getest)
Verder proef ik uit die discussie ook bij Mozilla enige
arrogantie. Het soort arrogantie dat Microsoft vaak ook
(terecht of onterecht) verweten wordt. 't Woord
evangelism komt me net even iets te vaak voor.

Door Anoniem op vrijdag 18 juli 2008 15:58

Bron heeft het volstrekt verkeerd: er is weldegelijk een
certificate chain met GTE Cybertrust als root CA en een
tussenliggende MS certificate authority. Of de bron snapt
niet wat een self-signed cert is...
Daarnaast heeft de bron dus FireFox gebruikt... :-)

[off topic]Ik mis Nomen Nescio in deze discussie. Nu verdedigen SirDice en ik Microsoft eens een keer met argumenten en feiten en nu is ie er niet! ;-)[/off topic]
19-07-2008, 03:40 door Bitwiper
Door Mameomowskwooz
Haha, aan die discussie van Mozilla kan ik wel toevoegen dat Opera 9.51 en IE7 beiden dit gedrag niet vertonen.
(net ff getest)
Verder proef ik uit die discussie ook bij Mozilla enige arrogantie. Het soort arrogantie dat Microsoft vaak ook (terecht of onterecht) verweten wordt.
Voor de duidelijkheid, de discussie gaat niet over of chained certificates wel/niet verstandig zijn, maar of alle tussenliggende certificaten automatisch door een webbrowser moeten worden opgehaald indien de server ze niet automatisch meestuurt, en of het niet beter is dat de server ze wel automatisch allemaal meestuurt.

[url=https://mcp.microsoft.com/mcp/default.aspx]Deze Microsoft server[/url] stuurt alleen z'n eigen certificaat (dat overigens niet self-signed is). De server stuurt dus niet uit zichzelf de twee benodigde intermediate CA certificaten (waarvan de laatste met het GTE CyberTrust Global Root certificaat uit het 'Trusted Root Certification Authorities' tabblad van 'Internet Options - Content - Certificates' wordt gevalideerd).
Overigens worden die twee intermediate certificaten vanaf IP-adres 207.46.193.254 gehaald (dit gebeurt maar 1x, ze worden meteen permanent in de intermediate certificate store van windows opgeslagen), terwijl de SSL verbinding (en dus het daarbij gebruikte certificaat) plaatsvindt met 131.107.100.156.

Ik vind het geen arrogantie van Mozilla, want bij Microsoft zelf zijn ze het onderling ook niet eens:

[url=http://blogs.msdn.com/card/archive/2008/03/21/cardspace-certificate-chain-validation-issue-with-intermediate-certificates.aspx]Deze blog[/url] beschrijft problemen van Cardspace met intermediate CA certs die geen [url=http://tools.ietf.org/html/rfc3280#section-4.2.2.1]Authority Information Access (AIA)[/url] gebruiken. Het probleem is hier omgekeerd: de Cardspace module wil zelf alle tussenliggende CA's hebben maar krijgt die niet als ze nog niet in de windows certificate store zitten. Als 'possible workaround for this issue' vermeldt MS dat het gebruik van AIA een oplossing zou kunnen zijn, maar plaatst daar wel de volgende opmerking bij:
However, it may not be judicious to overly depend on the AIA infrastructure as a workaround for this issue. This is because CAs may not choose to include this extension. In addition, it is often unreliable, especially with enterprise CAs. For example, the URL specified in the AIA extension might be [color=red]invalid[/color] or [color=red]unreachable[/color].
Een voorbeeld van invalid is http://corppki/aia/Microsoft Secure ServerAuthority(4).crt welke natuurlijk alleen binnen de muren van MS werkt.

Nog duidelijker is deze [url=http://www.microsoft.com/technet/archive/security/news/rootcert.mspx?mfr=true]Microsoft Root Certificate Program publicatie[/url] met o.a. in de Frequently Asked Questions sectie de vraag of intermediate CA certs niet ook met MSIE meegeïnstalleerd zouden moeten worden:
Why won’t you distribute my intermediate root CAs? I have problems building chains to my root certificate without them.

The Program is responsible for updating root certificates only. Intermediate certificates included in Windows today are purely for legacy reasons. Managing the distribution of intermediate certificates for all CAs in the root program is not scalable since CAs frequently add and remove intermediate CAs for business and lifecycle reasons. Generally intermediate CA certificates can be distributed in two ways:

- PKI applications such as SSL, S/MIME, and Microsoft Authenticode always send the intermediate CA certificates with the end certificate to facilitate intermediate certificae distribution. [color=red]This is the preferred solution[/color].

- The CA has the option to specify a URL in a certificate via the Authority Information Access extension (RFC 3280) that serves as a hint to Windows CryptoAPI to download the issuer certificate. Most CAs today issue certificates with the AIA extension to enable issuer certificate discovery.
19-07-2008, 20:01 door Nomen Nescio
Door Mameomowskwooz
Door SirDice

Edit: Nog even verder zitten graven..
Interessante discussie over dit "gedrag" (of het
gebrek er aan):
https://bugzilla.mozilla.org/show_bug.cgi?id=399324

Haha, aan die discussie van Mozilla kan ik wel toevoegen dat
Opera 9.51 en IE7 beiden dit gedrag niet vertonen.
(net ff getest)
Verder proef ik uit die discussie ook bij Mozilla enige
arrogantie. Het soort arrogantie dat Microsoft vaak ook
(terecht of onterecht) verweten wordt. 't Woord
evangelism komt me net even iets te vaak voor.

Door Anoniem op vrijdag 18 juli 2008 15:58

Bron heeft het volstrekt verkeerd: er is weldegelijk een
certificate chain met GTE Cybertrust als root CA en een
tussenliggende MS certificate authority. Of de bron snapt
niet wat een self-signed cert is...
Daarnaast heeft de bron dus FireFox gebruikt... :-)

[off topic]Ik mis Nomen Nescio in deze discussie. Nu verdedigen SirDice en ik
Microsoft eens een keer met argumenten en feiten en nu is ie er niet! ;-)
[/off topic]
Ach, ik word er een beetje moe van, elke keer die ongefundeerde nonsens te
moeten bestrijden. Het is zo nutteloos, want ze blijven gewoon doorblaten,
naar argumenten wordt niet geluisterd. Zelfs bewijzen worden niet
geaccepteerd, de eerste de beste puistenkop die iets heeft horen mekkeren
op de middelbare school, weet het allemaal veel beter.

Verder hebben jullie hier een goed onderbouwde redenatie, dus wat zal ik er
dan nog aan toevoegen?
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.