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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cve-2019-3396 — Injection de modèles non autorisée dans Confluence | Kitploit
Outils/GitHubGitHub/petrusviet/cve-2019-3396
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubpetrusviet/cve-2019-3396

cve-2019-3396

Injection de modèles non autorisée dans Confluence

Voir le dépôt
212il y a 5 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

Injection de modèle non autorisée dans Confluence (CVE-2019-3396)

I) Construction

  • Ce bug affecte les versions suivantes :
    • Toutes les versions 1.x.x, 2.x.x, 3.x.x, 4.x.x et 5.x.x
    • Toutes les versions 6.0.x, 6.1.x, 6.2.x, 6.3.x, 6.4.x et 6.5.x
    • Toutes les versions 6.6.x antérieures à 6.6.12
    • Toutes les versions 6.7.x, 6.8.x, 6.9.x, 6.10.x et 6.11.x
    • Toutes les versions 6.12.x antérieures à 6.12.3
    • Toutes les versions 6.13.x antérieures à 6.13.3
    • Toutes les versions 6.14.x antérieures à 6.14.2
  • Après avoir téléchargé le code source, vous devez :
    • Modifier la valeur confluence.home pour qu'elle pointe vers le répertoire de Confluence Home dans le fichier ./confluence/WEB-INF/classes/confluence-init.properties
    • Ajouter la variable CATALINA_OPTS pour permettre au programme de fonctionner en mode débogage à distance

Avec Windows, fichier ./bin/setenv.bat

set CATALINA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005

Avec Linux, fichier ./bin/setenv.sh

CATALINA_OPTS="-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=5005 ${CATALINA_OPTS}"  
  • Dans l'IDE (IntelliJ), créez une configuration de débogage : Remote JVM Debug avec les valeurs host et port définies sur localhost:5005 et Command line arguments for remote JVM
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005
  • Vous pouvez utiliser PostgreSQL comme base de données :
$ su - postgres
postgres@ubuntu:~$ psql -U postgres
postgres@ubuntu:~$ psql -U postgres
psql (10.6 (Ubuntu 10.6-0ubuntu0.18.04.1))
Type "help" for help.
 
postgres=# CREATE USER wiki WITH PASSWORD 'wiki';
CREATE ROLE
postgres=# CREATE DATABASE wiki OWNER wiki;
CREATE DATABASE
postgres=# GRANT ALL PRIVILEGES ON DATABASE jira TO wiki;
GRANT
  • Vous devez ajouter les jars : ./confluence/WEB-INF/atlassian-bundled-plugins/widgetconnector-x.x.x.jar, ./confluence/WEB-INF/lib/confluence-x.x.x.jar, ./confluence/WEB-INF/lib/velocity-x.x.x-atlassian-x.jar dans lib afin de pouvoir voir le code source nécessaire lors du débogage.

  • Lancez le fichier ./bin/start-confluence.bat et vous pouvez également consulter ce guide pour installer à partir du source.

II) Analyse

  • Après avoir lu la description, on peut comprendre que ce bug provient de la fonctionnalité Widget Connector. J'ai donc cherché sur Google pour savoir ce qu'est cette fonctionnalité et comment l'utiliser :

    2 pour éditer une page

    3
    Choisir Autres macros

    4 Choisir Widget connector

    image

  • J'ai choisi des paramètres au hasard puis cliqué sur Preview, avant de passer sur Burp pour voir si quelque chose d'intéressant s'y trouvait. image

  • Dans ce paquet, j'ai vu un paramètre "pluginKey":"com.atlassian.confluence.extra.widgetconnector". J'ai donc supposé que la fonctionnalité Widget Connector est définie dans la classe com.atlassian.confluence.extra.widgetconnector et j'ai cherché dans le chemin pour voir s'il y avait un jar suspect.

image

  • J'ai essayé d'ajouter le fichier ./confluence/WEB-INF/atlassian-bundled-plugins/widgetconnector-x.x.x.jar dans lib du projet pour pouvoir lire le code source et déboguer.

    1
    Comment ajouter un fichier jar dans lib

  • En ouvrant le paquet widgetconnector, j'ai été attiré par la classe WidgetMacro. J'ai donc placé un point d'arrêt dans le constructeur et la fonction execute de cette classe pour voir si elle est appelée lorsque je fais un Preview 🕵️

    • image
    • La fonction execute est appelée, puis le programme appelle DefaultRenderManager.getEmbeddedHtml
    • image
Télécharger l’outil