Suite à notre premier article sur la façon de configurer un pot de miel de sécurité IoT, ce deuxième article donne un aperçu des données capturées par notre pot de miel ainsi qu'un focus sur les différents chargeurs de logiciels malveillants que nous avons rencontrés.
Nous passerons en revue :
- Pourquoi il est indispensable de changer le mot de passe par défaut
- Comprendre la nature des attaques sur les pots de miel : le mécanisme du dropper, analyse des différents chargeurs téléchargés sur notre VPS
Pour résumer là où nous en étions la dernière fois, notre honeypot a une adresse IP publique fixe et écoute sur de nombreux ports, incitant les attaquants et autres robots infectés à nous cibler. Par exemple, notre solution TPOT écoute sur TCP 445 (SMB) et 3398 (RDP), tous deux utilisés par le système d'exploitation Windows. Cela explique pourquoi, parmi tous les binaires téléchargés sur notre serveur, nous avons identifié le ransomware WannaCry. Il est plutôt intéressant de souligner que sept ans après sa première observation, il prolifère toujours et continue d'exploiter la fameuse vulnérabilité zero-day, EternalBlue.
Pourquoi il est indispensable de changer le mot de passe par défaut
Dans la mesure où nous menons des recherches sur les malwares basés sur l'IoT, nous avons choisi de nous concentrer sur les ports couramment utilisés par ces appareils et de laisser de côté le reste. Cowrie prend en charge SSH et Telnet. L'administration à distance des objets IoT se fait principalement via ces protocoles et la plupart du temps avec des identifiants médiocres/par défaut. Les malwares tels que Mirai ciblent ces protocoles spécifiques, il est donc particulièrement intéressant de les surveiller.

Figure 1 : Tableau de bord Kibana cowrie après 10 jours (honeypot ssh / telnet)
En moins de 10 jours, plus de 200 000 requêtes malveillantes ont ciblé les services ssh / telnet de notre serveur ! Les requêtes proviennent du monde entier, avec un pic notable en Asie (Chine, Vietnam, Corée) et en Amérique du Sud (Brésil, Mexique).

Figure 2 : Géolocalisation IP des attaquants
Dans la capture d'écran présentée de notre tableau de bord Kibana, présentant les attaques capturées par Cowrie, nous notons que ces 225 000 requêtes proviennent de moins de trois mille IP sources uniques. Cela signifie qu'en moyenne, chaque IP malveillante a envoyé 75 requêtes à notre honeypot. Ce nombre de requêtes, ciblant notamment Telnet ou SSH, est caractéristique d'une attaque par force brute.
La capture d'écran suivante, présentant les principales informations d'identification tentées lors de la tentative de connexion, renforce notre confiance dans cette hypothèse :

Figure 3 : principales tentatives d'identification sur SSH et Telnet
Il est évident que les informations d’identification par défaut ou médiocres constituent une cible courante pour les attaquants…
Les appareils IoT sont souvent fournis avec des noms d'utilisateur et des mots de passe génériques et largement connus, ce qui les rend vulnérables aux accès non autorisés. Par manque de temps, de ressources ou même par paresse, les administrateurs ont tendance à conserver les identifiants par défaut après l'installation de ces appareils, ce qui simplifie grandement la surveillance des appareils.
Il est extrêmement important de modifier ces identifiants par défaut, car cela améliore considérablement la sécurité de vos objets. Les logiciels malveillants comme Mirai et ses variantes exploitent la prévalence des identifiants par défaut comme vecteur d'attaque principal. En tentant d'obtenir un accès non autorisé à l'aide de combinaisons courantes de nom d'utilisateur et de mot de passe, ces entités malveillantes compromettent l'intégrité et la fonctionnalité des appareils IoT.
La surveillance et l’analyse des tentatives d’authentification mettent non seulement en évidence la gravité de la menace potentielle, mais nous permettent également de prendre des mesures proactives pour renforcer notre posture de sécurité.
En identifiant les identifiants courants ciblés par les attaquants, nous pouvons établir une liste de surveillance des identifiants à éviter. Cette liste de surveillance sert de référence pour éviter les combinaisons nom d'utilisateur-mot de passe génériques ou par défaut qui sont fréquemment exploitées. La création et la mise à jour régulière d'une telle liste de surveillance permettent de renforcer les défenses contre les vecteurs d'attaque connus et de minimiser le risque d'accès non autorisé, améliorant ainsi la sécurité dès la conception.

