La divulgation d’une grave vulnérabilité dans le principal produit intranet d’Atlassian, Confluence, a mis en lumière un certain nombre d’incidents suivis par les équipes des SophosLabs et de Sophos MTR (Managed Threat Response) depuis que le bug RCE (exécution de code à distance) a été révélé lors du week-end du Memorial Day aux États-Unis.
Alors que le nombre de serveurs Confluence vulnérables est faible et en diminution, l’équipe MTR et les SophosLabs ont investigué plusieurs attaques contre les instances Confluence fonctionnant sous Windows ou Linux. Deux de ces attaques, contre des serveurs Windows, ont entraîné le déploiement des charges virales du ransomware Cerber.
La vulnérabilité, CVE-2022-26134, permet à un attaquant de générer un shell accessible à distance, en mémoire, sans rien écrire au niveau du stockage local du serveur. Atlassian a publié à la fois des mises à jour du produit (qui corrigent également d’autres vulnérabilités liées à la sécurité) et des stratégies de mitigation, que la plupart de ses clients semblent avoir mis en œuvre.
La majorité du faible nombre de cas que nous suivons semblent être automatisés, certains des attaquants utilisant le Web shell sans fichier (fileless) pour diffuser diverses charges virales, notamment des bots de type Mirai ; un package Linux malveillant appelé pwnkit ; un cryptomineur connu sous le nom de z0miner (déjà diffusé après l’exploitation de Log4J et d’une vulnérabilité dans Atlassian datant de 2021) ; et, curieusement, des Web shells basés sur des fichiers, écrits aux formats ASP ou PHP. Ce constat nous donne l’impression que les attaquants initiaux tirant parti de cet exploit l’ont fait comme un moyen de diffuser plus largement un ensemble existant d’outils de piratage.
Nous avons également observé des attaquants propager le shellcode Cobalt Strike et exécuter des commandes PowerShell sur des serveurs Windows vulnérables.
Ransomware de type Worm (ver)
Dans les deux incidents où les attaquants ont tenté de déployer un ransomware, nous avons observé des exécutions inattendues (probablement malveillantes) de l’outil curl sur le serveur avant le déploiement. Alors que nous étions en train d’essayer de joindre les clients concernés, l’attaquant a envoyé une commande PowerShell codée au serveur Confluence qu’il contrôlait.
Figure 1 : La commande PowerShell codée
La commande codée était une instruction pour télécharger et exécuter un programme Windows, enregistré dans le dossier %temp% sous le nom svcPrvinit.exe, puis pour le supprimer une fois l’exécution terminée.
Figure 2 : Les commandes PowerShell décodées, téléchargent un binaire Windows
Le processus parent de cette exécution était le logiciel de serveur Web Apache Tomcat exécuté au niveau du répertoire Confluence sur le serveur, laissant peu de doute sur le début de l’attaque. Les attaques ont toutes deux été stoppées par la fonction CryptoGuard d’Intercept X avant que des dommages ne puissent être causés.
Si les serveurs n’avaient pas été protégés et que l’attaque s’était déroulée avec succès, les opérateurs des serveurs auraient découvert que la plupart des fichiers avaient le suffixe .locked ajouté à leur nom et que chaque dossier contenait un fichier nommé __$$RECOVERY_README$$__. html avec un lien vers le site Web Tor du cybercriminel, et une demande de rançon à payer dans les 30 jours, suivi de la menace “nous publierons des informations sur vos données personnelles sur les sites Web publics d’information“.
Figure 3 : La demande de rançon du ransomware Cerber
Aucune preuve n’indiquait que les attaquants avaient exfiltré des données personnelles au niveau des serveurs, ou avaient effectué un mouvement latéral pour passer des serveurs de départ à d’autres machines sur les réseaux des cibles en question.
Détection et conseils
Comme la plupart des clients d’Atlassian ont été informés des installations vulnérables, chaque jour qui passe réduit toujours plus le nombre d’instances de serveurs Confluence publics et vulnérables. Les conseils de l’entreprise incluent des instructions pour déplacer les composants vulnérables vers des dossiers qui ne sont pas accessibles au public, mais une mise à niveau devrait résoudre les problèmes liés à cette vulnérabilité.
Le redémarrage du serveur supprimera tout shellcode distant en mémoire qui s’exécute sur les machines qui ont été infectées, mais un redémarrage ne supprimera pas les composants du toolkit de piratage que certains attaquants auront déposé dans le répertoire %temp% sous Windows ou dans /tmp sous Linux . Dans certains cas, la suppression manuelle du contenu de ces dossiers peut être nécessaire.
Les produits Sophos détecteront les Web shells ASP et PHP, respectivement, sous le nom Troj/WebShel-BU ou Troj/WebShel-DB. CryptoGuard est très efficace pour stopper l’exécution du ransomware Cerber, entre autres. Le shellcode du stager Cobalt Strike est détecté sous le nom ATK/ChimeraPS-A. Les règles de comportement mises à jour détecteront également le moment où les processus Tomcat invoqueront PowerShell ou curl, et alerteront ou stopperons l’exécution de la commande.
Des indicateurs de compromission liés à ces attaques ont été publiés dans le référentiel Github des SophosLabs.
Remerciements
Les SophosLabs remercient les analystes Andrew Ludgate et Gabor Szappanos, ainsi que les experts MTR en réponse aux incidents Sam Kettleson, Coleman Laguzza, Dakota Mercer-Szady, Ade Muhammed, Mark Parsons et Kevin Thipphavong, pour leurs efforts continus déployés pour la protection des clients 24h/24 et 7j/7.
Billet inspiré de Confluence exploits used to drop ransomware on vulnerable servers, sur le Blog Sophos.