OVH Cloud OVH Cloud

La saga DigiNotar continue ...

91 réponses
Avatar
Xavier Roche
Le rapport
(http://www.scribd.com/doc/64011372/Operation-Black-Tulip-v1-0) du
gouvernement hollandais est édifiant: des malwares sur les serveurs de
production les plus critiques, serveurs non patchés avec de multiples
vulnérabilités, etc.

Il serait intéressant de savoir comment un prestataire aussi incompétent
techniquement a pu se glisser dans la liste des autorités de certification.

Et combien d'autres autorités de certification sont aussi peu fiables ..

10 réponses

Avatar
Aéris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 08/09/2011 12:28, Nicolas George a écrit :
Des méthodes existent pour garantir l'authenticité (GPG par exemple).


Je suis en partie d'accord avec ce que tu dis par ailleurs, mais ça, c'est
juste totalement faux.

Il n'y a aucun moyen de garantir l'authenticité de quoi que ce soit.



Effectivement, je me suis peut-être mal exprimé, mais je parlais bien
d'une utilisation « normale » de GPG, avec vérification et tout ce qui
va bien.

Donc GPG et SSL tel que je le décris fonctionne très bien et de manière
sécurisée *à long terme* (i.e. avec un web-of-trust important), et un
petit nouveau aura du mal à percer au début.
Mais en même temps, si on se base sur les GPG-signing-parties, même un
nouveau pourrait rapidement obtenir un web-of-trust suffisant pour se
lancer.

Le tout étant simplement de se débarrasser de ces root-CA arbitraires et
imposées, dont on voit bien qu'il est impossible d'y avoir confiance.

- --
Aeris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOaJvBAAoJEK8zQvxDY4P9y+cIAKRyihwmC8Z7z8brDfxsnXYf
jmBlionQYPjBB2m79Gh8OPGKQtw04TNzojhdPCfOJea5+pWl9KNXDP3Mto9nsM2z
9o0CpIAQMEG4DjE28siKxZgQwTVEBpqVQthUpGdEPYW+VxlyoVbMHnW0HHbwRYlJ
FMsgrtIg9BZUbF2vsKE/vubN7yheVJcmcYARVoCg/FwngxUiGDJxufD8hy+qI5HG
67Yp+IWjpB5SfvEXtf3ruNLAbjAYbtpttT8LQkoegqQd81FS2Xg6+sGShkQASAHR
v1ZVEoXmc0QRupuwaLGwL4Ho5BBxlCU5PQOYMwW1zCmEL8mtQ3pgvsiAfujDEhc =C+K8
-----END PGP SIGNATURE-----
Avatar
Bruno Tréguier
Le 08/09/2011 12:16, Aéris a écrit :
Le 08/09/2011 07:46, Bruno Tréguier a écrit :
On en revient à ce que je disais à propos de la perte de confiance: si
vous êtes le seul à proposer une solution de ce genre, alors que chez
tous les autres, il n'y a pas d'alerte de sécurité, vous allez perdre
des clients...



Oui et ? Il vaut mieux quoi ?



Un truc simple et réaliste...


Une seule alerte de sécurité à la 1ère connexion et d'autres en cas de
cybersquattage, compromission, MITM ?



Pas réaliste, au niveau de la distribution des certificats.


Ou pas d'alerte du tout et une jolie barre verte, y compris en cas de
cybersquatt, compromission, MITM ?



Ah ? Pourquoi n'y aurait-il pas d'alerte en cas de compromission ou de
MITM ?


Forcément, à continuer à jouer aux moutons…



Quand vous aurez une solution dont la viabilité a été prouvée (solution
sûre, déployable à grande échelle et acceptée sans souci par vos
clients), vous pourrez venir en parler. ;-)


Ca, c'est ce qui s'appelle une affirmation gratuite qu'il vous faudra
étayer pour me convaincre... ;-) Reprenez les RFC et dites-moi comment
vous pouvez déduire cela. Pour ma part voici ce que je trouve dans la
RFC2246:

"As part of the X.509 protocol (a.k.a. ISO Authentication
framework), certificates are assigned by a trusted Certificate
Authority and provide a strong binding between a party's identity
or some other attributes and its public key."

Relisez. Vous voyez (et comprenez) le mot "trusted" ?



Et ? Où c'est marqué que ces CA doivent obligatoirement être des root CA
arbitrairement hardcodées dans les navigateurs ?
Tu peux être toi-même ta propre CA et être « trusted » par tes propres
clients…



Je n'ai pas dit qu'il s'agissait forcément de root CA, il peut y avoir
des intermédiaires, mais il faut qu'il y ait une chaîne de confiance
ininterrompue, ce qui n'est pas le cas dans les certificats auto-signés.


Si je suis votre raisonnement, les PKI sont des trucs inutiles, donc ?



Rapport avec la choucroute ? Lien entre « PKI » et « root CA » ?



Si vous ne le voyez pas, c'est bien dommage. Allez, je vous aide:
http://lmgtfy.com/?q=root+CA+PKI


Bizarrement, j'ai plusieurs PKI à la maison, une pour chaque domaine que
je possède, et je ne suis pas une root CA…



Utiliser une infrastructure de gestion de clefs publiques à la maison,
c'est comme, disons, conduire une Ferrari sur un chemin de campagne. On
ne peut pas vraiment mesurer toute la puissance du mécanisme...


