Des échantillons du tristement célèbre outil de surveillance du Hacking Team, le Système de contrôle à distance (ou RCS, pour Remote Control System), qui n'avaient jamais été signalés auparavant, se trouvent à l'état sauvage et ont été détectés par les systèmes d’ESET dans quatorze pays.

Notre analyse des échantillons révèle des preuves suggérant que les développeurs de Hacking Team eux-mêmes poursuivent activement le développement de cet espiongiciel

De Hacking Team à Hacked Team en passant par...?

Depuis sa création en 2003, le fournisseur italien de logiciels espions Hacking Team a gagné en notoriété dans la vente d'outils de surveillance aux gouvernements et à leurs agences à travers le monde.

Les capacités de son produit phare, le RCS, comprennent l'extraction de fichiers à partir d'un appareil ciblé, l'interception de courriels et de messages instantanés, ainsi que l'activation à distance de la webcam et du microphone d'un appareil. L'entreprise a été critiquée pour avoir vendu ces fonctionnalités à des gouvernements autoritaires - une allégation qu'elle a constamment démentie.

L’organisation a connu un revirement de situation majeur en juillet 2015, alors que Hacking Team a été victime d'un piratage et que l'utilisation du RCS par les régimes oppressifs a été confirmée. Avec 400 Go de données internes - y compris la liste autrefois secrète des clients, les communications internes et le code source des logiciels espions - divulgués en ligne, la Hacking Team a été contrainte de demander à ses clients de suspendre toute utilisation de RCS, ce qui l’a laissée face à un avenir incertain.

Suite à ce piratage, la communauté de la sécurité a suivi de près les efforts de l'entreprise pour se remettre sur pied. Les premiers rapports suggérant la reprise des opérations de Hacking Team sont arrivés six mois plus tard – un nouvel échantillon d’un espiongiciel du Hacking Team visant Mac était apparemment dans la nature. Un an après la violation, un investissement d'une société nommée Tablem Limited a apporté des changements à la structure de l'actionnariat de Hacking Team, Tablem Limited prenant 20% des parts de la société. Tablem Limited est officiellement basée à Chypre; cependant, de récentes nouvelles suggèrent qu'elle a des liens avec l'Arabie Saoudite.

Après avoir complété nos recherches sur un autre espiongiciel commercial, FinFisher, deux événements intéressants impliquant la Hacking Team se sont produits dans un cours laps de temps- le rapport sur la récupération financière apparente de Hacking Team et notre découverte d'une nouvelle variante RCS dans la nature avec un certificat numérique valide.

Les logiciels espions survivent

Au cours des premières étapes de cette enquête, nos amis du the Citizen Lab  - qui ont une longue expérience dans la surveillance de l'équipe de piratage - nous ont apporté une précieuse contribution qui nous a permis de découvrir une version du logiciel espion actuellement utilisée dans la nature et qui a été signée avec un certificat numérique valide, jamais vu auparavant.

Notre recherche plus approfondie a mis au jour plusieurs autres échantillons de l’espiongiciel de Hacking Team créés après le piratage de 2015, tous légèrement modifiés par rapport aux variantes publiées avant la fuite du code source.

Les échantillons ont été compilés entre septembre 2015 et octobre 2017. Nous avons jugé que ces dates de compilation sont authentiques, sur la base des données télémétriques ESET indiquant l'apparition des échantillons dans la nature quelques jours après ces dates.

Une analyse plus poussée nous a permis de conclure que tous les échantillons peuvent être reliés à un seul groupe, et ne constituent donc pas des exemples isolés d'acteurs divers construisant leurs propres versions à partir du code source qui a connu une fuite.

Un indicateur à l'appui est la séquence des certificats numériques utilisés pour signer les échantillons - nous avons trouvé six certificats différents délivrés successivement. Quatre des certificats ont été délivrés par Thawte à quatre sociétés différentes, et deux sont des certificats personnels délivrés à Valeriano Bedeschi (cofondateur de l'équipe de piratage) et à une personne nommée Raffaele Carnacina, comme le montre le tableau suivant :

Certificate issued to Validity period
Valeriano Bedeschi 8/13/2015 – 8/16/2016
Raffaele Carnacina 9/11/2015 – 9/15/2016
Megabit, OOO 6/8/2016 - 6/9/2017
ADD Audit 6/20/2016 - 6/21/2017
Media Lid 8/29/2016 - 8/30/2017
Ziber Ltd 7/9/2017 - 7/10/2018

Les échantillons ont également forgé des métadonnées Manifest communes - utilisées pour les déguiser comme étant une application légitime - apparaissant sous les noms “Advanced SystemCare 9 (9.3.0.1121)”, “Toolwiz Care 3.1.0.0” et “SlimDrivers (2.3.1.10)”.

Notre analyse montre en outre que le ou les auteurs des échantillons ont utilisé VMProtect, apparemment dans le but de rendre leurs échantillons moins susceptibles d'être détectés. C'était également courant dans les espiongiciels de la Hacking Team qui précédent la fuite.

Les connexions entre ces seuls échantillons auraient pu provenir de n'importe quel groupe qui aurait réorienté le code source ou l'installateur de Hacking Team - comme ce fut le cas avec le with Callisto Group au début de l'année 2016. Nous avons toutefois recueilli d'autres preuves qui établissent un lien entre ces échantillons post-fuite et les développeurs de Hacking Team eux-mêmes.

La version (à laquelle nous avons accédé après avoir surmonté la protection de VMProtect) observée dans les échantillons analysés se poursuit là où Hacking Team s'est arrêté avant la brèche, et suit les mêmes schémas. L'habitude de l'équipe de piratage de compiler ses charges utiles - nommées Scout et Soldat - consécutivement, et souvent le même jour, peut également être observée dans les échantillons plus récents.

Le tableau suivant indique les dates de compilation, la version et les autorités de certification des échantillons de logiciels espions Hacking Team Windows vus entre 2014 et 2017. La réutilisation par Callisto Group du code source divulguée est marquée en rouge.

Compilation date Scout version Soldier version Certificate issued to
2014-11-27 1007 Open Source Developer, Muhammad Lee's
2014-12-05 11 Open Source Developer, Muhammad Lee's
2014-12-12 12 1008 Open Source Developer, meicun ge
2015-03-19 1009 Open Source Developer, meicun ge
2015-03-27 13 Open Source Developer, meicun ge

JULY 2015 LEAK

#colspan# #colspan# #colspan#
2015-09-04 15 Valeriano Bedeschi
2015-10-19 16 1011 Raffaele Carnacina
2016-01-05 13 SPC
2016-01-18 17 Raffaele Carnacina
2016-03-24 18 1012 Raffaele Carnacina
2016-06-17 1014 Megabit, OOO
2016-08-02 21 1016 Megabit, OOO
2016-09-01 22 1017 ADD Audit
2016-12-19 23 1018 ADD Audit
2017-01-31 24 1019 ADD Audit
2017-04-28 25 1020 ADD Audit, Media Lid
2017-06-28 27 1022 Media Lid, Ziber Ltd
2017-10-09 28 Ziber Ltd
2017-10-18 1025 Ziber Ltd

De plus, notre recherche a confirmé que les changements introduits dans les mises à jour après la fuite ont été faits en accord avec le style de codage de l'équipe de piratage et sont souvent trouvés dans des emplacements suggérant une profonde familiarité avec le code. Il est hautement improbable qu'un autre acteur - autrement dit, autre que le développeur d'origine de Hacking Team - apporterait des changements à ces endroits précis lors de la création de nouvelles versions à partir du code source de Hacking Team qui a fait l'objet d'une fuite.

