Manipuler les filtres pour augmenter le nombre de faux-positifs.

SPAM-00034-altospam

Contre-apprentissage de filtre bayesiens

L’apprentissage et l’adaptation sont les maîtres mots des filtres anti-spam. Mais il est possible qu’un attaquant mal intentionné mette à profit ces qualités pour détourner le processus de classification des filtres et qualifier un grand nombre de courriers légitimes en spams, augmentant ainsi le nombre de faux-positifs.
Les filtres anti-spam se servent d’algorithmes d’apprentissage pour identifier correctement les messages légitimes des spams. Les filtres les plus courants, SpamBayes, BogoFilter et le composant d’apprentissage de SpamAssassin, utilisent tous des algorithmes d’apprentissage appartenant à la même famille, ne différant que par quelques méthodes. En l’absence d’une base de données universelle fiable de tous les spams en circulation à un moment donné, la lutte anti-spam exige en effet de ses outils qu’ils développent la capacité de détecter, sans informations préalables, les spams. Un groupe de chercheurs de Berkeley a récemment découvert qu’une attaque parfaitement ciblée peut détourner ces filtres de leur objectif, et ainsi augmenter le nombre de faux-positifs chez le destinataire. Une telle attaque pourrait être utile par exemple si une organisation cherchait à empêcher une organisation rivale d’avoir accès à certains emails importants, ou pour un spammeur afin d’amener la victime à désactiver complètement son anti-spam, et ainsi recevoir tous les spams qui lui sont envoyés.

Une telle attaque ne peut avoir lieu qu’à une condition : l’attaquant doit pouvoir envoyer des emails qui serviront à l’apprentissage du filtre. Dans la plupart des cas, cette condition est atteinte : les filtres se servent en effet des classifications manuelles effectuées par les utilisateurs (classer en spam un faux-négatif, en non spam un faux-positif, ou en spam / non spam suivant le cas un message classé comme indéterminé par le filtre) sur les emails qu’ils ont reçus pour adapter en conséquence leurs futures décisions. Pire encore, certains antispams sont pourvus de règles d’auto-apprentissage intégrant automatiquement les spams détectés dans les bases Bayésiennes ce qui ne fait qu’amplifier le processus. Il suffit donc que l’attaquant envoie des emails à la victime pour que la condition soit remplie.

La nature même de l’attaque réside dans le fait qu’elle ne cherche pas à exploiter des failles, mais au contraire à se baser sur le principe adaptatif même de l’algorithme pour en manipuler les résultats. Examinons le cas où on cherche à faire classer des messages légitimes bien ciblés en faux-positifs. L’attaquant connaît donc au moins une partie du contenu de ces messages (ex : des réponses-types à des appels d’offres). Il va alors envoyer un certain nombre de messages à la victime, messages comprenant les termes qui seront placés dans les messages légitimes. Afin de cacher ses véritables intentions, il peut y ajouter d’autres termes qui n’ont rien à voir et qui sont juste utilisés en guise de camouflage. Son unique objectif est que les messages qu’il envoie soient classés manuellement comme spams par la victime. Au fur et à mesure que ces messages sont ainsi classés, le filtre attribuera des scores de plus en plus élevés aux termes/ mots qui y sont présents régulièrement. Lorsque les courriers électroniques légitimes arriveront dans le serveur de messagerie de l’utilisateur, le filtre identifiera tout de suite la présence des termes/mots et qualifiera immédiatement ces messages de faux-positifs, placés d’office dans le dossier spam (voire détruits, si c’est ce que l’utilisateur a demandé comme action).

Ce type d’attaque ciblée est particulièrement efficace parce que les autres emails légitimes sont normalement reçus, et si la victime n’a pas été avertie de l’envoi des mails ciblés par un autre moyen, elle ne saura jamais que des faux-positifs sont passés inaperçus.

Outre l’attaque ciblée, la même technique peut être utilisée pour faire passer un grand nombre d’emails, sans ciblage, en faux-positifs,  en envoyant au dispositif d’apprentissage des e-mails rédigés grâce à un dictionnaire composé de termes souvent dans la langue de la victime. De ce fait, la victime sera obligée soit de vérifier à chaque fois son dossier de courriers indésirables pour aller repêcher les faux-positifs, soit se décidera à désactiver l’antispam définitivement.

La conclusion ? Un système basé uniquement sur un filtre bayésien, aussi efficace soit-il, n’est pas fiable, et on ne saurait recommander de combiner plusieurs protocoles de détection antispam, ou de confier la lutte à des professionnels qui sauront réagir très rapidement en cas de comportement anormal du système.

Et si vous testiez les solutions d’Altospam?

Des milliers de DSI, RSSI et Responsables Informatiques nous font déjà confiance pour la protection de leur e-mails contre le phishing, spear phishing, ransomware, …