Technique

Chatbot hack : Attention à vos assets

0

Voici pourquoi il est important de bien tester et protéger son chatbot, même quand vous n’avez pas d’interface publique. Il est très facile de trouver l’adresse de votre chat et par conséquent lui envoyer un tas de requêtes pour le faire tomber ou ralentir le service. Une attaque DOS classique, mais qui peut faire tomber un bot mal protégée sous prétexte que Facebook est entre les deux.

hack-chatbot
Le jeu consiste à récupérer l’adresse d’un asset, une image, une vidéo d’un webhook remonté par le chabot, un carrousel de produit par exemple, et là d’inspecter l’élément via votre console Chrome ou sur Firefox et d’avoir l’url du média. Facebook ne vient pas récupérer les images que vous pouvez renvoyer et les stocker chez lui, ce qui peut se comprendre, mais laisse le champ libre aux curieux. Il n’y a pas besoin d’être un expert pour exploiter cette astuce, il est donc impératif de faire attention et d’éviter la catastrophe.

Il existe un moyen de contourner le problème, il s’agit d’utiliser un CDN afin d’isoler l’application des différents assets. Pour les e-commerçants cela est généralement déjà en place sur leur site, il n’y a donc pas trop de problèmes pour faire la bascule, par contre c’est au niveau des services qui proposes des images dynamiques ou créées à la volée, elles restent bien souvent du côté applicatif et pas vraiment dans un CDN, c’est exactement là qu’il faut solidifier votre application.

Pour ceux qui n’ont pas encore de chatbot sur Facebook il faut savoir que Facebook surveille l’activité de votre chat et communique en permanence avec votre application même si personne ne parle à votre chatbot. Cela permet à Facebook de vérifier que votre service et toujours actif. Si vous service ne répond pas vous allez recevoir une alerte de Facebook dans votre compte développeur indiquant qu’il est impératif d’enquêter sur le problème, au bout d’un certain moment Facebook peut désactivé votre chat et demander plus d’explication sur le problème, pendant ce temps votre bot n’est plus disponible pour les utilisateurs.

Il existe un petit outil en Ruby qui vient tester la résistance de votre chatbot, le voici https://github.com/davidmann4/msf-fb-messenger-bot-dos

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *