Apache Struts : Nouvelle faille du système

Apache Struts a récemment connu une faille importante dans son système permettant aux pirates de prendre en charge des serveurs Web. Avant de débuter cette article, faisons un point sur Apache Struts. Cependant, nous ne détaillerons pas son fonctionnement.

Apache-Struts-logo-image-blog-devensys

Qu’est ce que Apache Struts

Struts est un Projet Open Source développé par la communauté Jakarta d’Apache. Il a débuté en mai 2000 sous la direction de Craig R Mc Clanahan.
Aujourd’hui Struts est devenu un projet très actif puisque sa mailing-list comporte un millier de personnes. Apache Struts est un framework open source pour le développement d’applications Web dans le langage de programmation Java et est largement utilisé par les entreprises du monde entier, y compris par 65% des entreprises du Fortune 100, telles que Vodafone, Lockheed Martin, Virgin Atlantic et l’IRS.

La vulnérabilité ( CVE-2018-11776 ) réside dans le cœur d’Apache Struts et provient d’une validation insuffisante des entrées non fiables fournies par l’utilisateur dans le cœur du framework Struts sous certaines configurations.

L’exploitation Apache Struts nouvellement trouvée peut être déclenchée simplement en visitant une URL spécialement conçue sur le serveur Web concerné, ce qui permet aux pirates d’exécuter du code malveillant et de prendre le contrôle total du serveur cible exécutant l’application vulnérable.

Vulnérabilité Struts2 – Êtes-vous affecté ?

Toutes les applications qui utilisent des versions prises en charge par Apache Struts (Struts 2.3 à Struts 2.3.34 et Struts 2.5 à Struts 2.5.16) et même certaines versions non prises en charge sont potentiellement vulnérables à cette faille, même si aucun plug-in supplémentaire n’a été activé .

Votre implémentation Apache Struts est vulnérable à la faille RCE signalée si elle remplit les conditions suivantes :

  • L’ indicateur alwaysSelectFullNamespace est défini sur true dans la configuration Struts.
  • Le fichier de configuration Struts contient une balise « action » ou « url » qui ne spécifie pas l’attribut d’espace de nom facultatif ou spécifie un espace de noms avec un caractère générique.

[…Suite de l’article sur TECH DE GEEK]