Sortie de GnuPG 1.4.14 et Libgcrypt 1.5.3

Posté par . Édité par Nils Ratusznik. Modéré par Nils Ratusznik. Licence CC by-sa
Tags : aucun
39
31
juil.
2013
GNU

GnuPG (aussi connu sous le nom de GPG, pour GNU Privacy Guard) est un outil permettant notamment de transmettre des messages signés et/ou chiffrés. La libgcrypt est une bibliothèque cryptographique dérivée de GPG, utilisée notamment par les versions 2.0 et supérieures de GPG (dont la 2.0.20 est disponible depuis le 10 mai dernier). Le 25 juillet dernier sont sorties des mises à jour de ces deux logiciels.

Cette mise à jour apporte un correctif de sécurité suite à la publication par Yuval Yarom et Katrina Falkner d'une méthode pour extraire les clés privées à l'aide d'un logiciel espion exploitant la Mémoire_cache de troisième niveau. La particularité de cette attaque est qu'elle est possible depuis n'importe quel programme exécuté sur la même machine physique, ce qui signifie dans un environnement mutualisé que celle-ci est possible depuis une machine virtuelle autre que celle exécutant GnuPG.

  • # Attaque tout en finesse

    Posté par (page perso) . Évalué à 3.

    Je viens de lire le papier sur l'attaque. C'est d'un simplicité confondante.
    Ça fonctionne même entre machines virtuelles, je suppose à condition que la version de GnuPGP de l'autre machine virtuelle soit connu.

    Je ne sais pas trouver le patch correspondant. Quelqu'un a une idée ou un lien ?
    J'imagine que la parade est d'exécuter les 3 opérations quel que soit le bit traité, mais j'aimerais bien voir l'implémentation.

    • [^] # Re: Attaque tout en finesse

      Posté par . Évalué à 7.

      Le commit dans libgcrypt est ici.

      Et le commentaire de la modification principale dit :

             /* To mitigate the Yarom/Falkner flush+reload cache
              * side-channel attack on the RSA secret exponent, we do
              * the multiplication regardless of the value of the
              * high-bit of E.  But to avoid this performance penalty
              * we do it only if the exponent has been stored in secure
              * memory and we can thus assume it is a secret exponent.  */
      

      donc c'est comme tu t'y attendais, mais pas systématique.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.