Figure 4 : téléchargements de notre serveur (avec hachage des binaires malveillants)
L'image ci-dessus est une capture d'écran de divers téléchargements sur notre pot de miel, révélant les adresses IP des serveurs malveillants / C2 (serveurs de commande et de contrôle) et les fichiers qu'ils contiennent.
téléchargés (nous n'avons pas anonymisé les adresses IP puisque les échantillons n'y sont plus hébergés). L'analyse de ces binaires est cruciale pour une veille complète sur les menaces. La rétro-ingénierie de ces fichiers nous permet de comprendre leurs mécanismes, d'identifier les vulnérabilités potentielles et d'améliorer nos défenses.
Au Royaume-Uni, le gouvernement a déjà présenté un projet de loi sur la sécurité de l’IoT, le PSTI, qui impose d’interdire l’utilisation de mots de passe par défaut ou « faciles à deviner ». L’objectif est de réduire le risque associé à ces attaques basiques, qui, comme le montre l’étude, sont encore extrêmement présentes dans le paysage actuel des menaces. Après le 29 avril 2024, si un appareil connecté ne répond pas au contrôle de sécurité de ce PSTI, il ne pourra pas être vendu sur le marché britannique. Les réglementations européennes à venir (Cybersecurity for RED et Cyber Resilience Act) imposent également des contrôles de sécurité contre ces problématiques sous peine de perdre l’accès au marché européen.
Comprendre la nature des attaques sur les pots de miel :
Il est important de reconnaître que la majorité des attaques observées sur les pots de miel ne sont pas orchestrées par des pirates informatiques individuels, mais plutôt par des appareils infectés par des logiciels malveillants. Ces appareils ont été compromis par des logiciels malveillants qui analysent de manière autonome Internet ou les réseaux locaux à la recherche de systèmes vulnérables à infecter. Par conséquent, les attaques capturées par les pots de miel sont généralement le résultat de processus automatisés initiés par des logiciels malveillants plutôt que d'actions délibérées d'attaquants humains (ce qui explique comment nous pouvons recevoir plus de 200 000 attaques sur notre pot de miel en moins de 10 jours).
Les malwares IoT fonctionnent en exploitant des vulnérabilités connues (CVE) ou en exploitant des informations d'identification faibles pour obtenir un accès initial aux appareils vulnérables. Une fois à l'intérieur, ils déploient un mécanisme appelé « chargeur » pour délivrer la charge utile du malware sur l'appareil compromis. Ce chargeur (également appelé dropper) est généralement un script bash qui orchestre l'ensemble du processus d'infection.
Le mécanisme du compte-gouttes :
Le rôle principal du script dropper est d'obtenir des informations sur l'appareil et de télécharger le véritable malware sur l'appareil. Il commence généralement par essayer d'obtenir des informations sur l'architecture du processeur ( uname -a, cat /proc/cpuinfo, lscpu… ) et essaie de détecter si l'appareil fonctionne dans un environnement virtuel ou sur du matériel réel.
La capture d'écran suivante présente la principale commande bash tapée dans notre pot de miel :

