La quatrième édition de la BotConf se tenait cette année du 30 novembre au 2 décembre, à l’université Lyon 2. Cette conférence, orientée sur la lutte contre les botnets, a regroupé une vingtaine de présentations en anglais dont voici un bref compte-rendu.
Locky, Dridex, Necurs: the evil triad
Après une introduction d’Éric Freysinnet, Jean-Michel Picot, de Google, a présenté la façon dont les malwares sont perçus du point de vue de Gmail. Une grande partie de la présentation fut dédiée aux techniques utilisés par ces malwares pour éviter la détection. La présentation étant identifiée comme confidentielle, les détails ne seront pas divulgués dans cet article.
Visiting the Bear’s Den
Jessy Campos de la société ESET, prit alors la parole pour présenter son travail, ainsi que celui de Joan Calvet et Thomas Dupuy qui étaient absents, concernant le groupe d’attaquants connu sous le nom de Sednit, ou encore APT28, Fancy Bear, Sofacy, et bien d’autres. Le groupe Sednit vise principalement des personnes impliquées dans la vie politique d’Europe de l’est. Les capacités des personnes qui composent le groupe sont très avancées, preuve en est l’utilisation de nombreuses 0-days et d’un outillage bien fourni.
Au travers de l’histoire de Serge, une cible imaginaire du groupe Sednit, Jessy Campos a présenté le déroulement d’une attaque, ainsi que les différents outils que son équipe et lui ont pu analyser.
Lundi, 9h30, Serge ouvre un email, et clique sur un lien dont l’URL ressemble fortement à une URL légitime. Malheureusement pour lui, il fait alors la rencontre de SEDKIT. SEDKIT est un Exploit Kit utilisé pour la première fois en septembre 2014, et encore actif de nos jours. Généralement transmis par le biais d’un mail de phishing, l’outil permet aux membres de Sednit de sélectionner leurs cibles.
Imitation d’URLs légitimes dans les mails de phishing
Une fois la cible choisie, SEDKIT va alors télécharger SEDUPLOADER, un outil composé de deux parties, un dropper et une charge malveillante, aperçu pour la première fois en mars 2015, et étant toujours actif. Au travers d’un workflow en quatre étapes durant lesquelles de nombreuses techniques sont utilisées, SEDUPLOADER va télécharger SEDRECO.
Workflow suivi par SEDUPLOADER
Lundi, 10h, Serge est donc infecté par SEDRECO. Cette backdoor, vu pour la première fois en 2012, et toujours active, a la capacité de charger des plugins externes. C’est la configuration de cette charge malveillante, présente dans un fichier « .msd » chiffré, qui va donc définir les actions de SEDRECO, avec toujours pour objectif l’espionnage des actions effectuées sur le terminal infecté.
Extrait des fonctionnalités proposées par SEDRECO
SEDUPLOADER va également permettre le téléchargement de l’outil XAGENT, une backdoor modulaire disposant de versions pour Windows, Linux et iOS, généralement déployée par le groupe Sednit après la phase de reconnaissance. Cet outil va alors permettre l’extraction d’informations jusqu’au serveur C&C par le biais de mails dont l’objet, le contenu, ainsi que les pièces jointes se doivent de sembler le plus légitime possible.
Schéma d’extraction des données par XAGENT
À partir de ce moment, les différentes informations et actions de Serge sont enregistrées et envoyées au serveur C&C. Différents codes malveillants permettent ainsi l’extraction des mots de passe, mais également la prise de captures d’écran à chaque déplacement de souris. De plus, l’outil XTUNNEL permet les mouvements latéraux au sein du Système d’Information de Serge.
Mouvements latéraux effectués par XTUNNEL
L’arsenal de Sednit contient également de nombreux moyens de persistance que Jessy Campos a pu détailler lors de sa conférence.
Le support de présentation, ainsi que des papiers de recherche sur le groupe, sont disponibles aux adresses suivantes pour de plus amples informations :
LURK – The story about Five Years of Activity
Vladimir Kroporov de Trend Micro a alors présenté un autre groupe d’attaquants que lui et Fyodor Yarochkin, de l’académie Sinica, ont pu étudier. Ce groupe, qui vise principalement la Russie à l’aide du banking trojan LURK, est actif depuis de nombreuses années. LURK a en effet été détecté pour la première fois en 2011, et est le premier malware à intégrer une charge malveillante directement en mémoire, ce qui rend complexe sa détection, mais implique l’absence de persistance.
Vladimir Kroporov a présenté les différents patterns permettant la détection de LURK, ainsi que l’infrastructure, les méthodes, et l’évolution du malware. Les supports de présentation peuvent être trouvés à l’adresse suivante :
Browser-based Malware: Evolution and Prevention
Ce fût ensuite au tour de Andrey Kovalev et Evgeny Sidorov, travaillant pour Yandex, d’effectuer leur présentation sur les attaques de type Man-in-the-Browser utilisées par certains malwares. Ce type d’attaques consiste à intercepter et détourner les appels entre le navigateur et ses mécanismes de sécurité. Les attaques de ce type proviennent principalement d’extensions, de proxy WFP, ou encore de VPN.
Principe de fonctionnement d’une attaque Man-in-the-Browser
La suite de la présentation fût consacrée à la présentation des malwares Eko et SmartBrowse. Eko est une extension malveillante pour Chrome. Pour parvenir à faire installer cette extension à d’autres cibles, Eko utilise la technique précédente pour envoyer aux contacts des messages privés Facebook contenant un lien vers cette extension. Une fois le navigateur infecté, Eko va récupérer les accès au compte Facebook de l’utilisateur.
Architecture du malware Eko
SmartBrowse est également une extension Chrome malveillante qui sert de plateforme pour l’installation d’autres malwares. L’une des fonctionnalités de SmartBrowse est qu’il parvient à passer outre le mécanisme de sécurité interdisant l’installation d’extensions.
Architecture du malware SmartBrowse
Concernant la détection et la protection de ce type d’attaque, les techniques sont limitées. L’utilisation de Content-Security-Policy, habituellement utilisé pour limiter les attaques de type XSS, est une première approche mais peut être contrôlé par les extensions. Une autre approche est la validation de l’intégrité du code en JavaScript. Cette méthode est plus complexe à contourner pour les malwares, étant donné que la suppression du script de détection risque de limiter les fonctionnalités de la page.
Le support de présentation est disponible à l’adresse suivante :
Language Agnostic Botnet Detection Based on ESOM and DNS
Cette présentation, effectuée par Rocco Mandrysh de RUAG, présente les travaux qu’il a effectué avec Christian Dietz, Urs Anliker et Gabi Dreo, à propos d’une méthode de détection des malwares à partir de noms de domaine. Les malwares, comme l’explique Rocco Mandrysh, utilisent souvent des algorithmes de génération de noms de domaine (DGA) qui, si leur fonctionnement peut être déduit à partir des exécutables, pourraient permettre de générer la liste des domaines possiblement utilisés par un malware donné, créant ainsi une liste d’IOC complète.
L’approche de Rocco Mandrysh et de ses collègues vient compléter cette pensée en présentant une méthode par machine learning, permettant de regrouper les malwares sur une carte en utilisant l’outil ESOM, facilitant ainsi leur identification.
Exemple de sortie d’ESOM
Le support de présentation est disponible à l’adresse suivante :
Vawtrak Banking Trojan: A threat to the Banking Ecosystem
Raashid Bhat et Victor Acin, de l’entreprise Blueliv, ont présenté leurs travaux d’analyse sur le malware Vawtrak. Ce malware, historiquement nommé Neverquest, a été observé pour la première fois en 2013 et a beaucoup évolué depuis. C’est un cheval de Troie à visée financière qui utilise des techniques avancées de type Man-in-the-Browser pour parvenir à récupérer les identifiants des utilisateurs infectés.
Le support de présentation, ainsi que l’analyse technique du malware, sont accessibles aux URLs suivantes :
Snoring Is Optional: The Metrics and Economics of cyber Insurance for Malware Related Claims
Wayne Crowder, travaillant chez Risk Analytics, a effectué une présentation non technique sur les botnets, en prenant le point de vue des cyber-assurances. Cette présentation, reprend les différents éléments qui composent une bonne cyber-assurance, ainsi que de nombreux exemples et chiffres d’attaques passées.
Le support de présentation est disponible à l’URL suivante :
Hunting Droids from the Inside
Lukasz Siewierski, également de Google, a conclu la première journée en présentant différentes méthodes utilisées par les botnets Android. Cette présentation étant également confidentielle, les détails ne seront pas présentés dans cet article
Ransomware and Beyond
Pour entamer le deuxième jour de conférence, Christiaan Beek travaillant chez Intel Security a choisi de parler de ransomwares, et notamment de leur évolution cette année. Après une brève introduction sur les différentes familles de ransomwares en 2015, ainsi que sur l’intérêt grandissant pour le terme dans les recherches Google cette même année, Christiaan s’est donc concentré sur une année qui a vu de nombreuses évolutions chez les ransomwares : 2016.
Le nombre de ransomwares, mais également les techniques utilisées par cette famille de malware a en effet grandement évolué cette année, avec des exemples comme Petya et Mamba qui réalisent respectivement un chiffrement partiel (MBR) et complet du disque.
Évolution des techniques utilisées par les ransomwares ces derniers mois
Christiaan a ensuite continué sa présentation en expliquant pourquoi les ransomwares sont tant utilisés. L’un des arguments qu’il a évoqué est notamment la « satisfaction client », qui peut paraitre étonnant pour un malware, mais s’applique parfaitement pour la sous famille des ransomwares. En effet, il n’est pas rare de voir sur les forums des messages de remerciement écrits par les victimes et à destination des attaquants, expliquant qu’ils ont bien reçu la clé de déchiffrement après avoir payé. Certains ransomwares proposent même de poser directement des questions aux attaquants, même s’il semble assez rare que des négociations aboutissent.
Exemple de page de contact provenant d’un ransomware
Enfin, Christiaan a présenté sa démarche d’utilisation du machine learning dans l’objectif d’améliorer la détection et le classement des ransomwares, pour enfin finir par la présentation de la plateforme « No more ransom ! » dont l’objectif est la mise à disposition par les professionnels de techniques de déchiffrement adaptées aux ransomwares.
Page d’accueil du site nomoreransom.org
Le support de la présentation est disponible à l’adresse suivante :
Attacking Linux/Moose 2.0 Unraveled an EGO MARKET
La seconde présentation de la journée fût celle d’Olivier Bilodeau et Masarah Paquet-Clouston travaillant chez GoSecure, qui présentaient leurs travaux de recherche sur le botnet Linux/Moose. Ce sujet, qui avait déjà été abordé en 2015, fût largement orienté sur les cibles et le marché du botnet.
Le support de présentation ainsi qu’un article complémentaire sont disponibles aux adresses suivantes :
Tracking Exploit Kits
John Bambenek, travaillant pour Fidelis Cybersecurity, a ensuite effectué une présentation sur la traque des Exploit Kits. L’objectif d’une telle traque est la mise à mal de l’écosystème qui tourne autour des Exploit Kits. John a présenté différentes techniques et outils pouvant faciliter cette démarche, comme par exemple l’outil ekdeco ou encore le site
contagiodump.blogspot.fr.
Le support de présentation est accessible à l’adresse suivante :
Improve DDoS Botnet Tracking With Honeypots
La présentation suivante, effectuée par Ya Liu, du laboratoire de recherche en sécurité réseau de Qihoo 360 avait pour objet l’utilisation de honeypots dans la traque des botnets, et notamment l’identification de familles de botnets à l’aide des algorithmes de génération de paquets (PGA).
Le support de la présentation est disponible à l’adresse suivante :
Function Identification and Recovery Signature Tool
Angel Villega a conclu la matinée en présentant l’outil FIRST, un plugin IDA permettant l’identification de fonctions partagées par de multiples échantillons de malware. Les analystes pourraient donc rapidement identifier des fonctions déjà étudiées, automatisant ainsi les tâches répétitives. Le plugin se base sur une base de données qu’il est possible d’héberger sur un serveur en interne, et un serveur publique est déjà disponible : first-plugin.us.
Le support de présentation est accessible à l’adresse suivante :
Advanced Incident Detection and Threat Hunting using Sysmon (and Splunk)
Tom Ueltschi, qui travaille au CERT de la poste Suisse, a ensuite détaillé l’utilisation de Sysmon et Splunk comme outils de détection. Deux types de détection sont importantes sur un environnement : les détections au niveau réseau et les détections basées sur l’hôte. Pour Tom, les meilleurs outils pour effectuer ces détections sont Bro du côté réseau, et Sysmon et Splunk pour les éléments présents sur l’hôte.
L’un des avantages majeurs de Sysmon est qu’il fait partie de la suite SysInternals qui est gratuite et adaptée aux environnements de Microsoft. Son déploiement et son intégration sont alors aisés. Sysmon permet ainsi de récupérer les événements du journal d’événements Windows et, à l’aide de règles adaptées qu’a pu développer Tom (notamment pour limiter le nombre d’événements envoyés à Splunk afin de limiter le coût de licence), remonter des alertes en cas de comportement malveillant.
La difficulté majeure lors de l’installation de ces outils est la création de règles adaptées pour isoler les événements malveillants des événements légitimes. Le poster du SANS dédié à ce sujet (
https://www.sans.org/security-resources/posters/dfir/dfir-find-evil-35) peut être un bon point de départ pour parvenir à un résultat cohérent.
Durant sa présentation, Tom a mis l’accent sur trois événements majeurs :
- La création de processus
- La création de connexions réseaux
- L’utilisation de la fonction CreateRemoteThread
Il a ainsi pu présenter différents exemples et conseils permettant une détection efficace.
How Does Dridex hide Friends
Sébastien Larinier et Alexandra Toussaint de Sekoia, ont ensuite présenté les analyses qu’ils ont effectué pour l’un de leur client. Cette analyse, qu’ils ont pu détailler, s’est soldée par la conclusion que le système était infecté par Dridex. En continuant l’analyse, ils ont cependant pu découvrir d’autres éléments suspects, notamment l’installation d’un RAT (malware permettant un accès à distance) sur le système infecté.
A Tete-a-Tete with RSA Bots
Puis, ce fût au tour de Jens Friess et Laura Fuevara de Fraunhofer de présenter une approche automatique pour l’analyse de communications chiffrées. Pour cela, ils utilisent un faux serveurs C&C muni d’un certificat adapté ainsi qu’un serveur DNS pour pouvoir analyser les requêtes et en déduire la clé de déchiffrement.
Le support de présentation est accessible à l’adresse suivante :
Takedown client-server botnets the ISP-way
Après une petite pause, ce fût au tour de Quang Tran de Viettel d’effectuer une présentation sur une méthode de lutte contre les botnets. Travaillant pour un fournisseur d’accès Internet vietnamien, Quang Tran a orienté ses recherches sur le monitoring du trafic dans l’objectif de découvrir les noms de domaine utilisés par les botnets, puis de les remplacer par de faux serveurs C&C envoyant des commandes d’arrêts aux malwares. Une remarque intéressante a cependant été levée lors de la séance de question/réponse, à savoir que cette méthode est illégale dans de nombreux pays.
Le support de présentation est disponible à l’adresse suivante :
Detecting the Behavioral Relationships of Malware Connections
Une autre approche d’automatisation pour la détection des botnets, basée sur le machine learning, a été présentée par Sebastian Garcia, de l’université CTU à Prague. L’idée de Sebastian est que les IoC ne sont souvent pas suffisant pour détecter de nouveaux malwares, ou des versions évoluées de malwares connus. Pour pallier à cela, il utilise les connexions effectuées par un utilisateur pour créer un modèle différentiant une activité suspecte d’une activité normale.
Une représentation sous forme de graphes peut alors être faite et, en fonction du nombre de nœuds, de liens, et surtout du pourcentage de liens répétitifs en fonction du nombre total, il parvient à isoler les comportements suspects.
Exemple de graphe obtenu pour le ransomware Cerber
Le support de présentation est accessible à l’adresse suivante :
Analysis of Free Movies and Series Websites Guided by Users Search Terms
La dernière présentation de cette seconde journée fût effectuée par Martin Clauß et Luis Alberto Benthin Sanguino de Fraunhofer, qui ont détaillés leurs recherches sur l’utilisation des sites proposant le téléchargement et le streaming de films et séries par les attaquants. L’idée de leurs recherches était de collecter les URLs visités lors de la navigation sur ces sites pour déterminer s’ils étaient malveillants. L’étude, qui a été faite sur des sites proposant du contenu en différentes langues, révèle que les sites proposant ce genre de contenu en allemand sont le plus rarement malveillants, alors que les sites espagnols le sont le plus souvent.
Le support de présentation est disponible à l’adresse suivante :
Nymain Origins, Revival and Reversing Tales
Pour entamer la dernière journée de la conférence, Alberto Ortega, travaillant chez Fox-IT, a choisi de partager l’analyse qu’il a pu effectuer sur le malware Nymaim. Il a ainsi pu présenter les nombreuses techniques avancées, notamment d’obfuscation et anti-analyse, utilisées par ce malware découvert en 2013 et qui utilise des attaques de type Man-in-the-Browser pour effectuer des transactions bancaires illégitimes.
Le détail de son analyse est accessible à l’adresse suivante :
Rough Diamonds in Banking Botnets
Travaillant également chez Fox-IT, Jose Miguel Esparza et Frank Ruiz ont continué en présentant leurs recherches sur les interfaces utilisées par les attaquants pour contrôler leurs malwares. Cette présentation étant classée TLP:RED, elle ne sera pas détaillée.
ISFB, Still Live and Kicking
Maciej Kotowicz du CERT polonais prit alors la parole pour présenter son analyse du malware ISFB. Ce malware découvert en 2014 est l’un des chevaux de Troie à visée financière les plus populaires de nos jours. Tout comme les autres malwares présentés, il utilise des techniques avancées qu’a pu présenter Macjej.
Le support de la présentation est accessible à l’adresse suivante :
Challenges for a cross-juridictional botnet takedown
Margarita Louca a ensuite présenté l’un des plus gros défis rencontrés par Europol ces dernières années, et ce avec une approche juridique. Sa présentation est cependant confidentielle.
Preventing File-Based Botnet Persistence and Growth
Kurtis Armour a alors parlé de méthodes efficaces de protection d’un environnement. Les malwares récents utilisant de plus en plus de scripts (JavaScript, Powershell, etc.) en tant que charge malveillante, les détections basées sur les exécutables ne sont plus suffisantes. Kurtis a ainsi présenté différentes méthodes d’implémentation de listes blanches et de configuration permettant de se protéger contre ces nouvelles menaces.
Quelle que soit sa forme, le code malveillant doit être exécuté par le système. L’objectif de Kurtis est donc d’empêcher cette exécution par les charges malveillantes. Une règle d’or pour cela étant de ne pas posséder de droits d’administration sur le système, limitant ainsi les possibilités du malware. Mais différents autres outils peuvent également être utilisés pour réduire la surface d’attaque. C’est par exemple le cas de LAPS de Microsoft qui permet la gestion des comptes administrateurs locaux sur un domaine Windows.
Différentes méthodes permettant de limiter l’utilisation de Powershell ont également été abordées, l’utilisation des Local Security Policies ou Execution Policies n’étant pas la solution. Enfin, AppLocker est un autre outil qui peut permettre de bloquer ce type de comportement, comme par exemple l’utilisation de macros en empêchant l’exécution de dll depuis le dossier VBA.
Le support de présentation est accessible à l’adresse suivante :
Dridex Gone Phishing
Pour terminer cette quatrième édition de la BotConf, Magal Baz et Gal Meiri d’IBM ont détaillé les méthodes de type Man-in-the-Browser utilisées par Dridex pour effectuer sa fraude bancaire. Pour cela, le malware intercepte en effet les appels aux fonctions d’entrée et de sorties du navigateur, afin de dupliquer les données, les envoyant à la fois au site légitime de la banque, mais également au serveur contrôlé par les attaquants. Dridex peut alors modifier les requêtes qui lui sont nécessaires, et en créer de nouvelles pour vider le compte en banque de l’utilisateur. Une manière simple de se protéger semble être de renommer l’exécutable du navigateur (firefox_renamed.exe à la place de firefox.exe par exemple), rendant ainsi inefficace le malware qui se base sur ces noms pour trouver les navigateurs à compromettre.
BotConf 2017
Eric Freysinet a conclu en annonçant la cinquième édition de la BotConf qui aura lieu à Montpellier du 5 au 8 décembre 2017.
Nicolas DAUBRESSE