Vous pensez pouvoir prouver votre identité simplement sur la foi de
votre bonne tête, et comme sur Internet on est tous un gros tas de
chouettes copains, vous serez cru sur parole...



Non, mais tout protocole de sécurité impose un 1er contact fiable.



C'est précisément ce qui est assuré par les autorités de certification.


Et c'est aussi le but d'un « web-of-trust », la confiance s'acquiert
au-fur-et-à-mesure.



Oui.

Encore une fois, techniquement exact, mais pas applicable à des entités
externes à l'entreprise.



Ah ? Et en quoi ce n'est pas applicable je te prie ?



Parce qu'il est inimaginable de distribuer *de façon sûre* un certificat
d'autorité racine à grande échelle, sur les navigateurs de vos clients.
C'est le problème de la poule et de l'oeuf ! Dans une entreprise, c'est
différent, les postes clients sont en nombre plus limités, et sont
physiquement accessibles, il suffit donc d'installer ce certificat lors
de l'initialisation du poste.


Ce n'est pas du tout le même cadre d'utilisation. Je vous rappelle qu'on
est dans le cadre d'une relation commerciale avec éventuellement un
transfert d'argent à la clef (sans jeu de mots). La barre verte est là
pour *rassurer*, même si elle n'est en aucune cas un gage absolu de
sécurité. On n'est plus dans le domaine du rationnel ici, mais bel et
bien dans celui de l'affect.



Et faudrait continuer comme ça ?



A défaut d'une meilleure solution (c'est à dire à la fois plus sûre et
sans inconvénient complémentaire incompatible avec les compétences
informatiques de M. ToutLeMonde), oui.


À considérer la sécurité de vos clients comme de « l'affect » ?



Je ne considère pas la sécurité de mes clients comme de l'affect,
apprenez à lire, s'il vous plaît. J'ai simplement dit que quand vous
avez des clients, il vous faut faire le nécessaire pour éviter de les
perdre, et dans ce cadre, toute excentricité est inévitablement mal perçue.


Si j'osais, je dirais que la barre verte du navigateur est à SSL ce que
la cravate est au commercial: elle fait bonne impression, mais ne prouve
rien... ;-)



Exactement, et tout comme le commercial, non seulement elle ne sert à
rien, mais elle fait même souvent pire que bien (et proportionnellement
à sa taille) !



Quand vous allez en réunion avec votre Directeur, si vous en avez un
(mais je ne le pense pas vu vos propos et vos réactions), vous ne faites
pas un petit effort vestimentaire ? ;-)


Je m'en contrefiche royalement que VeriSign a confiance en 100.000.000
de certificats, j'ai juste besoin d'être sûr que les 3 ou 4 que
j'utilise plus ou moins régulièrement sont fiables.
Je me contrefiche de savoir que DigiNotar a confiance dans les sites de
l'administration Hollandaise où je ne mettrais probablement jamais les
pieds de ma vie, par contre que le site de ma banque soit réellement
celui que je pense visiter, ça oui, ça m'intéresse.



Et elle a fait comment, votre banque ? Elle vous a distribué de la main
à la main son certificat ? ;-)

--
Bruno Tréguier
Avatar
Aéris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 08/09/2011 12:38, Bruno Tréguier a écrit :
Cette méthode est valable si vous avez seulement quelques clients, mais
quand vous en avez des centaines ou des milliers, vous faites comment,
en pratique ?



Le Trésor Publique Français fonctionne avec de l'authentification forte
pour chaque contribuable, et gère près de 8 millions de certificats.
Certificats déployés dans les navigateurs à la 1ère connexion.

Houla, vous alignez un protocole (X.509), un logiciel (GPG) et un
algorithme (RSA) comme s'il s'agissait de choses similaires...



Ce n'est pas similaire au sens objectif d'utilisation, mais tous
reposent sur de la signature et du chiffrage asymétrique avec bi-clef.
Et tous nécessitent d'être vigilant au 1er contact :
— À la signature de la demande de certificat par la CA et à
l'acceptation du certificat par le client pour X.509
— À réception d'un message signé dont on ne connaît pas la clef pour GPG
— À l'étape de l'échange de clefs pour RSA
Dans chaque cas, si le 1er échange n'est pas fiable, tout la chaîne
s'écroule. Et la vérification devrait être faite manuellement et
directement par la personne concernée, non pas par des autorités
arbitraires.

Concernant le 1er contact, justement, le meilleur moyen (ou le moins
mauvais, si vous préférez) d'assurer un minimum de sécurité est encore
de faire appel à un tiers de confiance: une Autorité de Certification...



Non, tu aurais pu t'arrêter à « un tier de confiance ».
GPG fonctionne de manière totalement distribué et chaque utilisateur du
réseau est en lui-même un « tier de confiance ».
Mais à l'inverse des root-CA, une personne du réseau GPG n'est de
confiance que pour un sous-ensemble local du réseau, et pas forcément
pour toutes les clefs GPG qu'il a signé.
Il faut que *plusieurs* personnes *de confiance* désignent une clef
comme sûre pour qu'elle le deviennent potentiellement, et tu doit *toi
aussi* lui faire confiance *a posteriori* (en important la clef dans ton
trousseau).
À l'inverse pour SSL, il suffit *d'une seule* root CA *arbitraire* pour
que tu fasses confiance *a priori* à tous les certificats et
sous-certificats qu'elle a générés !

