0){ $retour="quatre-vingt-".chiffre($unites,$genre); } if ($dizaines==8 & $unites==0){ $retour="quatre-vingts"; } if ($dizaines==9){ $retour="quatre-vingt-".chiffre_dix($unites); } return $retour; } function par3($lavaleur,$demille,$genre='masc',$type=''){ if (strlen($lavaleur)==1){$lavaleur="00".$lavaleur;} if (strlen($lavaleur)==2){$lavaleur="0".$lavaleur;} $centaines=substr($lavaleur,0,1); $dizaines=substr($lavaleur,1,1); $unites=substr($lavaleur,2,1); if ($centaines>1){ $cent="cents"; } if ($demille=="mille"){ $cent="cent"; } if ($dizaines+$unites>0){ $cent="cent"; } if (($demille=="million" OR $demille=="milliard") AND $centaines+$dizaines+$unites>1){ $demille=$demille."s"; } if ($centaines+$dizaines+$unites>0){ $demille=" ".$demille; }else{ $demille=""; } if ($centaines>0){ $retour=chiffre_sans($centaines)." $cent ".dizaines($dizaines,$unites,$genre); }else{ $retour=dizaines($dizaines,$unites,$genre); } if (trim($retour)=="un" & trim($demille)=="mille"){ $retour=""; } if (trim($retour)=="un" AND $type=='date'){ $retour="premier"; if($genre=='fem') $retour="première"; } if($genre=='fem' AND $retour=="un") $retour="une"; return $retour.$demille; } function en_lettres($lavaleur,$genre='masc',$type=''){ $lavaleur=strrev($lavaleur); $unites=par3(strrev(substr($lavaleur,0,3)),"","$genre","$type"); $milliers=par3(strrev(substr($lavaleur,3,3)),"mille"); $millions=par3(strrev(substr($lavaleur,6,3)),"million"); $milliards=par3(strrev(substr($lavaleur,9,3)),"milliard"); return trim("$milliards $millions $milliers $unites"); } function jour_en_lettres($lavaleur){ return en_lettres($lavaleur,'','date'); } function en_lettres_fem($lavaleur){ return en_lettres($lavaleur,'fem',''); } function enlettres($lenombre,$unite='',$unites='',$entre='',$apres='',$apress=''){ $lenombre=ereg_replace(",",".",$lenombre); $lenombre=explode(".",$lenombre); $entier=$lenombre[0]; if ($entier>1 & strlen($unite)>0){ $unite=$unites; } $virgule=$lenombre[1]; if ($virgule>1 & strlen($apres)>0){ $apres=$apress; } if ($entier==0 OR $virgule==0){ $entre=""; } if ($entier==0){ $unite=""; } $entier=en_lettres($entier); if ($virgule==0){ $apres=""; } $virgule=en_lettres($virgule); return trim("$entier $unite $entre $virgule $apres"); } ?> Heartbleed - Flux et fixe

Accueil > Blog > Heartbleed

Faille de sécurité dans OpenSSL

Heartbleed

102/14

Pourquoi notre cœur est-il en train de saigner ?

Pour des raisons que la décence m’oblige à taire ici. Parce que le discours de politique générale de notre nouveau Premier ministre m’a rappelé les plus belles heures du « socialisme » et parce que — ce n’est pas sans lien — Alain Finkielkraut est immortel. Voilà pour mon cœur. Quant au nôtre ?

Notre cœur, c’est-à-dire le cœur du réseau. Eh bien, si le cœur du réseau saigne, attention je m’accroche, c’est parce qu’un bogue — une erreur de programmation de la part d’un développeur allemand — dans une nouvelle fonctionnalité (Heartbeat) d’un protocole (TLS/DTLS) massivement utilisé pour chiffrer les communications des serveurs — c’est à ce niveau que ça se passe, celui de la couche transport, hors de ma portée à moi simple internaute ; et pourtant sont aussi contenues-là mes informations (identifiants, mots de passe) dont j’ai besoin pour accéder à Google and co. Si le cœur du réseau saigne, c’est donc parce qu’un bogue dans un protocole de chiffrement a créé une énorme faille de sécurité transformant les serveurs Web en véritables passoires. Premier effet, des serveurs dont il devenait possible de lire la mémoire comme dans un livre ouvert à une page au hasard... Deuxième effet, des sites aux certificats d’authentification compromis (quand je voyais une adresse web commencer par httpS au lieu de http j’étais rassuré, ça avait un effet magique, eh bien même ça, c’était faux). Bref, le cauchemar.

PNG - 7.1 ko

Nom de la nouvelle fonctionnalité boguée ? Heartbeat — cœur qui bat. D’où le nom donné à la faille : Hearbleed — cœur qui saigne. Pour qu’un cœur saigne il faut d’abord qu’il batte, à la bonne heure. Il faut reconnaître que ce nom, Heartbleed, parle au cœur. La faille, révélée cette semaine mais qui existe depuis deux ans — ce qui rajoute à l’inquiétude car il est tout à fait probable qu’elle ait été exploitée entre temps, et pas seulement par les services —, a donc un nom, un logo, son site Web, tous créés pour l’occasion par une entreprise spécialisée en sécurité informatique du nom de Codenomicon. Du marketing très utile pour mobiliser la communauté open-source afin de combler la faille de sécurité, corriger le bogue, le « patcher ». D’autres saisissent l’occasion pour insister sur la faiblesse des procédures de vérification dans la communauté — comment un bogue d’une telle gravité a-t-il pu échapper à la vigilance des développeurs ? Cela remet-il en cause la manière dont les standards sont conçus au niveau international, ne faudrait-il pas les repasser dans le giron d’une instance gouvernementale ?

PNG - 46.4 ko

Si Snowden nous a rendu méfiant, Heartbleed, c’est un coup de poignard au cœur de l’architecture de l’Internet ; sur une échelle de 1 à 10, Heartbleed arrive à 11. Ce n’est pas de moi mais de Bruce Schneier, qui fait office de référent suprême en matière de cybersécurité. Heartbleed touchant à OpenSSL mis en œuvre par plus de la moitié (66%, je lis) du Web, ses effets sont encore loin d’être tous connus... Bon je vous rassure, avant de vous précipiter pour changer vos mots de passe, c’est d’abord aux administrateurs des serveurs de corriger la faille : la bonne nouvelle c’est aussi que si votre administrateur utilisait une vieille version d’OpenSSL, il n’a sans doute pas été touché par Heartbleed (la faille étant présente sur les versions d’OpenSSL allant de la 1.0.1 à la 1.0.1f incluse). Comme quoi la lenteur a ses vertus... et l’obsolescence est parfois la meilleure des sécurités (@baroug©).

Chronique de la Place de la Toile du 12 avril 2014
L’imagerie computationnelle de Nicolas Ayache

Un commentaire ?

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?
Ajoutez votre commentaire ici
  • Ce formulaire accepte les raccourcis SPIP [->url] {{gras}} {italique} <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document