lundi 24 février 2014

Faille IMPORTANTE SSL (sécurité) Iphone Ipad ipod IOS7.x.



Si vous avez un Ipad ou Iphone ipod et que vous êtes en IOS 7.0.x (jusqu'au 7.0.6 qui règle le problème ) une énorme faille de sécurité est présente sur tous les appareils. Même jailbreakés
Une brèche qui permet des attaques de type «attaque de l’homme du milieu», dont l’objectif est d’intercepter les communications entre deux parties sans qu’elles s’en aperçoivent. 

Cette faille est en faite un problème au niveau du SSL (
 Transport Layer Security (TLS), et son prédécesseur Secure Sockets Layer (SSL) sont desprotocoles permettant de sécuriser les échanges sur Internet),en gros  n’importe quelle personne pouvait simuler un faux certificat d’un site internet sécurisé pour ensuite vous voler vos données confidentielles. Un problème très grave surtout si des personnes commencent à utiliser la faille (comme maintenant elle est connu par tous) pour vous voler vos informations personnelles.


Des soupçons se portent vers un ingénieur qui aurai sciemment enregistré cette faille..


Donc deux cas se présentent à vous, ou vous avez un appareil jailbreaké et la pas besoin de faire de mise à jour juste un patch dont l'installation est expliquée plus bas suffit, ou il n'est pas jailbreaké. Donc voici comment faire :


Appareil non jailbreaké upgrade vers la version iOS 7.0.6 voici un tutoriel :
  • Branchez votre iPhone à iTunes
  • Faites « Restaurer » l’iPhone, surtout ne pas mettre à jour.
  • Votre ordinateur va télécharger le IPSW de l’iOS 7.0.6 automatiquement
  • Une fois le téléchargement terminé, faites « Restaurer » et la restauration débute
  • Attendez quelques minutes et votre iPhone et bel et bien sur l’iOS 7.0.6.


Appareil Jailbreaké 
  • lancez Cydia
  • Recherchez "SSLPatch 1.0" normalement sur repo Bigboss  si vous ne le trouvez pas rajoutez la source http://rpetri.ch/repo ou http://repo.insanelyi.com
  • Installer le et redémarrez votre appareil

Bien sur l'avantage de la seconde méthode est que cela ne prend qu'une minute. Pas besoin de restaurer son iphone et installer le nouvel IOS (1 heure sans parler des appli et données....).

Bref cela fonctionne sur tous les types d'appareils ! 

Vidéo explicative si vous n'y arrivez pas :




Test fonctionnel après mise à jour:

D’ici là, pour minimiser les risques, passez-vous de Safari et de Mail. Chrome et Firefox, par exemple, ne sont apparemment pas concernés par ce problème, ils utilisent leur propre implémentation de SSL. Le souci c’est que ce problème n’est pas limité à Safari et Mail, un grand nombre de programmes font appel à des connexions sécurisées. Une page de test a d’ailleurs été mise au point pour savoir si votre navigateur est concerné ou non par cette faille ou celle ci https://gotofail.com/. Si votre configuration est sécurisée, vous devriez obtenir un message d’erreur. Sinon, vous obtiendrez un court message vous confirmant que votre navigateur est bel et bien vulnérable. Enfin, évitez d’utiliser des connexions Internet qui ne sont pas dignes de confiance comme les hot-spot Wi-Fi.

Explication technique :

Une erreur de programmation :

Ce qui est hallucinant dans cette affaire, c’est que cette faille est particulièrement grossière. Spécialiste de ce genre de questions, Adam Langley a publié le code fautif en question, celui-ci étant open source. Il est relatif àSecureTransport, l’implémentation d’Apple donc pour SSL et TLS.
static OSStatus
SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,
uint8_t *signature, UInt16 signatureLen)
OSStatus err;
...
if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
...
fail:
SSLFreeBuffer(&signedHashes);
SSLFreeBuffer(&hashCtx);
return err;
}
Si vous développez un peu, même sans tout comprendre, vous comprendrez aisément le problème. Ces quelques lignes de code sont donc censées vérifier l’authenticité de la connexion SSL. Le problème se situe dans la vérification de la seconde condition if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
Il y a, à la suite de cette condition, deux goto fail. Si le premier obéit à une condition, le second s’exécute directement. Résultat, tout programme faisant appel à cette routine, pour vérifier l’authenticité d’une connexion SSL, obtient une réponse « bidon ».
L’erreur est tellement grossière que certains spécialistes en sécurité se demandent s’il ne s’agit pas d’un acte malveillant. À l’heure où nous écrivons ces lignes, personne ne sait si cette faille a été exploitée par un hacker malintentionné ou par des organismes de type NSA. Dans sa note de sécurité parue hier, Apple ne crédite personne.

Aucun commentaire:

Enregistrer un commentaire