Qu’est-ce qu’un bot : définitions, exemples

Bots est l'abréviation de robots. Ce terme est connu des gamers qui peuvent jouer contre des robots dans les parties pour s'entraîner.
Mais il existe aussi des bots sur internet. Aujourd'hui, on estime que plus d'un tiers du trafic sur internet provient de bots.
Mais qu'est-ce qu'un bot exactement ? A quoi cela sert ? Y-a-t-il de bons ou mauvais bots ?

Cet article complet aborde tous les aspects des bots informatiques et plus particulièrement sur internet.
En fin d'article comment atténuer et protéger un site WEB des bots.

Qu'est-ce qu'un bot : définitions, exemples

Qu'est-ce qu'un bot ?

Un bot est un programme informatique qui permet d'effectuer des taches automatisées.
Ils fonctionnement de manière autonomes sans qu'aucun humain n'est à effectuer d'actions particulières.
Les robots imitent ou remplacent souvent le comportement d'un utilisateur humain.
En règle générale, ils effectuent des tâches répétitives et peuvent les faire beaucoup plus rapidement que les utilisateurs humains.

Sur Internet, il existe des milliers de bots qui parcourt chaque jour la toile.
Certains robots sont utiles, tels que les bots des moteurs de recherche qui indexent le contenu pour la recherche ou les robots du service client qui aident les utilisateurs.
D'autres bots sont «mauvais» et sont programmés pour pénétrer dans les comptes d'utilisateurs, rechercher des informations de contact sur le Web pour envoyer du spam ou effectuer d'autres activités malveillantes.

Les bon bots

Ce sont donc les robots qui n'effectuent pas des tâches malveillantes et qui servent internet de manière utiles.
Par exemple, cela peut être :

  • Chatbots : robots qui simulent une conversation humaine en répondant à certaines phrases avec des réponses programmées
  • Crawlers Web (Googlebots, BingBot) : robots qui analysent le contenu des pages Web partout sur Internet
  • Les robots sociaux (Facebook, Twitter, WhatsApp) : les robots qui opèrent sur les plateformes de médias sociaux

Les crawlers Web (Googlebots, BingBots)

Les robots d'exploration Web sont connus sous différents noms, notamment les araignées, les fourmis, les robots, les indexeurs automatiques.
Ce sont donc les robots officiels des moteurs de recherche qui parcourent sans cessent le WEB afin de collecter le contenu des pages afin de les répercuter dans les recherches WEB.

L'administrateur d'un site WEB a tout intérêt à laisser passer ces bots.
En effet, bloquer ces bots peut pénaliser le site sur les moteurs de recherche.

Les bots sur les réseaux sociaux

Notez qu'un robot sur un réseau social peut être bon ou mauvais, tout dépend de la finalité.
Par exemple, ci-dessous le CovidTracker Bot récupère des données officielles de datagouv.fr afin de tweeter des messages automatiquement sur l'avancement de l'épidémie et de la vaccination.

CovidTracker Bot sur Twitter

Mais on peut aussi rencontrer des bots qui visent à amplifier des fake news ou certaines discussions politiques pour les faire ressortir.
Ces robots retweetent ou envoient des messages automatisés sur discussions précises pour les faire remonter dans fils et buzzer.
Ainsi, certains groupes ou états se livrent une guerre d'opinion visant parfois à en déstabiliser d'autres.
Parfois il s'agit tout simplement d'humains utilisant des comptes anonymes. Il en existe en France : Twitter: comment des comptes anonymes viennent servir le discours de LREM

En 2019, on estime que le trafic sur internet provenant de bots représente 37,2%.

https://www.imperva.com/blog/bad-bot-report-2020-bad-bots-strike-back/

Les mauvais bots

Les mauvais bots ont des intentions malveillantes et sont néfastes pour les internautes.
Voici une liste des types de bots et actions malveillants qu'ils peuvent opérer :

Des groupes de cybercriminels infectent des systèmes (PC, IoT, ...) afin de constituer un réseaux de bots.
Ils contrôlent ces bots afin d'effectuer différentes tâches malveillantes.
Ces réseaux d'appareils zombis se nomment botnet.

Ainsi les adresses IP diffèrent d'un fournisseur d'accès internet à l'autre, d'un pays à l'autre, rendant la reconnaissance difficile.

SPAM

Le SPAM vise à poster des messages dans des lieux de discussions et échange souvent pour faire la promotion d'un produit, site WEB, etc.
Depuis très longtemps des bots existent pour poster des messages automatiques sur des forums, commentaires de sites internet et bien entendu par mail.
On peut d'ailleurs les nommer spambots.

Il existe donc de véritables botnets dédiés dans l'envoi automatique de messages ou mails de SPAM.
Par exemple, ci-dessous ce forum est submergé de messages de SPAM.
Les bots sont capables de créer un compte, vérifier le mail reçu pour confirmer l'inscription puis parcourir le forum pour poster un message automatiquement.

Exemple de spams sur les forums par des bots

AdFraud

Autour de 2016, Methbot, un réseau de bots a opéré dans les fraudes aux régies publicitaires ( "Adfraud").
C'est à dire que ce malware a simulé les comportements d'humains et d'internaute qui visitent des sites web.
Le but était de simuler des clics sur les bannières publicitaires afin de faire gagner de l'argent aux opérateurs.

Methbot simulait des comportements, comme par exemple, des petits déplacements de souris, etc.. mais sont point fort était sa capacité à se connecter à des sites WEB et aux réseaux sociaux comme Twitter, Facebook.
Par conséquent, les historiques, cookies, données statistiques laisse encore une fois penser qu'il s'agit bel et bien d'un être humain.
Ces attaques sur régies publicitaires sont de véritables batailles d'algorithmes et sont complexes mais au final elles rapportent gros, des millions de dollars !
La multiplication des objets connectés (IdO/IoT) compromis va doper cette tendance et faire naitre de nouveaux criminels / riches.

Contrairement aux botnets habituels qui consistent à infecter des ordinateurs, maintenir ce dernier et outrepasser les listes noires des régies publicitaires en tentant de faire joindre de nouveaux bots chaque jour.
Les auteurs de Methbot ont développés une tout autre méthode qui consiste à louer légalement des serveurs dans des centres d'hébergements professionnels.

Ensuite, pour passer inaperçu, ces serveurs loués sont maquillés de façon à faire passer ces derniers pour des adresses IPs résidentielles (câbles, xDSL etc).
Par exemple modifier les informations WHOIS avec des noms de fournisseurs d'accès internet.
Ainsi, les régies publicitaires éprouvaient des difficultés à distinguer les bots des vrais internautes.

De tels programmes existent depuis plusieurs dizaines d'années et sont connus comme étant des "trojan clicker". Bedep est un autre Trojan AdFraud qui génère ~ 150 000 millions de hits par jour. Methbot, plus récent, est largement au dessus puis qu'il peut dépasser les ~ 2 500 millions de hits par jour ! On estime que le botnet est composé d'environ 570 000 IPs.

Ainsi, on cherche à bloquer le trafic provenant de ces bots afin de protéger les ressources de son site WEB.

Le web scraping

Le web scraping est l'action de récupérer des données d'un site WEB de manière automatisé par une entité autre qu'un moteur de recherche.
Cela peut avoir plusieurs aspects.
Par exemple, crawler et aspirer tout le contenu d'un site WEB pour le reproduire.
Il arrive régulièrement que des sites WEB soient mis en place en étant de véritables copies d'un autre.
Le but est alors de ressortir sur les moteurs de recherche à la place du site initial.
On peut aussi utiliser ses données pour alimenter l'empoisonnement SEO afin de rediriger les internautes vers du contenu malveillant depuis les moteurs de recherches.

Mais cela peut aller plus loin, par exemple une société concurrence peut crawler le site commerciale de son concurrent pour récupérer la liste de ses clients.
On peut aussi consolider une base cliente, par exemple, crawler le site des pages jaunes pour récupérer les adresses postales.

Par exemple cette banque d'images gratuite protège le téléchargement des images afin qu'elles ne puissent être téléchargées automatiquement pour en alimenter une autre.

Le web scraping

Enfin il existe les Ticketing Bots. Ce sont des bots capables d'acheter des billets de concerts, évènements sportifs ou culturelles dans le but de revendre ces billets dans un but lucratif.

Le web scraping peut avoir des conséquences vraiment néfastes.

Bloquer et filtrer les bots : captcha, etc

Pour protéger les sites WEB, il faut des solutions capables de de trier l'activité nuisible des bots de l'activité des utilisateurs et des activités utiles des bots via l'apprentissage automatique.
Cela afin d'arrêter les comportements malveillants sans affecter l'expérience utilisateur ni bloquer les bons robots.

