Site web compromis : tout est dans le détail !

Quoi de plus banal qu’un site web compromis ? Pourtant à l’occasion du Forum CERT-IST qui s’est déroulé hier à Paris, Philippe Bourgeois (CERT-IST) a présenté un intéressant retour d’expérience en la matière.

Intéressant, pas tant par la technique ou l’exploit utilisé (qui n’a pas pu être identifié) que par l’attention aux détails dont fait preuve l’attaquant…

Un audit succinct des fichiers du site compromis révèle ainsi rapidement l’injection de balises de type iframe dans de très nombreux fichiers du site. Rien de très original, donc. A deux exceptions près : tout d’abord la taille de ces iframes est de 11×11 pixels, contre 1×1 habituellement. Et surtout, ils pointent vers Google au lieu d’un site web infectieux comme c’est habituellement le cas.

Premier enseignement : en augmentant la taille des iframes l’attaquant espère échapper aux solutions de sécurité les plus primitives qui se contenteraient de rechercher des cadres de 1×1 pixel, signature évidente d’une compromission.

Il reste à élucider le mystère de la source : pourquoi faire pointer ces cadres vers Google – évidemment bien incapable de servir un quelconque code malveillant au visiteur ?

En réalité cela n’est que temporaire. A intervalle régulier l’attaquant exploite à nouveau la vulnérabilité qui lui a permis l’infection initiale et met cette URL à jour, afin qu’elle pointe cette-fois ci vers un site malveillant (qui change toutes les 30 minutes)

En faisant « tourner » ainsi son portefeuille de sites infectés l’attaquant diminue certes son efficacité globale mais il n’expose pas tous ses sites à la détection au même moment, puisqu’ils ne pointent pas tous à un instant T vers une URL malveillante.

Plus subtil encore, bien que pas forcément très efficace : lorsque la modification est effectuée et que le site devient alors infectieux, une dernière astuce toute bête est mise en oeuvre pour tenter de réduire la probabilité de détection. Les URL malveillantes intègrent toutes le mot « Facebook » dans le chemin. On peut penser qu’il s’agit là d’une tentative pour tromper d’éventuels outils de détection mal conçus, qui se satisferaient de trouver ce mot-clé n’importe où dans la ligne plutôt que spécifiquement dans la position de nom de domaine (c’est qu’il est tellement facile d’écrire une mauvaise expression rationnelle…). Il serait alors facile de confondre cet iframe là (malveillant) avec celui, parfaitement anodin, des widgets sociaux de Facebook.

Enfin, l’attaquant adopte une approche méthodique dans ses infections : il compromet ses victimes à la chaîne sans vérifier immédiatement son succès (ce qui laisserait une trace difficile à rater dans les logs, qui permettrait de corréler une tentative d’exploit et un accès au fichier récemment déposé). Au lieu de cela il attend un mois avant de revenir tester si le fichier malveillant a bien été déposé. Ce qui, dans les logs, ne permet pas d’identifier précisément la tentative d’exploitation qui a fonctionné.

Il n’y a évidemment rien d’inédit dans ces techniques, utilisées (et automatisées !) depuis des années. Mais ce retour d’expérience du CERT-IST a le mérite de montrer l’approche méticuleuse, et besogneuse, d’un attaquant un peu organisé contrôlant un portefeuille de sites web compromis…

Jerome Saiz le 13 juin 2013

Source : http://magazine.qualys.fr/menaces-alertes/site-web-compromis/