L’Institut de Recherche en Informatique faisant parti de la fondation de recherche grécques FORTH ainsi que l’institut de recherche sur l’informatique et la communication de Singapoure ont publié un article très intéressant où ils tentent de prouver les nouveaux risques et malwares que pourraient se créer dans les réseaux sociaux.
Les auteurs de l’étude définissent un Antisocial Networks comment étant un système distribué se basant sur les réseaux sociaux et pouvant être exploité par des attquants et diriger pour coordonner des attaques réseaux. Mais ils ne se limitent pas à discuter de ce qu’est un tel type de réseau, ils ont implémenté dans la réalité de tels attaques et montrent comme ces plateformes sociales peuvent être utiliser pour lancer des attaques. Ils se sont limités à Facebook pour développer leur concept d’attaques mais cela peut être étendu à l’ensemble des réseaux sociaux disposant d’une possibilité d’extensions par des tiers personnes.
Mais pourquoi les réseaux sociaux ? Tout simplement parce que de plus en plus de personnes sont inscrites sur ces réseaux, ce qui représentent une base de donnée énorme. De plus, ces réseaux sont découpés en groupe de centre d’intérêt ce qui permet de simplement localisé des cibles. Et finalement, par défaut, les utilisateurs ont tendance à faire confiance à leurs réseaux sociaux ainsi que les applications qui s’y trouvent. L’ensemble de ces raisons montrent la capacité de nouvelles attaques qui peuvent avoir lieu sur de tels sites.
Ce principe d’utilisation du web et des utilisateurs pour lancer des attaques n’est pas nouveau, Puppetnets, proposé en 2006, est également une attaque utilisant les mêmes principes. L’idée est de créer une page avec des milliers de liens pointant vers le serveur cible. Quand un utilisateur va charger cette page, son navigateur va télécharger des milliers de liens et provoquer une sur-charge sur le serveur cible. De plus, si cette page devient virable (un “Slashdot effect” par exemple), le serveur cible va se retrouver sous un DDoS. Bref, une technique simple et efficace pour lancer un DDOS a très faible cout. En ajoutant un peu de Javascript, pour des chargements multiples des liens, la méthode devient encore plus efficace.
Bien que les auteurs aient faire leur expérimentation sur le vrai réseau Facebook, ils n’ont pas développé des fonctions trop invasive (par exemple, l’obligation d’inviter 20 amis a essayé l’application avant de pouvoir l’installer, ce qui semble une méthode classique pour augmenter la popularité d’une nouvelle application) pour éviter de perturber le fonctionnement de Facebook pour les utilisateurs légitimes. Le principe de leur application était d’afficher une nouvelle image tous les jours en provenance du site du National Geographic. Mais également, quatres frames caché qui chargeaient pour 600Kb depuis le serveur de la cible à chaque fois qu’un utilisateur utilisait l’application. Bien sur dans le cadre de leur étude, le serveur était hébergé dans le lab et isolé du reste du réseau.
Bien que la méthode utilisé était relativement simple et pas trop invasive et avec une publicité limitée (i.e. uniquement quelques personnes de la communauté de la sécurité), l’application est rapidement arrivée à plusieurs centaines d’utilisateurs (plus de 1 000 utilisateurs avaient installé l’application en quelques jours) provoquant des pics d’utilisations de bande passante sur le serveur cible allant de 2Mb à 6Mb (entre 100 et 350 requêtes HTTP par second). Ils ont également analyser la provenance des requêtes (i.e. où se trouvent géographiquement l’utilisateur facebook) et on peut voir une répartition mondiale assez propre (ce qui risque de poser des problèmes pour la mise en place de contre mesures).
Ensuite, les auteurs ont voulu évaluer la puissance d’attaque d’une telle application dans la réalité et avec l’ensemble des facteurs qu’ils n’avaient pas voulu utiliser pour éviter de perturber le fonctionnement de Facebook et des utilisateurs. Par exemple, pour des applications ayant 1 millions d’utilisateurs ou plus, il faut s’attendre à des DDoS constants de 23Mbit/s soit 248Gb par jour. Ici, il ne faut pas voir uniquement la quantité de donnée mais le nombre de requêtes HTTP que va devoir résoudre le serveur cible et c’est cela qui risque d’être le point faible (et également celui de rupture).
Maintenant que le risque est prouvé (et pas uniquement limiter à des attaques de type DDoS, ces applications/malware facebook pourrait aussi être utiliser pour scanner des ordinateurs, propager des malwares, etc), les auteurs proposent plusieurs méthodes pour mettre en place des contre-mesures vis-à-vis de telles attaques. Leur première proposition pour se prémunir contre de tels attaques est tout simplement refusé tout traffic entrant ayant comme champ de référée du paquet HTTP facebook.com. Mais cela est relativement simplement contournable. L’une des autres méthodes est “tout simplement” que les créateurs de réseaux sociaux écrivent des API pour les applications qui soient propres et sécurisées et qu’ils vérifient la qualité et le risque des applications qu’ils hébergent.
Pour conclure, il est clair que ce type d’attaque pourrait arriver et que coupler avec une campagne virale, elle pourrait faire beaucoup de mal. Il est également possible d’imaginer une telle attaque ayant pour but de créer une sorte de botnet reposant sur des applications facebooks. Mais je ne trouve pas plus convaincant que ça ce type d’attaque pour des attaques massives car clairement pas assez puissants et temporaires (cela ne marche que le temps que l’utilisateur est sur la page de l’application) mais elle pourrait très bien servir pour de la distribution de malware et/ou de la vol de donnée personnel. Un vecteur d’attaque qu’il faudra surveiller vu l’importance que prennent les réseaux sociaux aussi bien dans la vie privée que dans l’entreprise.