L'une des différences subtiles que nous avons relevées entre les échantillons pré-fuite et post-fuite concerne la taille du fichier Startup. Avant la fuite, le fichier copié était rembourré pour occuper 4MB. Dans les échantillons post-fuite, cette opération de copie de fichier est rembourrée à 6 Mo – il s’agit très probablement d’une technique de détection d'évasion primitive.

Hacking Team's

Figure 1 - Copie du fichier de démarrage, dont la taille est passée de 4 Mo pré-fuite à 6 Mo post-fuite

Nous avons découvert d'autres différences qui nous ont convaincus de l'implication de Hacking Team. Cependant, la divulgation de ces détails pourrait interférer avec le suivi futur du groupe; nous avons choisi de ne pas les publier pour cette raison. Nous sommes toutefois ouverts à partager ces détails avec nos collègues chercheurs (pour toute demande de renseignements, contactez-nous à threatintel@eset.com).

La fonctionnalité des logiciels espions chevauche largement celle du code source divulgué. Notre analyse n'a pas permis de confirmer jusqu’à maintenant la publication d'une mise à jour significative, comme l’a promise Hacking Team suite au piratage.

En ce qui concerne le vecteur de distribution des échantillons post-fuite que nous avons analysés, au moins dans deux cas, nous avons détecté le spyware dans un fichier exécutable déguisé en document PDF (utilisant plusieurs extensions de fichier) attaché à un email d’harponnage (ou spearphishing). Les noms des fichiers-joints contiennent des chaînes de caractères susceptibles de réduire les soupçons des diplomates qui les reçoivent.

Hacking Team's

Figure 2 – Investigation timeline

Conclusion

Notre recherche nous permet d'affirmer avec une grande confiance que, à une exception près, les échantillons post-fuite que nous avons analysés sont en effet le travail des développeurs de Hacking Team, et non le résultat d'une réutilisation de code source par des acteurs non apparentés, comme c’était le cas pour Callisto Group en 2016.

Au moment d'écrire ces lignes, nos systèmes ont détecté ces nouveaux échantillons de spywares dans quatorze pays. Nous choisissons de ne pas nommer les pays pour éviter des attributions potentiellement incorrectes sur la base de ces détections, puisque la géolocalisation des détections ne révèle pas nécessairement l'origine de l'attaque.

Indicateurs de compromission (IoCs)

ESET detection names
Trojan.Win32/CrisisHT.F
Trojan.Win32/CrisisHT.H
Trojan.Win32/CrisisHT.E
Trojan.Win32/CrisisHT.L
Trojan.Win32/CrisisHT.J
Trojan.Win32/Agent.ZMW
Trojan.Win32/Agent.ZMX
Trojan.Win32/Agent.ZMY
Trojan.Win32/Agent.ZMZ

Samples signed by Ziber Ltd
Thumbprint: 14 56 d8 a0 0d 8b e9 63 e2 22 4d 84 5b 12 e5 08 4e a0 b7 07
Serial Number: 5e 15 20 5f 18 04 42 cc 6c 3c 0f 03 e1 a3 3d 9f

SHA-1 samples
2eebf9d864bef5e08e2e8abd93561322de2ab33b
51506ed3392b9e59243312b0f798c898804913db
61eda4847845f49689ae582391cd1e6a216a8fa3
68ffd64b7534843ac2c66ed68f8b82a6ec81b3e8
6fd86649c6ca3d2a0653fd0da724bada9b6a6540
92439f659f14dac5b353b1684a4a4b848ecc70ef
a10ca5d8832bc2085592782bd140eb03cb31173a
a1c41f3dad59c9a1a126324a4612628fa174c45a
b7229303d71b500157fa668cece7411628d196e2
eede2e3fa512a0b1ac8230156256fc7d4386eb24

C&Cs
149.154.153.223
192.243.101.125
180.235.133.23
192.243.101.124
95.110.167.74
149.154.153.223