Je t'invite à lire la présentation du contournement SSL qui a été
présentée à la conférence BlackHat de 2009 :
http://www.blackhat.com/presentations/bh-usa-09/MARLINSPIKE/BHUSA09-Marlinspike-DefeatSSL-SLIDES.pdf
Tu verras tout ce qu'on est capable de faire signer à une CA ! Et toutes
ces failles sont évitables par une revue manuelle des certificats lors
de la 1ère connexion, et surtout par la suppression des root-CA de nos
navigateurs !

Sinon, vous pouvez bien entendu aller faire la tournée de vos clients, 1
à 1, et leur donner *de la main à la main*, et après avoir prouvé votre
identité, votre certificat serveur... ;-)



L'idéal serait ceci, effectivement.
Dans la pratique, il suffit de lui délivrer le certificat à son inscription.

Redecendez dans le monde réel... Vous préconisez donc que pour garder la
confiance de mes clients, je leur propose, en lieu et place d'une belle
barre verte dans leur navigateur, d'installer un certificat serveur qui
aura été signé via GPG ?



Non, je propose uniquement que tu leurs mettent à disposition ton
certificat, par exemple à leur inscription.
GPG n'est qu'une solution parmis tant d'autres pour répondre à ta
question de la certitude de confiance en ce certificat.

"Si tu tiens un site commercial, pourquoi avoir céder « au petit cadenas
» et « à la barre verte » alors qu'on voit bien que c'est totalement
inutile ?"

Et j'ai déjà répondu sur ce point. Version courte: je suis un pragmatique.



pragmatique, adjectif : Qui considère la valeur concrète des choses

Donc non, tu n'es pas pragmatique, au contraire…
La barre verte et le cadenas ne valent STRICTEMENT rien sans une
vérification MANUELLE par ton client que le certificat est bien LE TIEN !
Ils ne permettent que de garantir que les données que tes clients
saisiront ne seront lisibles que pour la machine cible et qu'une CA
arbitraire que personne ne connaît (et pire, dont personne n'a la
certitude qu'elle est fiable) accorde sa confiance à ce serveur.
Ils n'apportent aucune garantie que c'est bien TON serveur en bout de
course…

Sur les serveurs dont les gestionnaires ont compris cela, oui, mais ce
n'est pas le cas de tous. On trouve à peu près partout des fichiers en
téléchargement, avec une belle somme SHA1 à côté, censée permettre la
vérification de leur intégrité...



Tu as bien dis intégrité, par identité.
Le problème de SSL est exactement le même.

Et puis est-ce parce que quelqu'un fait mal les choses que je dois
moi-même mal les faire ?
Le nivellement par le bas, ça conduit rarement à de bonnes choses au final…

- --
Aeris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOaKOTAAoJEK8zQvxDY4P9e80H/1eFJQjtXyDSx7IOqTBJsKfS
UUi95P2g77/jt+7cEFovNpUS9TqhSj/Rrj1bzvZtykeXARsZbyBcoJYdRfh8fQQG
kOL/02i2p3P/j8ZWNb5PugbLZDdxBe+MpSnTnFrNq7df/zVQymP4F2gXzIUU8c+E
Ot74Z5VZbmVbnjS1gkqz13DpOEL0hGL4zTljHVNxhhrhmrbGkgxSGKozB61gfTKw
BpnDDW1OhH7IQ4xyw5oPkxxucWp0mVP96Y9MKXvDe8G6vs0xpxhI/l0o4G9qCyds
bQSa3BvG6saV/Yvo/yl+ix1RLrsXKQ8+Pnzra6tRzLQJ51ys9NCMuCNn5WLsiL4 =0LkC
-----END PGP SIGNATURE-----
Avatar
Aéris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 08/09/2011 13:01, Bruno Tréguier a écrit :
Un truc simple et réaliste...



Le problème est que « simple » et « réaliste », ça ne va souvent pas
ensemble…
Une solution simple ne sera pas sécurisée, une solution sécurisée ne
sera pas fiable.

Ou pas d'alerte du tout et une jolie barre verte, y compris en cas de
cybersquatt, compromission, MITM ?



Ah ? Pourquoi n'y aurait-il pas d'alerte en cas de compromission ou de
MITM ?



Conférence BlackHat 2009 : Null characters in SSL certificates
Les mecs demandaient à des root-CA de signer des domaines de type
paypal.commy.domain.com

Les CA valident que tu es bien détenteur du domaine « domain.com » et
donc que tu as le droit à ses sous-domaines, « paypal.commy » (valide
car X.509 est basé sur ASN.1 qui est en notation Pascal « longueur +
données ») en l'occurence, et te signent sans broncher ton certificat.
À la connexion dans ton navigateur, qui lui est en notation C « données
+ », le « strcmp(currentDomain, certificateDomain) » s'arrête sur «
paypal.com », et pouf, tu as une jolie barre verte dans ton navigateur
parce que ce certificat est signé par une root-CA tout ce qu'il y a de
valable !
Un coup de MITM, et tu affiches TA page « paypal.com » avec TON
certificat forgé, le client a sa barre verte mais sur TON site. Ne te
reste plus qu'à relayer tes flux sur les vrais serveurs Paypal en
utilisant leur vrai certificat, et basta.

Tout ceci n'est plus possible si le visiteur importe le certificat à la
1ère connexion :

— Dans le cas où le serveur n'est pas compromis, le sujet est bien «
paypal.com » et l'utilisateur l'importe, et n'a plus d'erreur de sécurité

— Dans le cas où le serveur est compromis par la suite, le certificat a
changé en face et n'est donc pas disponible pour le client, on se mange
à nouveau une erreur de sécurité, et on évite le pire, d'autant plus
qu'à l'import du certificat si l'utilisateur se laisse avoir quand même,
le sujet sera « paypal.commy.domain.com », donc 2nde chance d'éviter
le pire.

— Dans le cas où le serveur est compromis dès la 1ère connexion, alerte
de sécurité car le certificat n'est pas connu, le sujet du certificat
est « paypal.commy.domain.com » et donc le client voit qu'il y a un
problème, on évite le pire aussi !

Forcément, à continuer à jouer aux moutons…



Quand vous aurez une solution dont la viabilité a été prouvée (solution
sûre, déployable à grande échelle et acceptée sans souci par vos
clients), vous pourrez venir en parler. ;-)