Figure 5 : commandes bash les plus tentées lors de la connexion
La plupart de ces commandes visent à recueillir des informations sur l’appareil auquel elles viennent d’accéder et à prendre probablement des décisions basées sur des critères prédéterminés.
La charge utile du malware est ensuite téléchargée depuis un serveur distant à l'aide d'outils tels que curl, wget ou busybox . Cette phase est cruciale car elle consiste à récupérer la charge utile malveillante à partir d'un emplacement prédéterminé, souvent hébergé sur un serveur HTTP accessible via Internet.
Le choix d’utiliser ces outils spécifiques est stratégique pour les attaquants pour plusieurs raisons. Tout d’abord, les serveurs Web sont faciles et rapides à déployer, ce qui offre aux attaquants un moyen pratique d’héberger des charges utiles de logiciels malveillants. De plus, le trafic Web est moins susceptible d’être filtré par les pare-feu par rapport à d’autres protocoles de communication, ce qui en fait un vecteur attrayant pour la diffusion de charges utiles malveillantes. De plus, les distributions Linux installées sur les appareils IoT sont souvent légères et peuvent manquer de certains utilitaires que l’on trouve couramment dans les environnements traditionnels. Par conséquent, le dropper tente plusieurs méthodes d’installation pour garantir l’exécution réussie du logiciel malveillant.
Dans le contexte de l'IoT, busybox revêt une importance particulière. Il s'agit d'une suite logicielle qui combine plusieurs utilitaires Unix courants en un seul exécutable, conçue spécifiquement pour les environnements à ressources limitées comme les appareils IoT. Busybox est souvent utilisé par le dropper pour installer la charge utile du malware sur l'appareil compromis, car il est très probable qu'il soit installé sur les appareils compromis.
Un aspect remarquable des malwares IoT est leur adaptabilité à diverses architectures IoT. La charge utile du malware est souvent disponible dans différentes versions adaptées à différentes architectures, telles que MIPS, MIPSEL ou ARM. Le script dropper peut tenter de télécharger plusieurs versions du malware pour garantir la compatibilité avec l'architecture de l'appareil cible. Alternativement, il peut utiliser les informations collectées (architecture du processeur, s'il fonctionne sur du matériel réel ou virtuel) pour choisir l'échantillon à déposer sur l'appareil ou pour ne rien faire et s'auto-supprimer ( rm « $0 » dans bash).
Analyse des différents chargeurs téléchargés sur notre VPS :

Figure 6 : capture d'échantillon de chargeur par notre pot de miel
L'image présentée ci-dessus est un exemple de dropper téléchargé dans notre honeypot. La première ligne du script définit un tableau contenant des chaînes faisant référence à plusieurs architectures de processeur. Ensuite, une autre variable est définie comme « server_ip », ce qui est assez explicite. Ensuite, il parcourt le tableau et, pour chaque architecture, tente de télécharger des logiciels malveillants à partir de server_ip en utilisant les utilitaires wget / curl / tftp et les génère dans un fichier nommé binout. La dernière étape du script consiste à modifier l'autorisation du fichier, à essayer de l'exécuter et à le supprimer.
Lors de la connexion manuelle à ce serveur Web, nous bénéficions de la page Apache par défaut et avons accès à tous les binaires :

Figure 7 : capture d'écran d'un serveur Web hébergeant des échantillons de logiciels malveillants
Dans un effort pour enquêter sur ceux qui ont ciblé notre serveur, nous avons essayé d'énumérer les autres répertoires et fichiers présents sur ce serveur web, sans succès. Ceci, et le manque d'attention (bannières Apache par défaut, versions, absence de mécanisme d'authentification et accès libre aux binaires), nous ont amené à penser que cela ne sert qu'à cela.
Un autre exemple qui a été téléchargé dans notre honeypot est présenté dans l'image ci-dessous. Ce script suit le même principe que le précédent, il télécharge un échantillon pour plusieurs architectures, modifie les permissions sur le fichier et essaie enfin de l'exécuter.

Figure 8 : capture d'échantillon de chargeur par notre pot de miel
Lors de la connexion manuelle et du changement de l'URL en http://"server_ip"/"architecture_of_compromised_device" (par exemple 192.151.243.157/arm), nous avons pu accéder aux binaires.
Effectuer une recherche whois nous informe que cette IP est située à Hong Kong :

Figure 9 : résultat de la recherche whois sur ce serveur malveillant
Dans la capture d'écran suivante se trouve un autre script, faisant pratiquement les mêmes choses :

Figure 10 : capture d'échantillon de chargeur par notre pot de miel
Voici encore un autre exemple de script, le nom du binaire étant explicitement offensant et raciste, cette capture d'écran est une version censurée du script original. Un aspect intéressant de ce chargeur est le fait qu'il inclut également des types d'architecture moins connus tels que PPC et SPARC. Un autre script très similaire a été téléchargé sur notre serveur et nous pensons qu'ils font partie de la même campagne d'infection (les IP C2 sont différentes mais sont toutes deux situées à Londres, et les scripts ont des architectures et des noms de malware similaires)
La recherche de l'URL sur VirusTotal montre également que l'IP est signalée comme malveillante et héberge une variante de Mirai (Gafgyt)

Figure 11 : recherche d'URL totale du virus sur le serveur malveillant
Dans ce deuxième chapitre, nous avons fourni une analyse des données générées par le honeypot mis en place au chapitre 1. Nous avons passé en revue le profil des attaquants, la plupart d'entre eux situés en Asie,
Les attaquants ne sont pas des individus dans leur sous-sol portant des sweats à capuche noirs, mais plutôt d'autres appareils infectés qui sont utilisés pour agrandir le botnet. Ensuite, nous avons analysé les actions de ces bots infectés une fois qu'ils ont réussi à se connecter avec succès via ssh ou telnet à notre serveur. Nous avons étudié les techniques d'empreinte et les procédures de téléchargement de malwares via des scripts bash simples mais efficaces (loaders). Les malwares sont téléchargés via des serveurs Web (facilité de configuration et moins de chances d'être filtrés par des pare-feu). Les IP étant codées en dur directement dans les scripts, nous avons pu recueillir des échantillons et enquêter autour de ces serveurs. Ce chapitre souligne l'importance d'interdire les mots de passe par défaut afin d'endiguer ce type d'attaque. Cette contre-mesure est également portée par les différentes réglementations mises en place en Europe. Si vous souhaitez en savoir un peu plus sur ces nouvelles réglementations et sur la façon de prouver votre conformité à ces défis émergents, jetez un œil à notre solution CyberPass et n'hésitez pas à nous contacter.
Merci d'avoir lu notre article et restez à l'écoute pour le troisième chapitre, où nous fournirons une analyse des échantillons de malwares collectés, à la fois d'un point de vue statique et dynamique, mettant en lumière les objectifs des attaquants !
