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-2026-12227 — Preuve de concept et analyse technique pour CVE-2026-12227, une LFI non authentifiée dans le plugin WordPress Visual Composer (<=45.16.0) permettant l'inclusion de fichiers et l'exécution de code à distance (RCE). | Kitploit
Outils/GitHubGitHub/be-keb/cve-2026-12227
Scanners de VulnérabilitésScanners de Vulnérabilités WebAnalyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité WebTests d'Intrusion
GitHubbe-keb/cve-2026-12227

CVE-2026-12227

Preuve de concept et analyse technique pour CVE-2026-12227, une LFI non authentifiée dans le plugin WordPress Visual Composer (<=45.16.0) permettant l'inclusion de fichiers et l'exécution de code à distance (RCE).

11il y a 6 joursPas 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-12227 : Inclusion de fichier local (LFI) non authentifiée dans Visual Composer Website Builder



Résumé

CVE-2026-12227 est une vulnérabilité critique (CVSS 9.8) d'inclusion de fichier local (LFI) non authentifiée dans le plugin Visual Composer Website Builder pour WordPress, affectant toutes les versions jusqu'à la 45.16.0 incluse. La faille se situe dans le paramètre vcv-template, qui permet à un attaquant d'inclure et d'exécuter des fichiers arbitraires sur le serveur. Cela peut entraîner une exposition de données sensibles, un contournement du contrôle d'accès, voire une exécution de code à distance (RCE) complète si l'environnement du serveur est mal configuré.

ID CVE

CVE-2026-12227

CVSS

9.8/10

Produits affectés

Plugin Visual Composer Website Builder (jusqu'à la version 45.16.0)

Détails techniques

Cause racine : La vulnérabilité est classée CWE-98 : Contrôle inapproprié du nom de fichier pour une instruction include/require dans un programme PHP (souvent appelée inclusion de fichier distant PHP). Elle provient d'une faille logique dans le fichier PageTemplatesController.php, plus précisément dans la fonction viewPageTemplate(), qui se greffe au filtre template_include de WordPress à la priorité 11 sans aucune vérification d'authentification.

Le problème central est une faille de type « valider puis muter » :

Validation (sur l'entrée brute) : Le code appelle d'abord la fonction validate_file() de WordPress sur la valeur brute fournie par l'utilisateur pour le paramètre vcv-template. Cette fonction est conçue pour rejeter les chemins contenant des séquences littérales de traversée de répertoire comme ... À ce stade, l'entrée malveillante theme:.theme:./.theme:./.theme:./wp-links-opml.php ne contient aucun .. littéral, elle passe donc la validation.

Mutation (après validation) : Immédiatement après la validation, le code vérifie si le type de template est vc-custom-layout et si la valeur contient la chaîne theme:. Si c'est le cas, il exécute str_replace('theme:', '', $current['value']), ce qui supprime toutes les occurrences de theme: de la valeur.

Puits : La valeur mutée est ensuite passée à locate_template(), qui résout le chemin et inclut le fichier. Comme les chaînes theme: ont été supprimées, les séquences de traversée fragmentées sont fusionnées, créant un chemin valide comme ../../../../wp-links-opml.php qui n'a jamais été validé sous sa forme finale.

Surface d'attaque : Vecteur d'attaque : Réseau (AV:N) — la vulnérabilité est accessible directement via HTTP/HTTPS.

Authentification : Aucune requise (PR:N) — il s'agit d'une vulnérabilité non authentifiée. Tout attaquant distant peut la déclencher sans compte valide.

Interaction utilisateur : Aucune requise (UI:N).

Composant affecté : Le plugin Visual Composer Website Builder pour WordPress.

Paramètre vulnérable : Le paramètre vcv-template, utilisé conjointement avec le paramètre vcv-template-type.

Condition de déclenchement : Le plugin doit être installé et actif sur un site WordPress, et une page front-end doit être construite avec Visual Composer (c'est-à-dire qu'un permalien normal doit exister).

Notes d'exploitation : Impact : La faille permet à un attaquant non authentifié d'inclure et d'exécuter des fichiers locaux arbitraires sur le serveur. Comme les fichiers PHP inclus sont exécutés, cela peut mener à une exécution de code à distance (RCE), permettant une compromission totale de la confidentialité, de l'intégrité et de la disponibilité du serveur.

Technique d'exploitation : Les attaquants peuvent l'exploiter en forgeant une valeur vcv-template malveillante qui utilise le préfixe theme: pour contourner la validation, comme décrit dans la cause racine. Par exemple, une requête pourrait ressembler à : POST /?vcv-template-type=vc-custom-layout&vcv-template=theme:.theme:./.theme:./.theme:./wp-links-opml.php.

Escalade RCE : Bien que la LFI elle-même soit critique, l'obtention d'une RCE dépend souvent de l'environnement du serveur. Une méthode courante consiste à inclure un fichier déjà téléversé sur le serveur (par exemple, un fichier image apparemment inoffensif contenant du code PHP embarqué) ou à exploiter d'autres mauvaises configurations du serveur.

Disponibilité du PoC : Plusieurs exploits de preuve de concept sont publiquement disponibles, notamment un script Python et un template Nuclei, qui peuvent être utilisés pour la validation dans un environnement de laboratoire autorisé

  • Cette section a été reproduite par IA car j'étais trop paresseux pour tout écrire

Preuve de concept

[*] Code Python donné ci-dessus

Remédiation

Version corrigée : 45.16.1

Références

  • CVE.org : https://www.cve.org/CVERecord?id=CVE-2026-12227
  • NVD : https://nvd.nist.gov/vuln/detail/CVE-2026-12227
  • MITRE CVE : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-12227
  • VulDB : https://vuldb.com/?search=CVE-2026-12227
  • Wordfence Intelligence : https://www.wordfence.com/threat-intel/vulnerabilities/
  • Patchstack : https://patchstack.com/database/
  • WPScan : https://wpscan.com/vulnerability/
  • Exploit-DB : https://www.exploit-db.com/search?cve=2026-12227
  • Recherche GitHub : https://github.com/search?q=CVE-2026-12227
  • Templates Nuclei : https://github.com/projectdiscovery/nuclei-templates
  • CISA KEV : https://www.cisa.gov/known-exploited-vulnerabilities-catalog
  • Rapid7 : https://www.rapid7.com/db/
  • Tenable : https://www.tenable.com/cve/CVE-2026-12227
  • Snyk : https://security.snyk.io/vuln/?search=CVE-2026-12227
  • Aqua : https://avd.aquasec.com/nvd/cve-2026-12227
  • CVE Details : https://www.cvedetails.com/cve/CVE-2026-12227/
  • CIRCL : https://cve.circl.lu/cve/CVE-2026-12227
  • GitHub Advisory : https://github.com/advisories?query=CVE-2026-12227
  • Packet Storm : https://packetstormsecurity.com/search/?q=CVE-2026-12227
  • Sploitus : https://sploitus.com/?query=CVE-2026-12227
  • Vulmon : https://vulmon.com/vulnerabilitydetails?qid=CVE-2026-12227
  • CVEFeed : https://cvefeed.io/vuln/detail/CVE-2026-12227
  • OpenCVE : https://www.opencve.io/cve/CVE-2026-12227
  • CVE.report : https://cve.report/CVE-2026-12227
  • Vulners : https://vulners.com/cve/CVE-2026-12227
  • Security-Database : https://www.security-database.com/cve/CVE-2026-12227
  • CVE Crowd : https://cvecrowd.com/cve/CVE-2026-12227
  • CVE Base : https://www.cvebase.com/cve/2026/12227
Télécharger l’outil