Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2022-46364-Proof-of-the-concept — Cette vulnérabilité permet à un attaquant d'effectuer des attaques SSRF (Server-Side Request Forgery) sur les services web Apache CXF qui acceptent les requêtes MTOM/XOP. Le problème réside dans la manière dont l'attribut href de xop:Include est analysé, permettant au serveur de demander des URL arbitraires. | Kitploit
Outils/GitHubGitHub/cybermaksx/cve-2022-46364-proof-of-the-concept
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsTests d'IntrusionApprentissage et Éducation
GitHubcybermaksx/cve-2022-46364-proof-of-the-concept

CVE-2022-46364-Proof-of-the-concept

Voir le dépôt
2il y a 5 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

À propos

Cette vulnérabilité permet à un attaquant d'effectuer des attaques SSRF (Server-Side Request Forgery) sur les services web Apache CXF qui acceptent les requêtes MTOM/XOP. Le problème réside dans la manière dont l'attribut href de xop:Include est analysé, permettant au serveur de demander des URL arbitraires.

Partager

CVE-2022-46364 : Exploitation SSRF vers LFI via XOP:Include dans Apache CXF MTOM

⚠️ AVERTISSEMENT

CET OUTIL EST UNIQUEMENT DESTINÉ À DES TESTS DE SÉCURITÉ ÉDUCATIFS ET AUTORISÉS

Ce proof-of-concept est fourni à des fins éducatives pour aider les professionnels de la sécurité à comprendre la vulnérabilité et à protéger leurs systèmes. L'accès non autorisé à des systèmes informatiques est illégal. L'auteur décline toute responsabilité en cas d'utilisation abusive ou de dommages causés par cet outil. Vous devez obtenir une autorisation écrite explicite du propriétaire du système avant d'effectuer des tests. En utilisant cet outil, vous acceptez de vous conformer à toutes les lois applicables.


📋 TABLE DES MATIÈRES

  1. Aperçu
  2. Détails de la vulnérabilité
  3. Analyse technique approfondie
  4. Utilisation de l'exploit
  5. Installation et prérequis
  6. Mesures d'atténuation
  7. Références et crédits

📌 APERÇU

AttributValeur
CVE IDCVE-2022-46364
GHSA IDGHSA-x3x3-qwjq-8gj4
Type de vulnérabilitéServer-Side Request Forgery (SSRF) → Local File Inclusion (LFI)
Logiciel concernéApache CXF < 3.5.5, Apache CXF < 3.4.10
SévéritéCritique
Score CVSS9.8 (Critique)
Vecteur d'attaqueRéseau
AuthentificationAucune requise
Versions corrigéesApache CXF 3.5.5+, 3.4.10+

Cet exploit exploite une vulnérabilité SSRF critique dans l'implémentation MTOM (Message Transmission Optimization Mechanism) d'Apache CXF pour parvenir à une inclusion de fichiers locaux (LFI) et à des capacités de scan réseau interne.


🔬 DÉTAILS DE LA VULNÉRABILITÉ

Le problème fondamental

Apache CXF valide incorrectement l'attribut href dans les éléments xop:Include lors du traitement des messages SOAP encodés en MTOM. La bibliothèque utilise URLConnection de Java pour déréférencer l'URI sans restrictions de protocole appropriées, permettant aux attaquants de spécifier :

  • file:// - Lire des fichiers locaux (LFI)
  • http:// / https:// - Requêtes réseau internes (SSRF)
  • ftp:// - Requêtes FTP (potentiel d'exploitation supplémentaire)

Pourquoi c'est important

Cette vulnérabilité est particulièrement dangereuse car :

  1. Aucune authentification requise - Les attaquants peuvent cibler tout point de terminaison SOAP accessible
  2. Aucun privilège spécial nécessaire - Le serveur exécute les requêtes avec ses propres privilèges
  3. Divulgation d'informations - Peut exposer les métadonnées cloud (AWS, GCP, Azure), les fichiers de configuration et le code source
  4. Pivot réseau - Le serveur vulnérable devient un proxy pour la reconnaissance réseau interne

Configurations concernées

