Un hacker montre comment modifier un email après l’avoir envoyé

Un hacker white hat vient de découvrir une faille qui permet de modifier le contenu d’un email, même après que celui-ci ait été envoyé et reçu par son destinataire. La faille repose sur la manipulation des feuilles de style CSS et pourrait être exploitée de plusieurs manières.

Avec Gmail, il est possible de rappeler des emails envoyés par erreur. Cette astuce très utile repose en réalité sur une fonction de retardement de la délivrance des messages. La modification d’un email déjà parvenu à son destinataire paraissait impossible à réaliser, mais Francisco Ribeiro, un chercheur en sécurité de la société Mimecast, vient de prouver le contraire.

Piratage : comment on peut modifier un email après l’avoir envoyé

À l’instar des pages web, la plupart des emails envoyés aujourd’hui sont au format HTML, ce qui permet de leur donner plus d’attrait comparativement aux messages affichés dans un simple format texte. Cette mise en forme plus flexible est possible grâce à la liaison d’une feuille de style CSS (Cascading Style Sheets) qui permet de contrôler n’importe quel aspect de l’affichage des emails.

Selon le billet de blog de Mimecast, les messages électroniques au format HTML posent un problème : les feuilles de style sont hébergées sur des serveurs autres que ceux des clients de messagerie. L’expert en sécurité Francisco Ribeiro a mis la main sur une faille qu’il a nommée ROPEMAKER. Elle permet de manipuler des fichiers CSS de manière à modifier l’affichage des emails déjà envoyés, et même lus par leurs destinataires.

Cette faille est exploitable de deux manières. La première a été baptisée “Switch Exploit”. Elle permet d’utiliser la commande CSS “display” pour afficher du contenu variable. Dans son exemple, le chercheur montre comment il est possible de référencer deux URL différentes.

Au moment de l’envoi, l’attaquant peut afficher un lien “sain” qui lui permettrait de contourner les filtres de sécurité des clients mail. Grâce à la fonction “Display”, il peut a posteriori décider de masquer le bon lien et d’afficher une adresse malicieuse qui pourrait par exemple servir à des attaques de type phishing.

Le deuxième exemple est un peu plus compliqué. Baptisé « Matrix Exploit », il consiste à intégrer chaque lettre de l’alphabet dans le code HTML de l’email par le biais d’une balise <div>. Il est ensuite possible grâce à la feuille de style CSS hébergée à distance d’afficher n’importe quel texte voulu, et cela inclut les URL vers des sites malveillants.

Afin d’éviter ce genre d’attaque, le chercheur recommande d’utiliser les clients de messagerie dans leur version web (Gmail.com, Outlook.com etc.). Les clients web ne sont apparemment pas affectés par les exploits CSS de type Ropemaker. Par contre, les versions desktop et mobile de Microsoft Outlook, Apple Mail et Mozilla Thunderbird sont toutes vulnérables.