Ben en attendant, vous utilisez actuellement une solution dont la sûreté
n'est plus prouvée…

Je n'ai pas dit qu'il s'agissait forcément de root CA, il peut y avoir
des intermédiaires, mais il faut qu'il y ait une chaîne de confiance
ininterrompue, ce qui n'est pas le cas dans les certificats auto-signés.



Ah ? Ben si, la chaîne de confiance est toujours intacte avec les
certificats auto-signés… Il suffit d'avoir confiance en le signataire…
Et je préfère (et de loin en terme de sécurité) faire confiance à mon
commercant (dont j'ai la plupart du temps moyen de m'assurer que c'est
bien lui) qu'à un vaste truc flou dont je n'ai même pas connaissance et
aucun moyen fiable de m'assurer de sa confiance.

Rapport avec la choucroute ? Lien entre « PKI » et « root CA » ?



Si vous ne le voyez pas, c'est bien dommage. Allez, je vous aide:
http://lmgtfy.com/?q=root+CA+PKI



C'est bien ce que je dis… Lien entre « PKI » et « root CA » ?
Aller, on retourne faire des maths :
« root CA » implique « PKI », mais comme l'implication n'est pas
réciproque, « PKI » n'implique pas obligatoirement « root CA »
Il y a donc bien un lien entre « root CA » et « PKI », mais pas entre «
PKI » et « root CA ».

Bizarrement, j'ai plusieurs PKI à la maison, une pour chaque domaine que
je possède, et je ne suis pas une root CA…



Utiliser une infrastructure de gestion de clefs publiques à la maison,
c'est comme, disons, conduire une Ferrari sur un chemin de campagne. On
ne peut pas vraiment mesurer toute la puissance du mécanisme...



PKI X.509 pour mes VPN et mes sites web.
Au moins je suis sûr de leur validité et sûreté.
Et en même temps, comme on dit toujours « Eating your own dog food ».
Je me verrais mal défendre ma position si ce n'était pas déjà ce que je
mettait en application moi-même…

Non, mais tout protocole de sécurité impose un 1er contact fiable.



C'est précisément ce qui est assuré par les autorités de certification.



Non, au contraire, à cause des CA, le 1er contact est *a priori* fiable,
même quand il ne devrait pas (cas des certificats Comode et Diginotar
compromis).
La fiabilité du 1er contact devrait être *a posteriori* (i.e. manuel)
avec validation par *le client final*.

A défaut d'une meilleure solution (c'est à dire à la fois plus sûre et
sans inconvénient complémentaire incompatible avec les compétences
informatiques de M. ToutLeMonde), oui.



Le problème est toujours le même, à force de vendre l'informatique pour
quelque chose de simple, on en arrive à la situation actuelle…
Non, l'informatique n'est pas simple, et si quelqu'un n'a pas les
connaissances/compétences/motivations pour comprendre réellement ce
qu'implique SSL, alors faut arrêter de lui faire croire qu'il est en
sécurité…

J'ai simplement dit que quand vous
avez des clients, il vous faut faire le nécessaire pour éviter de les
perdre, et dans ce cadre, toute excentricité est inévitablement mal perçue.



OK, donc vous préférez enbrumer vos clients avec de la poudre aux yeux
que de leur proposer de la réelle sécurité…
Excusez-moi, mais je ne serais jamais client chez vous alors…

Quand vous allez en réunion avec votre Directeur, si vous en avez un
(mais je ne le pense pas vu vos propos et vos réactions), vous ne faites
pas un petit effort vestimentaire ? ;-)



Si, j'ai un Directeur. Et non, je ne fais pas d'effort vestimentaire
plus que d'habitude, je m'efforce d'être convenable tout le temps, que
ce soit avec mes collègues, mes supérieurs ou mes collaborateurs !

Je n'ai pas pour habitude d'en mettre plein la vue et d'être totalement
creux derrière.
Et je pense que le Monde s'en porterait bien mieux si les gens
arrétaient de penser comme ça.

Et elle a fait comment, votre banque ? Elle vous a distribué de la main
à la main son certificat ? ;-)



Oui, à la 1ère connexion, lors de l'alerte de sécurité… Vu que j'ai viré
toutes les root CA de mes navigateurs =)
J'ai juste pris mes précautions pour m'assurer qu'il était valide.

Au final, je dois avoir à tout casser 4 ou 5 certificats réellement
critiques (ma banque, Paypal, GMail, quelques sites de commerce en
ligne…), les autres étant essentiellement du SSL « de complaisance »
(Google+, Facebook…) où l'identité du serveur en face n'a que peu
d'importance (et où là les root-CA pourraient avoir un semblant
d'utilité pour éviter les alertes multiples).

