La société italienne Hacking Team fournit des services d’espionnage
ou de surveillance des internautes. Cette entreprise a récemment été victime
d’une attaque informatique. Au total, 400 Go de données internes à l’entreprise
ont été diffusées sur Internet [1]. Des informations relatives à
l’administration interne, des échanges de mails, et des logiciels malveillants
développés par la société ont ainsi été diffusés. Dans ces documents, on y
apprend notamment que les clients de l’entreprise Hacking Team sont
principalement des états, par exemple le Chili, l’Éthiopie, ou le Soudan [2].
La France a également pris contact avec cette société via le ministère de la
Défense.
Hacking Team met notamment à disposition de ses clients des logiciels permettant d’intercepter les communications depuis n’importe quel équipement (ordiphone Android, tablette ou PC Windows…), en contournant les mécanismes de chiffrement le cas échéant, d’après la documentation commerciale de l’outil Remote Control System Galileo [3].
Afin de pouvoir réaliser de telles écoutes, l’entreprise a dû recourir à l’exploitation de vulnérabilités. Les documents révélés mettent en lumière l’utilisation de logiciels malveillants permettant d’élever ses privilèges sur une machine Windows ou de compromettre un poste de travail grâce aux greffons Flash sur un navigateur.
Hacking Team met notamment à disposition de ses clients des logiciels permettant d’intercepter les communications depuis n’importe quel équipement (ordiphone Android, tablette ou PC Windows…), en contournant les mécanismes de chiffrement le cas échéant, d’après la documentation commerciale de l’outil Remote Control System Galileo [3].
Afin de pouvoir réaliser de telles écoutes, l’entreprise a dû recourir à l’exploitation de vulnérabilités. Les documents révélés mettent en lumière l’utilisation de logiciels malveillants permettant d’élever ses privilèges sur une machine Windows ou de compromettre un poste de travail grâce aux greffons Flash sur un navigateur.
Un buffer overflow dans un driver de gestion des polices de caractères permet une élévation de privilèges sur Windows
Un premier exploit découvert et diffusé sur la toile permet
à un utilisateur d’une machine Windows de devenir administrateur local, sans
que ces privilèges lui soient initialement fournis.
Ici, un utilisateur lance le programme et, sans faire
intervenir l’UAC, dispose des privilèges système, tel que l’indique les retours
des commandes whoami.
La vulnérabilité permettant cet exploit se base sur les
pilotes de gestion des polices de caractères (open font type manager module),
plus particulièrement la bibliothèque ATMFD.dll, fournie par Adobe. Cette
librairie est exécutée au niveau noyau, et permet d’outrepasser les mécanismes
de bac à sable.
TrendLabs a publié une analyse du malware [6], dont les
éléments principaux sont repris ici. Tout d’abord, rappelons les principaux
types de dépassements de tampons pouvant intervenir lors de la manipulation des
entiers [7] :
- Erreur d’interprétation entre entiers signés et non signés : un entier signé négatif correspond à un entier non signé très grand (de 0x8… à 0xF… en fonction du nombre d’octets utilisés pour représenter les entiers) ;
- Troncation d’entiers : un entier est assigné à une autre variable, cette dernière utilisant un système de représentation comprenant moins de bits ;
- Extension de signe : un entier signé dans un système de représentation comprenant peu de bits est transformé en un entier utilisant un système de représentation comprenant un plus grand nombre de bits. Selon que le résultat est ensuite interprété comme signé ou non, des erreurs peuvent survenir.
Sur la version simplifiée du code proposée par Trend Labs,
on constate qu’un entier de type short est assigné dans un entier de
type int. On s’attend donc à retrouver ce troisième type d’erreur sur
les entiers.
Code simplifié de la faille permettant l’élévation de
privilèges sur Windows
Les types int et short sont tous deux signés.
Ainsi, si i est compris entre 0x8000 et 0xFFFF dans sa représentation
hexadécimale (ie compris entre -32768 et -1), alors index aura également
une valeur négative (entre 0xFFFF8000 et 0xFFFFFFFF). La comparaison d’un entier
négatif avec font_buffer_length sera donc vraie. Ensuite, la valeur
paramètre value est maitrisé de l’attaquant, il pourra donc écrire une
valeur arbitraire au-delà de buffer_base, réalisant alors une attaque de
type buffer overflow.
La compromission d’une machine par un exploit 0day Flash s’intègre dans des toolkits d’exploits
Outre cette vulnérabilité permettant une élévation de
privilèges sur Windows, deux vulnérabilités Affectant Flash ont également été
publiées. L’une d’elles (CVE-2015-0349) dispose d’un patch, un correctif et un
numéro de CVE sont attendus pour la seconde.
À nouveau, Trend Labs analyse cette seconde vulnérabilité
[8], notamment sur la base du fichier README produit par Hacking Team [9].
L’origine de la vulnérabilité provient d’un problème de gestion de la
mémoire : des ressources continuent à être adressées après avoir été
libérées (use-after-free).
La preuve de concept fournie par Hacker Team vise à ouvrir l’utilitaire « calculatrice » depuis le navigateur web. Les versions affectées sont les versions Adobe Flash Player ultérieures à 9.
Fichier README produit par Hacker Team sur faille Flash
La preuve de concept fournie par Hacker Team vise à ouvrir l’utilitaire « calculatrice » depuis le navigateur web. Les versions affectées sont les versions Adobe Flash Player ultérieures à 9.
Suite à la publication de cette faille, les toolkits
d’exploitation tels que Angler ou Nuclear ont rapidement été mis à jour prendre
en compte ces nouveaux malwares [10]. L’exploitation de ces failles est
également constatée. La mise à jour ou la désinstallation du composant Flash sont
donc recommandées.
Cependant, si les pirates exploitent rapidement les failles
mises en avant lors de la publication des données de Hacker Team, la réaction
n’a pas tardé également chez les éditeurs de solutions de sécurité ou par la
communauté [11] pour détecter ces programmes.
Aucun commentaire:
Publier un commentaire