Tout déploiement Apache CXF qui :

  • Accepte les messages SOAP encodés en MTOM
  • Possède au moins une méthode de service web avec un paramètre (de n'importe quel type)
  • Utilise des versions antérieures à la 3.5.5 (branche principale) ou 3.4.10 (branche legacy)

🧠 ANALYSE TECHNIQUE APPROFONDIE

Contexte protocolaire : MTOM et XOP

MTOM (Message Transmission Optimization Mechanism) est une norme W3C pour optimiser la transmission de données binaires dans les messages SOAP. Elle utilise XOP (XML-binary Optimized Packaging) pour inclure des références de données binaires :

root@kitploit:~
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <myData>
            <xop:Include href="cid:[email protected]" 
                        xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
        </myData>
    </soap:Body>
</soap:Envelope>

Normalement, href contient une référence CID (Content-ID) vers une partie MIME. Cependant, la classe AttachmentUtil d'Apache CXF traite les valeurs href comme des URI génériques sans désinfection appropriée.

Le chemin de code vulnérable

  1. Analyse de la requête :

    • CXF reçoit une requête HTTP multipart/related avec Content-Type: application/xop+xml
    • AttachmentUtil.getAttachmentObject() traite les éléments xop:Include
  2. Déréférencement de l'URI :

    • La méthode vulnérable appelle new URL(href).openStream() directement
    • Aucun blocage du protocole file:// n'est effectué
    • Aucune restriction réseau (par exemple, aucune validation contre les plages IP internes)
  3. Incorporation de la réponse :

    • Le contenu récupéré est encodé en Base64 et intégré dans la réponse SOAP
    • L'attaquant reçoit les données dans l'enveloppe SOAP

Extrait de code (modèle vulnérable)

root@kitploit:~
// Simplified representation of vulnerable code in CXF < 3.5.5
public DataHandler getAttachmentObject(String href) {
    URL url = new URL(href);  // No protocol validation!
    return new DataHandler(url.openStream());
}

Pourquoi LFI fonctionne

Le protocole file:// suit le même chemin de code :

  • file:///etc/passwd → Java ouvre /etc/passwd en tant que flux de fichier
  • Le contenu du fichier est renvoyé comme pièce jointe
  • Aucune restriction de système de fichiers au-delà des permissions de l'utilisateur du processus CXF

Capacité de scan réseau

En itérant sur les IP et les ports, les attaquants peuvent :

  • Découvrir des services internes
  • Accéder aux points de terminaison de métadonnées cloud (169.254.169.254)
  • Contourner les contrôles de segmentation réseau

🛠️ UTILISATION DE L'EXPLOIT

Syntaxe de la commande

root@kitploit:~
usage: exploit.py [-h] -t TARGET [-e ENDPOINT] [-u URL] [-f FILE] [-s SCAN]

CVE-2022-46364 Apache CXF SSRF to LFI Exploit - Educational Purpose Only

options:
  -h, --help            Show this help message and exit
  -t TARGET, --target TARGET
                        Target base URL (e.g., http://192.168.1.100:8080)
  -e ENDPOINT, --endpoint ENDPOINT
                        Web service endpoint path (default: /services/Service)
  -u URL, --url URL     External URL for SSRF (e.g., http://169.254.169.254/latest/meta-data/)
  -f FILE, --file FILE  Local file path for LFI (e.g., /etc/passwd, C:\\Windows\\win.ini)
  -s SCAN, --scan SCAN  Scan internal network range in CIDR notation (e.g., 192.168.1.0/24)

Explication des arguments

ArgumentDescriptionExemple
-t, --targetObligatoire. URL de base du service Apache CXF ciblehttp://10.10.10.50:8080
-e, --endpointOptionnel. Chemin du point de terminaison SOAP/services/UserManagement
-u, --urlURL HTTP/HTTPS à récupérer via SSRFhttp://169.254.169.254/latest/user-data
-f, --fileChemin de fichier local à lire via LFI/etc/shadow, C:\ProgramData\secret.txt

📦 INSTALLATION ET PRÉREQUIS

Prérequis

root@kitploit:~
# Python 3.6 ou supérieur requis
python --version

Étapes d'installation

root@kitploit:~
# Clonez le dépôt
git clone https://github.com/cybermaksxx/CVE-2022-46364-Proof-of-the-concept
cd CVE-2022-46364-PoC

### requirements

requests>=2.28.0 urllib3>=1.26.0

root@kitploit:~

---



### Détails d'implémentation du cœur

#### 1. Construction de la charge utile MTOM
```python
def create_mtom_payload(uri):
    """Create a multipart/related MTOM message with xop:Include"""
    soap_part = f"""--MIME_BOUNDARY
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: binary

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <vulnerableParam>
            <xop:Include href="{uri}" 
                        xmlns:xop="http://www.w3.org/2004/08/xop/include"/>
        </vulnerableParam>
    </soap:Body>
</soap:Envelope>
--MIME_BOUNDARY--"""
    return soap_part

🛡️ MESURES D'ATTÉNUATION

Correctif officiel

Mettez à niveau vers une version corrigée :

root@kitploit:~
<!-- Pour les projets Maven -->
<dependency>
    <groupId>org.apache.cxf</groupId>
    <artifactId>cxf-rt-frontend-jaxws</artifactId>
    <version>3.5.5</version> <!-- ou 3.4.10 pour la branche legacy -->
</dependency>

Contournements (si le correctif n'est pas possible)

  1. Désactivez MTOM complètement (si non requis) :

    root@kitploit:~
    <jaxws:endpoint ...>
        <jaxws:properties>
            <entry key="mtom-enabled" value="false"/>
        </jaxws:properties>
    </jaxws:endpoint>
    
  2. Contrôles au niveau réseau :

    • Restreignez les connexions sortantes du serveur d'application CXF
    • Utilisez des pare-feux pour empêcher l'accès aux plages IP internes depuis la couche applicative
    • Implémentez un filtrage de sortie
  3. Règles de pare-feu applicatif (WAF) :

    • Bloquez les requêtes contenant xop:Include avec href pointant vers file:// ou des adresses IP internes

📚 RÉFÉRENCES ET CRÉDITS

Chercheurs originaux

Cette vulnérabilité a été découverte et divulguée de manière responsable par :

  • Jonathan Leitschuh - Chercheur en sécurité
  • Nick Tait - Chercheur en sécurité

Avis officiels

  • Avis de sécurité Apache CXF
  • Base de données d'avis GitHub : GHSA-x3x3-qwjq-8gj4
  • NVD : CVE-2022-46364

Ressources connexes

  • Spécification MTOM (W3C)
  • Spécification XOP (W3C)
  • Documentation Apache CXF

Remerciements

  • L'équipe Apache CXF pour leur réponse rapide et le correctif
  • GitHub Security Lab pour la publication de l'avis
  • La communauté de la sécurité pour les pratiques de divulgation responsable

📄 LICENCE

Cet outil est fourni à des fins éducatives uniquement. Toute utilisation non autorisée est interdite.

root@kitploit:~
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Dernière mise à jour : Mars 2026
Version : 1.0
Contact : Pour toute question ou préoccupation de sécurité, veuillez ouvrir une issue sur GitHub.


Ce document fait partie d'une recherche en sécurité responsable. Obtenez toujours une autorisation appropriée avant de tester.

Télécharger l’outil