En gros, tout ce qui est login et données confidentielles devraient
passer par une validation et un import manuel des certificats, afin de
prévenir toute compromission future (serveur ou CA).
Pour le reste, le fonctionnement actuel des CA pourrait être suffisant
car une compromission ne présente pas de danger réel.

- --
Aeris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOaK10AAoJEK8zQvxDY4P9dVkIAIU5zlfrIiqd06C5aJBv5+mL
CpOgI+J1Gt80TAxZktNl31niJP3DyheBadJlquAxGIbVFOil8p4YCxyOfmei2dl3
8yVC6lTiGC5ITthZBeHqTVAT4RT5JmS1bUMt9E3y6XXZ7Fn9NkiHSVs5/zZFW+7t
X5WLv7EmEvlCmYQ6/Qwjha1EwwKaVr47o+9u00ZancC0izmQqLk0umbxrdGvSH4r
e8bL5FI2n7S25cpOWavtJ2nhS7eSnZdoPIN/f8yIblX4YhAxGW1K7PoMpYSUKPLb
dU8dd4j0/8Hwt9dpfVfwsWVi7wmW/yY5j01zWHyKPwSsHkSgrG3jaYB6WepYePU =XPA2
-----END PGP SIGNATURE-----
Avatar
Bruno Tréguier
Le 08/09/2011 13:14, Aéris a écrit :
Le Trésor Publique Français fonctionne avec de l'authentification forte
pour chaque contribuable, et gère près de 8 millions de certificats.
Certificats déployés dans les navigateurs à la 1ère connexion.



C'est vrai

Houla, vous alignez un protocole (X.509), un logiciel (GPG) et un
algorithme (RSA) comme s'il s'agissait de choses similaires...



Ce n'est pas similaire au sens objectif d'utilisation, mais tous
reposent sur de la signature et du chiffrage asymétrique avec bi-clef.
Et tous nécessitent d'être vigilant au 1er contact :
— À la signature de la demande de certificat par la CA et à
l'acceptation du certificat par le client pour X.509
— À réception d'un message signé dont on ne connaît pas la clef pour GPG
— À l'étape de l'échange de clefs pour RSA
Dans chaque cas, si le 1er échange n'est pas fiable, tout la chaîne
s'écroule. Et la vérification devrait être faite manuellement et
directement par la personne concernée, non pas par des autorités
arbitraires.

Concernant le 1er contact, justement, le meilleur moyen (ou le moins
mauvais, si vous préférez) d'assurer un minimum de sécurité est encore
de faire appel à un tiers de confiance: une Autorité de Certification...



Non, tu aurais pu t'arrêter à « un tier de confiance ».



Dans les faits, pour ce qui concerne SSL, un tiers de confiance
s'appelle une Autorité de Certification. ;-)


GPG fonctionne de manière totalement distribué et chaque utilisateur du
réseau est en lui-même un « tier de confiance ».
Mais à l'inverse des root-CA, une personne du réseau GPG n'est de
confiance que pour un sous-ensemble local du réseau, et pas forcément
pour toutes les clefs GPG qu'il a signé.
Il faut que *plusieurs* personnes *de confiance* désignent une clef
comme sûre pour qu'elle le deviennent potentiellement, et tu doit *toi
aussi* lui faire confiance *a posteriori* (en important la clef dans ton
trousseau).
À l'inverse pour SSL, il suffit *d'une seule* root CA *arbitraire* pour
que tu fasses confiance *a priori* à tous les certificats et
sous-certificats qu'elle a générés !

Je t'invite à lire la présentation du contournement SSL qui a été
présentée à la conférence BlackHat de 2009 :
http://www.blackhat.com/presentations/bh-usa-09/MARLINSPIKE/BHUSA09-Marlinspike-DefeatSSL-SLIDES.pdf
Tu verras tout ce qu'on est capable de faire signer à une CA ! Et toutes
ces failles sont évitables par une revue manuelle des certificats lors
de la 1ère connexion, et surtout par la suppression des root-CA de nos
navigateurs !

Sinon, vous pouvez bien entendu aller faire la tournée de vos clients, 1
à 1, et leur donner *de la main à la main*, et après avoir prouvé votre
identité, votre certificat serveur... ;-)



L'idéal serait ceci, effectivement.
Dans la pratique, il suffit de lui délivrer le certificat à son inscription.



*Comment* assurez-vous une distribution sûre ?


Redecendez dans le monde réel... Vous préconisez donc que pour garder la
confiance de mes clients, je leur propose, en lieu et place d'une belle
barre verte dans leur navigateur, d'installer un certificat serveur qui
aura été signé via GPG ?



Non, je propose uniquement que tu leurs mettent à disposition ton
certificat, par exemple à leur inscription.



Même question que ci-dessus.


GPG n'est qu'une solution parmis tant d'autres pour répondre à ta
question de la certitude de confiance en ce certificat.

"Si tu tiens un site commercial, pourquoi avoir céder « au petit cadenas
» et « à la barre verte » alors qu'on voit bien que c'est totalement
inutile ?"

Et j'ai déjà répondu sur ce point. Version courte: je suis un pragmatique.



pragmatique, adjectif : Qui considère la valeur concrète des choses



Je préfère la définition de Wikipedia:

"Le pragmatisme est plus une attitude philosophique qu'un ensemble de
dogmes. « Pragmatisme », vient du grec pragmata, action, ce qui atteste
du souci d'être proche du concret, du particulier, de l'action et opposé
aux idées abstraites et vagues de l'intellectualisme. Il s'agit en fait
d'une pensée radicalement empiriste : la notion d'effet pratique est
étroitement liée à la question de savoir quels effets d'une théorie sont
attendus dans l'expérience."

Donc vous pouvez raconter tout le mal que vous voulez sur les
certificats, les AC, etc., j'ai moi-même dit ce que j'en pensais
d'ailleurs, cela n'empêche que, pour l'instant, je considère qu'un
certificat dûment signé par une AC est la moins mauvaise des solutions
en considérant la totalité des données du problème.

Donc non, tu n'es pas pragmatique, au contraire…



C'est votre opinion. Encore une fois, quand vous m'aurez montré qu'une
autre solution équivalente était déployable à grande échelle (ce qui
sous-entend qu'elle a été adoptée, pour les mêmes buts, à savoir faire
du commerce par exemple) par un nombre important d'utilisateurs), on
pourra en reparler.

La barre verte et le cadenas ne valent STRICTEMENT rien sans une
vérification MANUELLE par ton client que le certificat est bien LE TIEN !



Nous sommes d'accord, mais le problème n'est pas là, encore une fois.


Ils ne permettent que de garantir que les données que tes clients
saisiront ne seront lisibles que pour la machine cible et qu'une CA
arbitraire que personne ne connaît (et pire, dont personne n'a la
certitude qu'elle est fiable) accorde sa confiance à ce serveur.
Ils n'apportent aucune garantie que c'est bien TON serveur en bout de
course…



Tout comme les certificats auto-signés. Il faut, là aussi, une vérif
manuelle.


Sur les serveurs dont les gestionnaires ont compris cela, oui, mais ce
n'est pas le cas de tous. On trouve à peu près partout des fichiers en
téléchargement, avec une belle somme SHA1 à côté, censée permettre la
vérification de leur intégrité...



Tu as bien dis intégrité, par identité.
Le problème de SSL est exactement le même.



L'un implique l'autre: s'il y a perte d'intégrité sur un certificat, il
y a potentiellement usurpation d'identité.


Et puis est-ce parce que quelqu'un fait mal les choses que je dois
moi-même mal les faire ?



Qui vous a demandé cela ? Vous faites comme bon vous semble, je ne crois
pas être celui qui, dans le présent débat, essaye d'imposer à autrui une
manière de faire les choses (ou alors, montrez-moi où), j'essaie juste
d'expliquer mes choix...


Le nivellement par le bas, ça conduit rarement à de bonnes choses au final…



Dites, vous pouvez garder vos leçons de morale pour vous ? Si vous
voulez faire de la philo, il y a des groupes pour ça.

Cordialement,

--
Bruno Tréguier
Avatar
Bruno Tréguier
Le 08/09/2011 13:56, Aéris a écrit :
Une solution simple ne sera pas sécurisée, une solution sécurisée ne
sera pas fiable.



Intéressant lapsus... ;-)


Ah ? Pourquoi n'y aurait-il pas d'alerte en cas de compromission ou de
MITM ?



Conférence BlackHat 2009 : Null characters in SSL certificates
Les mecs demandaient à des root-CA de signer des domaines de type
paypal.commy.domain.com



Ok, mais ce bug est corrigé depuis longtemps dans l'immense majorité des
navigateurs du marché, ce qui ne veut évidemment pas dire qu'il n'y a
pas d'autre bug ni que Mme Michu utilise un navigateur à jour, mais
cette technique ne peut pas être utilisée seule, elle sous-entend qu'il
y a également attaque par interposition et/ou usurpation DNS...

Je me demande quelle est l'attaque la plus simple à mener:

1) attaque "null character" + MITM et/ou spoofing DNS
2) falsification/remplacement du certificat auto-signé lors de sa
transmission

Vous me direz que tout dépend du mode de transmission... Et c'est
justement le point sur lequel vous n'avez toujours pas répondu
clairement. GPG n'est *pas*, dans un contexte commercial où les
responsabilités des uns et des autres doivent être clairement établies
et où on a un peu plus de 10 clients, une solution viable.


Tout ceci n'est plus possible si le visiteur importe le certificat à la
1ère connexion :



Comment assurez-vous la sécurité de cette première connexion ?


Quand vous aurez une solution dont la viabilité a été prouvée (solution
sûre, déployable à grande échelle et acceptée sans souci par vos
clients), vous pourrez venir en parler. ;-)



Ben en attendant, vous utilisez actuellement une solution dont la sûreté
n'est plus prouvée…



Mais qui est déployée à grande échelle, et dans laquelle on a encore
raisonnablement confiance, c'est ce que j'appelle du pragmatisme. Vous
semblez avoir dans l'idée que la sécurité absolue existe. Pour ma part
je préfère raisonner en compromis risque/efficacité.


Je n'ai pas dit qu'il s'agissait forcément de root CA, il peut y avoir
des intermédiaires, mais il faut qu'il y ait une chaîne de confiance
ininterrompue, ce qui n'est pas le cas dans les certificats auto-signés.



Ah ? Ben si, la chaîne de confiance est toujours intacte avec les
certificats auto-signés… Il suffit d'avoir confiance en le signataire…



