Les pare-feux Sophos ciblés par des attaques zero-day

Des pirates informatiques ont ciblé les pare-feux Sophos XG (versions physiques et virtuelles) en utilisant un exploit zero-day dans le but ultime d’installer le malware Asnarok sur les appareils vulnérables.

Sophos a déclaré dans un article que la faille de sécurité en question est une vulnérabilité d’injection SQL de pré-authentification qui mène à une exécution de code à distance. Cette faille affecte les systèmes configurés avec l’interface d’administration (appelée «service d’administration HTTPS») ou le portail d’utilisateur exposé à la zone WAN.

«De plus, les pare-feux configurés manuellement pour exposer un service de pare-feu (par exemple: VPN ou SSL) à la zone WAN qui partage le même port que le portail administrateur ou utilisateur ont également été affectés», a expliqué la firme. “Pour référence, la configuration par défaut du pare-feu XG est que tous les services fonctionnent sur des ports uniques.”

sophos

Si les pirates peuvent accéder à un pare-feu Sophos XG exposé, le cheval de Troie Asnarok est ensuite installé. Ce logiciel malveillant est conçu pour exfiltrer les données hébergées sur le pare-feu Sophos XG. Sophos a déclaré que le malware est un exécutable binaire ELF qui a été spécifiquement compilé pour un système d’exploitation de pare-feu.

«Les données exfiltrées pour tout pare-feu impacté incluent tous les noms d’utilisateur locaux et les mots de passe hachés de tous les comptes d’utilisateurs locaux», a précisé Sophos. «Par exemple, cela inclut les administrateurs d’appareils locaux, les comptes de portail utilisateur et les comptes utilisés pour l’accès à distance. Les mots de passe associés à des systèmes d’authentification externes tels que Active Directory (AD) ou LDAP n’ont pas été compromis. »

Sophos a distribué un correctif la semaine pour cette vulnérabilité.

Compromis Initial: Une chaîne de scripts Linux

Dans cette attaque on remarque une chaîne de scripts shell Linux hébergée sur un domaine qui semble inoffensif au premier coup d’œil, sophosfirewallupdate[.]com.

“Il y avait une orchestration importante impliquée dans l’exécution de l’attaque”, selon Sophos.

La chaîne d’attaque commence par l’exploit de l’injection SQL, qui permet aux pirates d’insérer une commande d’une ligne dans une table de base de données sur un appareil ciblé, selon une analyse technique de Sophos. Cette commande injectée déclenche un téléchargement du premier script shell Linux, nommé Install.sh, depuis le serveur distant.

Sur le pare-feu ce shell est écrit sous le nom «x.sh» et est également placé dans le répertoire /tmp. Ce dernier se révèle être un script d’installation qui dépose deux scripts shell entièrement nouveaux et modifie également un script existant dans le système d’exploitation dans le but d’être persistant.

Le premier des nouveaux scripts shell installé par x.sh se nomme .lp.sh et se connecte au site sophosfirewallupdate pour télécharger un fichier exécutable Linux ELF, nommé lp. Lp est également écrit dans /tmp avec le nom de fichier “b”.

«Le programme b, une fois exécuté, se supprime du système de fichiers de l’appareil, il n’est donc présent qu’en mémoire», a expliqué Sophos. “Ensuite, il répète une série de tâches toutes les trois à six heures.”

La première de ces tâches consiste à se connecter à l’adresse IP 43.229.55.44. Si cela échoue, il essaie le domaine malveillant sophosproductupdate[.]com. En cas de succès, il télécharge un autre exécutable Linux ELF appelé Sophos.dat.

sophos

Le deuxième scripts shell déposé est écrit dans le répertoire /tmp avec le nom de fichier .pg.sh. Il télécharge ensuite un second exécutable ELF, appelé bk sur le serveur Web et écrit dans le système de fichiers sous le nom .post_MI.

Le script Install.sh exécute également un certain nombre de commandes PostgreSQL pour modifier ou remettre à zéro les valeurs de certaines tables de la base de données, a noté Sophos. L’une de ces commandes modifie une entrée de valeur de service spécifique afin que .post_MI s’exécute chaque fois que ce service est exécuté.

«Le script Install.sh… a modifié au moins un script shell qui fait partie du système d’exploitation du pare-feu pour ajouter un ensemble de commandes à la fin du script», selon le document de recherche. «Ce dernier script, en particulier, est pertinent car les logiciels malveillants ont modifié les services pour s’assurer qu’il s’exécutait à chaque démarrage du pare-feu; il a servi de mécanisme de persistance pour le logiciels malveillant. »

Le trojan Asnarok dérobe les données du pare-feu Sophos XG

Le fichier nommé Sophos.dat, enregistré dans le système de fichiers sous le nom de 2own, est en fait le payload ultime de la chaîne d’attaque – le cheval de Troie Asnarok, détaillé pour la première fois dans l’analyse de Sophos.

«La principale tâche de ce logiciel malveillant semblait être le vol de données, qu’il pouvait effectuer en récupérant le contenu de diverses tables de base de données stockées dans le pare-feu, ainsi qu’en exécutant certaines commandes du système d’exploitation», selon une étude de Sophos.

Asnarok récupère d’abord l’adresse IP publique où le pare-feu a été installé, en utilisant des moteurs de recherche publics comme «ifconfig.me» et «checkip.dyndns.org». Ensuite, il récupère des informations sur le pare-feu et ses utilisateurs dans différentes zones de stockage du pare-feu.

Sophos a déclaré que ces données comprennent: la licence et le numéro de série du pare-feu; une liste des adresses e-mail des comptes d’utilisateurs qui ont été stockées sur l’appareil; l’e-mail principal appartenant au compte administrateur du pare-feu; les noms des utilisateurs du pare-feu, les noms d’utilisateur, les mots de passe chiffrés et le hachage SHA256 salé du mot de passe du compte administrateur; une liste des ID utilisateur autorisés à utiliser le pare-feu pour des connexions VPN et SSL et une liste des comptes autorisés à utiliser une connexion VPN «sans client».

Le malware a également collecté des données sur l’appareil: la version du système d’exploitation; le type de processeur et la quantité de mémoire présente sur l’appareil; combien de temps il est opérationnel depuis le dernier redémarrage (le «temps de disponibilité»); et la sortie des tables «ifconfig» et «ARP», a expliqué Sophos.

Les données sont collectées dans un fichier temporaire sur le pare-feu avec le nom Info.xg, compressées, chiffrées avec OpenSSL puis réservées pour être envoyées vers l’adresse IP 38.27.99.69. Dans sa dernière étape, Asnarok supprime les fichiers qu’il a créés temporairement pendant qu’il collectait les informations.

La firme a déclaré qu’elle n’avait aucune preuve que les données collectées avaient été exfiltrées avec succès sur les systèmes ciblés.

Les utilisateurs qui n’ont pas activé les mises à jour automatiques sur leurs pare-feu peuvent les activer afin de recevoir le correctif. Sophos a quant à lui déclaré avoir bloqué les domaines et les adresses IP associés à la campagne d’attaque.

Si cet article vous a plu, jetez un œil à notre article précédent.