Les solutions de gestion des bots doivent être en mesure d'identifier et de bloquer les bots malveillants sur la base d'une analyse comportementale qui détecte les anomalies, tout en permettant aux bots utiles d'accéder aux propriétés Web.

Les critères qui peuvent aider à détecter un bot d'un humain :

  • Tendances du trafic : des pics de trafic anormaux peuvent indiquer que des robots atteignent le site
  • Taux de rebond : des hauts ou des bas anormaux peuvent être le signe de mauvais robots. Par exemple, les bots qui accèdent à une page spécifique du site, puis changent d'adresse IP, semblent avoir un rebond de 100%.
  • Sources de trafic : lors d'une attaque malveillante, le trafic d'envoi de canal principal est le trafic «direct» et le trafic sera constitué de nouveaux utilisateurs et sessions.
  • Performances du serveur : un ralentissement des performances du serveur peut être le signe de bots
  • Adresses IP / géolocalisations suspectes : augmentation de l'activité vers une plage d'adresses IP inconnue ou une région dans laquelle vous n'exercez pas d'activité
  • Sources linguistiques : affichage des appels provenant d'autres langues que vos clients n'utilisent généralement pas
  • Trafic provenant d'adresses IP uniques : un grand nombre de connexions provenant d'une seule adresse IP. Les humains demandent généralement quelques pages et pas d'autres, tandis que les robots demandent souvent toutes les pages

Lorsqu'un doute entre un bot et être humain apparaît, on peut alors demander à remplir un captcha (Completely Automated Public Turing test).
Il s'agit de répondre poser une question ou dilemme qui ne peut être résolu automatiquement.
En clair seul un être humain peut résoudre.

Sur un site WEB, l'utilisation de JavaScript peut aussi atténuer les bots.
Par exemple, un JavaScript qui demande à résoudre des opérations mathématiques qu'un navigateur peut faire automatiquement.
Le bot devra alors produire dans son code la solution à ces javascript.
Certains captchas sont entièrement en JavaScript et ne demandent aucune interaction de la part de l'utilisateur, c'est le cas de reCAPTCHA v3.

Google ReCaptcha - Je ne suis pas un robot

Google propose des solutions de Captcha intitulé "Je ne suis pas un robot".
Il arrive aussi que Google bloque l'accès à ses services comme son moteur de recherche.
Le message suivant avec une demande de captcha s'affiche : Google a détecté un trafic exceptionnel provenant de votre réseau.
Cela arrive lorsque Google reçoit de votre connexion Internet trop de requêtes qu'il estime anormale et automatisé.
Cela peut se produit lorsqu'on utilise des connexions publiques ou partagés tel que des VPN.

Google a détecté un trafic exceptionnel provenant de votre réseau

Cloudflare - analyse et gestions des bots

Cloudflare dans ses solutions de protection des sites WEB propose le mode Super lutte contre les bots.
C'est une solution de contrôle renforcé de votre trafic automatisé grâce à la protection bot granulaire, à la détection d’anomalie et au contrôle au niveau des chemins d’accès.

Trois principales méthodes sont utilisées :

  • Analyse comportementale : Le système analyse le comportement et détecte les anomalies dans le trafic spécifique de votre propriété Internet, en évaluant chaque demande en fonction de sa différence par rapport à la ligne de base
  • Machine Learning : Elle aide à analyser automatiquement des milliers de données pour établir un score de bot fiable pour chaque requête
  • Empreinte de données numériques (Fingerprinting) : Cloudflare utilise l'empreinte digitale d'environ 25 millions de propriétés Internet pour classer avec précision les robots.

Ainsi trois type de trafic sont établis :

  • Le trafic automatisé probable peut provenir de mauvais robots. La protection de lutte contre les bots utilise l'heuristique, l'apprentissage automatique et d'autres techniques pour repérer ces demandes. Dans la plupart des cas, ce trafic nuit à votre site sans rien fournir d'utile en retour
  • Le trafic humain probable est légitime et important. Idéalement, la grande majorité du trafic correspond à ce type
  • Le trafic de bot vérifié provient de bons robots sur Internet. La protection a détecté des robots de recherche comme Google et des services de notification de paiement comme PayPal. La plupart des utilisateurs choisissent d'autoriser ce trafic
Analyse et gestions des bots par Cloudflare
Analyse et gestions des bots par Cloudflare

Plus de détails sur les protections de Cloudflare :

Liens

Sources :