Developpez.com

Le Club des Développeurs et IT Pro

Android : des applications utilisant OpenSSL échappent à la faille HeartBleed

à cause d'un bug dans leur code source

Le 2014-04-25 06:39:00, par Cedric Chevalier, Expert éminent sénior
HeartBleed, c’est la nouvelle vulnérabilité critique qui fait parler d’elle en ce moment. Quoi de plus normal, puisqu’elle touche OpenSSL, une bibliothèque quasi universelle pour le chiffrement des données sur Internet.

Concrètement, il s’agit d’un dépassement de tampon (Buffer Overflow) qui affecte les versions 1.0.1 et 1.0.2 d’OpenSSL. Un hacker peut l’exploiter pour extraire des informations sensibles (clés privées par exemple) de la mémoire d’un serveur vulnérable.

L’inverse est aussi vrai. Autrement dit, un serveur compromis peut à son tour extraire les données sensibles de la mémoire des clients qui exécutent des versions vulnérables d’OpenSSL.

Dans une récente étude, le cabinet de sécurité Fire Eye estime que 150 millions d’applications Android téléchargées intègrent des versions vulnérables de la bibliothèque de chiffrement. Sauf qu’en pratique, certaines de ces applications ne sont pas du tout vulnérables à HeartBleed.

Un mystère que les experts du cabinet ont pu élucider. Ces applications contiennent un bug qui fait qu’elles utilisent les fonctionnalités de chiffrement natives de la plateforme de Google, et non celles de leur bibliothèque embarquée. Or, la bibliothèque native de la plateforme n’est pas vulnérable à HeartBleed. Comme quoi tous les bugs ne sont pas néfastes.

De plus, on note d’après Fire Eye que les applications Android les plus touchées sont les jeux et dans une moindre mesure les outils de productivité. Mais tout de même, dans l’ensemble, les développeurs réagissent bien face à HeartBleed. Le nombre d’applications vulnérables diminue de façon appréciable.

Source: Blog Fire Eye

Et vous ?

Avez-vous déjà été victime d'un bug "positif" comme celui-ci ?
  Discussion forum
4 commentaires
  • imikado
    Rédacteur
  • rawsrc
    Expert éminent sénior
    Envoyé par Cedric Chevalier
    Comme quoi tous les bugs ne sont pas néfastes.
    Toutafé : il est coutume de dire : "c'est un mal pour un bien"
  • imikado
    Rédacteur
    J'ai mémoire d'un effet inverse: en croyant corriger un bug ça en a créé un:
    En analysant le code source et voyant une variable non défini, la personne a défini cette variable (croyant corriger le problème) et en fait c'etait "fait exprès": le fait de ne pas initialiser la variable la mettait dans un etat "inconnu" nécessaire pour l'algo de chiffrage...

    Mais ça c'est plutôt : le mieux est l'ennemie du bien
  • nirgal76
    Membre chevronné
    Envoyé par imikado
    J'ai mémoire d'un effet inverse: en croyant corriger un bug ça en a créé un:
    En analysant le code source et voyant une variable non défini, la personne a défini cette variable (croyant corriger le problème) et en fait c'etait "fait exprès": le fait de ne pas initialiser la variable la mettait dans un etat "inconnu" nécessaire pour l'algo de chiffrage...

    Mais ça c'est plutôt : le mieux est l'ennemie du bien
    Faut plutôt revoir l'algo là (et les commentaires qui auraient dû prévenir en expliquant en peu). C'est du "poor programming" comme on dit chez nous.