Samples signed by ADD Audit
Thumbprint: 3e 19 ad 16 4d c1 03 37 53 26 36 c3 7c a4 c5 97 64 6f bc c8
Serial Number: 4c 8e 3b 16 13 f7 35 42 f7 10 6f 27 20 94 eb 23

SHA-1 samples
341dbcb6d17a3bc7fa813367414b023309eb69c4
86fad7c362a45097823220b77dcc30fb5671d6d4
9dfc7e78892a9f18d2d15adbfa52cda379ddd963
e8f6b7d10b90ad64f976c3bfb4c822cb1a3c34b2

C&Cs
188.166.244.225
45.33.108.172
178.79.186.40
95.110.167.74
173.236.149.166

Samples signed by Media Lid
Thumbprint: 17 f3 b5 e1 aa 0b 95 21 a8 94 9b 1c 69 a2 25 32 f2 b2 e1 f5
Serial Number: 2c e2 bd 0a d3 cf de 9e a7 3e ec 7c a3 04 00 da

SHA-1 samples
27f4287e1a5348714a308e9175fb9486d95815a2
71a68c6140d066ca016efa9087d71f141e9e2806
dc817f86c1282382a1c21f64700b79fcd064ae5c

SHA-1 samples
27f4287e1a5348714a308e9175fb9486d95815a2
71a68c6140d066ca016efa9087d71f141e9e2806
dc817f86c1282382a1c21f64700b79fcd064ae5c

C&Cs
188.226.170.222
173.236.149.166

Samples signed by Megabit, OOO
Thumbprint: 6d e3 a1 9d 00 1f 02 24 c1 c3 8b de fa 74 6f f2 3a aa 43 75
Serial Number: 0f bc 30 db 12 7a 53 6c 34 d7 a0 fa 81 b4 81 93

SHA-1 samples
508f935344d95ffe9e7aedff726264a9b500b854
7cc213a26f8df47ddd252365fadbb9cca611be20
98a98bbb488b6a6737b12344b7db1acf0b92932a
cd29b37272f8222e19089205975ac7798aac7487
d21fe0171f662268ca87d4e142aedfbe6026680b
5BF1742D540F08A187B571C3BF2AEB64F141C4AB
854600B2E42BD45ACEA9A9114747864BE002BF0B

C&Cs
95.110.167.74
188.226.170.222
173.236.149.166
46.165.236.62

Samples signed by Raffaele Carnacina
Thumbprint: 8a 85 4f 99 2a 5f 20 53 07 f8 2d 45 93 89 af da 86 de 6c 41
Serial Number: 08 44 8b d6 ee 91 05 ae 31 22 8e a5 fe 49 6f 63

SHA-1 samples
4ac42c9a479b34302e1199762459b5e775eec037
2059e2a90744611c7764c3b1c7dcf673bb36f7ab
b5fb3147b43b5fe66da4c50463037c638e99fb41
9cd2ff4157e4028c58cef9372d3bb99b8f2077ec
b23046f40fbc931b364888a7bc426b56b186d60e
cc209f9456f0a2c5a17e2823bdb1654789fcadc8
99c978219fe49e55441e11db0d1df4bda932e021
e85c2eab4c9eea8d0c99e58199f313ca4e1d1735
141d126d41f1a779dca69dd09640aa125afed15a

C&Cs
199.175.54.209
199.175.54.228
95.110.167.74

Samples signed by Valeriano Bedeschi
Thumbprint: 44 a0 f7 f5 39 fc 0c 8b f6 7b cd b7 db 44 e4 f1 4c 68 80 d0
Serial Number: 02 f1 75 66 ef 56 8d c0 6c 9a 37 9e a2 f4 fa ea

SHA-1 samples
baa53ddba627f2c38b26298d348ca2e1a31be52e
5690a51384661602cd796e53229872ff87ab8aa4
aa2a408fcaa5c86d2972150fc8dd3ad3422f807a
83503513a76f82c8718fad763f63fcd349b8b7fc

C&Cs
172.16.1.206 – It is an internal address which was found in the samples.