Non, elle n'est respectée que si le signataire vous a remis le
certificat de la main à la main, sans intermédiaire.


Il y a donc bien un lien entre « root CA » et « PKI », mais pas entre «
PKI » et « root CA ».



Bon, on va arrêter de jouer sur les mots si vous voulez bien. On va
parler de tiers de confiance. Dans votre schéma, qui joue ce rôle ?


Bizarrement, j'ai plusieurs PKI à la maison, une pour chaque domaine que
je possède, et je ne suis pas une root CA…



Utiliser une infrastructure de gestion de clefs publiques à la maison,
c'est comme, disons, conduire une Ferrari sur un chemin de campagne. On
ne peut pas vraiment mesurer toute la puissance du mécanisme...



PKI X.509 pour mes VPN et mes sites web.
Au moins je suis sûr de leur validité et sûreté.



Vous pouvez faire cela parce que vous maîtrisez la chaîne de confiance
de bout en bout. Je fais exactement la même chose ici.

[couic les discussions qui tournent en rond]

J'ai simplement dit que quand vous
avez des clients, il vous faut faire le nécessaire pour éviter de les
perdre, et dans ce cadre, toute excentricité est inévitablement mal perçue.



OK, donc vous préférez enbrumer vos clients avec de la poudre aux yeux
que de leur proposer de la réelle sécurité…



Non, je propose une solution largement déployée et raisonnablement sûre,
à défaut de pouvoir l'être à 100%.


Excusez-moi, mais je ne serais jamais client chez vous alors…



A votre guise.


Quand vous allez en réunion avec votre Directeur, si vous en avez un
(mais je ne le pense pas vu vos propos et vos réactions), vous ne faites
pas un petit effort vestimentaire ? ;-)



Si, j'ai un Directeur. Et non, je ne fais pas d'effort vestimentaire
plus que d'habitude, je m'efforce d'être convenable tout le temps, que
ce soit avec mes collègues, mes supérieurs ou mes collaborateurs !



Bon, allez, on va changer d'exemple alors: avec une fille que vous
chercheriez à séduire ? Pour aller à un entretien d'embauche ? A défaut
de changer de tenue vestimentaire, n'auriez-vous pas, dans ces cas-là,
un comportement un tout petit peu plus "policé" que d'habitude ? Je
pense sincèrement que si, ce qui est normal: dans certaines
circonstances, vous vous souciez un peu plus de l'avis qu'ont certaines
personnes à votre propos. Il n'en va pas différemment pour moi vis à vis
de mes clients: s'ils étaient 2 ou 3, j'irais bien leur expliquer la
chose individuellement, mais comme ils sont beaucoup plus que ça, je me
contente d'utiliser des solutions imparfaites certes, mais répandues et
simples à utiliser. Je ne fais pas dans l'excentricité en leur
expliquant qu'il va falloir qu'ils téléchargent GPG, qu'ils vérifient
que leur copie de GPG n'est pas frelatée, qu'ils téléchargent le
certificat auto-signé, qu'ils le vérifient, etc. etc.


Je n'ai pas pour habitude d'en mettre plein la vue et d'être totalement
creux derrière.



Je n'ai pas dit cela non plus. D'ailleurs en règle générale j'apprécie
vos interventions sur ce groupe, mais j'essaie simplement de vous
montrer qu'il y a parfois des cas où il faut être moins intransigeant,
faire preuve d'un peu plus d'entregent, en particulier quand on veut
faire valoir son point de vue.


Et je pense que le Monde s'en porterait bien mieux si les gens
arrétaient de penser comme ça.



Oui, moi aussi quand j'étais petit, j'ai cru au Père-Noël pendant un
temps...


Et elle a fait comment, votre banque ? Elle vous a distribué de la main
à la main son certificat ? ;-)



Oui, à la 1ère connexion, lors de l'alerte de sécurité… Vu que j'ai viré
toutes les root CA de mes navigateurs =)
J'ai juste pris mes précautions pour m'assurer qu'il était valide.



Donc au final vous avez accepté leur certificat signé par une root CA. ;-)

Pour ma part, si mes clients veulent utiliser cette solution, je n'y
vois *aucun* inconvénient, c'est eux que ça regarde, pas moi. Comme pour
vous avez votre banque.


Au final, je dois avoir à tout casser 4 ou 5 certificats réellement
critiques (ma banque, Paypal, GMail, quelques sites de commerce en
ligne…), les autres étant essentiellement du SSL « de complaisance »
(Google+, Facebook…) où l'identité du serveur en face n'a que peu
d'importance (et où là les root-CA pourraient avoir un semblant
d'utilité pour éviter les alertes multiples).



Vous n'êtes pas représentatif, admettez-le... Moi je souhaite m'adresser
à des gens "standards" (pour ne pas dire "normaux").

Je terminerai simplement en disant qu'à mon avis, les risques liés aux
certificats, même s'ils sont réels, c'est *peanuts* à côté de ceux liés
aux applis codées directement au balai à chiottes. SSL ou pas, certif
auto-signé ou pas.

Bonne fin de journée, moi j'ai ma dose pour aujourd'hui je pense. ;-)

Cordialement,

--
Bruno Tréguier
Avatar
Aéris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 08/09/2011 14:30, Bruno Tréguier a écrit :
L'un implique l'autre: s'il y a perte d'intégrité sur un certificat, il
y a potentiellement usurpation d'identité.



Ce n'est valable que dans un seul sens malheureusement.

Un certificat usurpé signifie identité peu fiable.
Mais certificat pas usurpé ne signifie pas identité fiable !

- --
Aeris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOaMEIAAoJEK8zQvxDY4P9bW0H/2yeYdEE4DD8oPXmLOZ+kUWE
mgeTjGZo5nVyuZcjZlVOPA4dEge2EOLZsPmq+YzlA0SOqxCLzMGOnxSfXgnBEJLl
B2KzLdFwXfGv2qquIq0Jdxv3bXl3+i1YVtg+zCwQAHIzxyBSpynhZQrhchqpnEme
NJbVBFbnR2ErT8DovBssqGgqQdxDTQMmcQNz9QRFzgd7aGCgH2l9JQrwrAIcFEo4
QE/K6sRsN5VZ7cK9xbpwgSe/V6RhSNr1YA9LPmJmteuw8pwAqVjWrrVZ0m/I1KP+
d/1pLoSEyTYzHa4eMvJjHQP7j42545jBchJmtJCjkXUScFzAvX98hF0ghBG8w+c =QpKS
-----END PGP SIGNATURE-----
Avatar
Aéris
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Le 08/09/2011 15:17, Bruno Tréguier a écrit :

Donc au final vous avez accepté leur certificat signé par une root CA. ;-)



Oui et non.
J'ai accepté un certificat signé par une CA, mais pas au motif qu'il est
signé par une CA ! Mais au motif que le mec qui gère le site web m'a
confirmé qu'il s'agissait bien de son certificat.
La nuance est de taille.

- --
Aeris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJOaMc6AAoJEK8zQvxDY4P9AQ0H/2l/9KmGJ5VBhMCjfWM+V7a1
J4mScaYdRJI1cCtN+E6UMOuB0868bGT6rkTx4KGJ0tQcmYFgHmAPJFPLpNDx+sPg
HwQheHKTFvBl0W1haT2e9x2fDwMhgRAV3Gkxedrx2VdpEOVj7OkgY6nO+8J2oakG
oaajVEyuh33FHoEC/u9qjP27iLwAlrnAibHPA0SEKHwD4Uw5dJNZ4Kgy+YTpybgo
eiK53aISRntiPA6A5nm7cqDO7mI73AxYWtEinB0nFo1EbS4uM3ToDk0HgjfKhUc9
d3KWnMI1vOf+t4WsGA7W2tdUKeOMgQHLw0FjfnSqrhSsJQjw/6L2Di4Xf3YxmDY =kLBs
-----END PGP SIGNATURE-----
Avatar
Az Sam
"Aéris" a écrit dans le message de
news:4e6891b7$0$14908$


OK, donc forcément, avec ce genre de mentalité, les root CA vont encore
avoir la vie longue, et les clients la sécurité courte…

D'autant plus qu'importer un certificat dans un navigateur se fait en 1
clic à la 1ère connexion.
Le site du Trésor Public Français le fait très bien pour de
l'authentification forte avec TOUS ses contribuables (le certificat est
déployé à l'inscription).





A toi et à Bruno Tréguier, je dois vous préciser que mes remarques étaient
des antiphrases.
"Commerce oui mais réflexion du client non..." et "Commerce oui mais
responsabilité non..." sont le reproche que je fais a ces politiques de
sécurité.


--
Cordialement,
Az Sam.
Avatar
Gloops
Fabien LE LEZ a écrit, le 07/09/2011 16:47 :
On Tue, 06 Sep 2011 18:29:25 +0200, Xavier Roche
:

Si cela permet de faire une grosse purge dans ce panier de crabes que
sont les autorités de certification, ainsi soit-il.



Honnêtement, j'ai abandonné tout espoir. Entre les autorités foir euses
et les certificats auto-signés, je préfère considérer que HTTP et
HTTPS sont équivalents.

Le joli cadenas, sa sert surtout à rassurer Mme Michu, pour qu'elle
n'hésite pas à faire marcher le commerce électronique.

Ah, j'oubliais la meilleure: les boites en question sont auditées pa r
des "experts" en sécurité pour pouvoir faire partie du gotha des
entreprises de confiance. Ce qui donne un éclairage édifiant sur l e
niveau de compétence de ces fameux experts ..



J'ai lu (sur reddit je crois), il y a un ou deux mois, le message d'un
admin système qui demandait des conseils, car un "expert" chargé d' un
audit lui demandait la liste des mots de passe de tous ses
utilisateurs (en clair bien sûr), sur les six derniers mois.




C'est pas bête comme requête : si l'administrateur est capable de
répondre, ça veut dire qu'il faut fermer le site *de toute urgence*.

Le même style d'attrape-couillon était (ou est) proposé aux chôme urs qui
demandent une subvention pour monter leur boîte : le formulaire demande
le numéro de SIRET. Si jamais ce champ est renseigné, aussi sec les
indemnités sont supprimées, puisque le demandeur n'est plus chômeur (on
ne peut pas à la fois être chômeur, avoir DEJA monté une entrepri se
-puisqu'elle a déjà un numéro de SIRET- et demander une subvention pour
pouvoir la monter). Et comme les subventions sont réservées aux
chômeurs, pas de subvention de création d'entreprise non plus.

Je crois savoir que c'est Ubu qui a inventé ça.


Cela étant, à moins que nous habitions bel et bien chez Ubu, il impor te
aussi de vérifier l'identité du demandeur et son mandat, et au besoin de
porter plainte.