Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
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é.

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

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-87902 — Pack de preuve de concept et de divulgation pour CVE-2026-87902, une inclusion de fichier local non authentifiée dans WordPress Core via locate_template(), avec un laboratoire en boucle locale et des conseils de correctif. | Kitploit
Outils/GitHubGitHub/abraxas/cve-2026-87902
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsSécurité WebTests d'IntrusionLabs et Pratique
GitHubabraxas/cve-2026-87902

CVE-2026-87902

Pack de preuve de concept et de divulgation pour CVE-2026-87902, une inclusion de fichier local non authentifiée dans WordPress Core via locate_template(), avec un laboratoire en boucle locale et des conseils de correctif.

Voir le dépôt
311il y a 22h 56mPas 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

Abraxas Labs — CVE-2026-87902 — WordPress

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  CVE-2026-87902

CVE-2026-87902 — WordPress

WordPress — WordPress Core 7.1.1 — WordPress

WordPress Core est vulnérable à une inclusion locale de fichier via la fonction locate_template() dans diverses versions jusqu'à 7.1.1 inclus.

CVECVE-2026-87902 · CVE.org
CWECWE-98
CVSSÉlevé : 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
ProduitWordPress Core
Affectétoutes les versions jusqu'à 7.1.1 (inclus)
Corrigé7.1.2 et ultérieures
Authnon authentifié (voir la source map)
LicenceGNU Affero GPL v3.0
Lab127.0.0.1 uniquement · pack de divulgation fournisseur/client, pas un scanner

Avis (issu de la source map)

wp-includes/template.php get_page_template + locate_template sur 7.1.1. Correctif 7.1.2 _wp_is_template_path_allowed et validate_file sur pagename décodé.


Entrée

  • Méthode : GET
  • Chemin : /?page_id={id}&pagename=templates%252F%252e%252e%252F%252e%252e%252F%252e%252e%252Fuploads%252Fghsa7hp8-witness
  • Routeur : Requête de page front-end non authentifiée. get_page_template() construit page-{$pagename}.php à partir du pagename décodé par URL. locate_template() concatène sur le répertoire du thème sans confinement.
  • Notes : CVE-2026-87902 CWE-98 WordPress <= 7.1.1 LFI non authentifié. Témoin : GHSA7HP8-WITNESS et wp_version=7.1.1 dans la réponse de la page. Pas un reverse shell. Pas pearcmd.

Chaîne d'appels

  • GET /?page_id=&lt;page publiée&gt;&pagename=&lt;templates/../../../uploads/ghsa7hp8-witness doublement encodé&gt;
  • WP_Query parse_query is_page depuis page_id; get_posts remplace WHERE par ID=page_id
  • get_page_template urldecode pagename puis page-{$pagename}.php
  • locate_template file_exists(stylesheet_path + '/' + template_name) sans confinement
  • template-loader realpath + include

Préconditions du lab

  • WordPress 7.1.1 (ou toute branche affectée avant les rétroportages 7.1.2)
  • thème classique avec un répertoire de premier niveau nommé page-* (page-templates)
  • cible .php locale lisible (lab : wp-content/uploads/ghsa7hp8-witness.php)

Témoin

Le corps d'une réponse 200 non authentifiée contient GHSA7HP8-WITNESS et wp_version=7.1.1. Le contrôle GET /?page_id=N ne le contient pas.

Pas un succès

  • témoin uniquement sur un GET direct du fichier PHP uploadé (wp_version=none)
  • reverse shell
  • gadget pearcmd.php

Correctif / remédiation

À faire en premier : Mettre à jour WordPress Core vers 7.1.2 ou une version ultérieure.

Vérifier après la mise à niveau

  • Relancer CVE-2026-87902-Abraxas-Labs.py contre la version corrigée : le témoin mappé ne doit pas apparaître.
  • Confirmer l'avis fournisseur / le changeset dans l'arborescence déployée (voir références).
  • Une signature WAF est un délai, pas un correctif.

Si vous ne pouvez pas mettre à jour immédiatement

  • Désactiver ou isoler le composant affecté.
  • Rechercher la condition témoin en production (nouveaux utilisateurs privilégiés, fichiers inattendus, lignes injectées — tout ce que la carte de cette CVE nomme).

Reproduction (lab autorisé)

Cibler uniquement http://127.0.0.1:8088 (ou le loopback que vous avez lié). Ne pointez pas ce script vers Internet.

root@kitploit:~
python3 CVE-2026-87902-Abraxas-Labs.py

Le succès correspond au témoin ci-dessus dans le corps de la réponse. Un HTML 200 générique ne l'est pas.


Images du lab

Pile loopback utilisée pour la reproduction. Images officielles sauf si un Dockerfile dans ce dossier compile depuis les sources.

  • lab/docker-compose.yml
  • lab/Dockerfile
root@kitploit:~
cd lab
docker compose up --force-recreate

Liez l'arborescence du produit vulnérable à côté de Compose si le YAML monte un répertoire local (zip du plugin / tag source issu de la table des versions). Ne publiez rien d'autre que 127.0.0.1.


Références

  • CVE-2026-87902 · NVD

  • CVE-2026-87902 · CVE.org

  • github.com/WordPress/wordpress-develop/security/advisories/GHSA-7hp8-65ch-5whp

  • www.wordfence.com/threat-intel/vulnerabilities/wordpress-core/wordpress-core-711-unauthenticated-local-file-inclusion-via-locate-template-path-traversal

  • www.cve.org/CVERecord?id=CVE-2026-87902

  • Abraxas Labs : abraxaslabs.tech · github.com/abraxas · @abraxas_null


Enregistrements (structurés)

root@kitploit:~
# CVE-2026-87902 / GHSA-7hp8-65ch-5whp

CWE: CWE-98
CVSS: High 8.1 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H (Wordfence). GitHub advisory: Critical.

## Description

An unauthenticated attacker can make `get_page_template()` page-template resolution include a chosen readable local `.php` file outside the active theme directories. `locate_template()` in WordPress <= 7.1.1 concatenates the caller-supplied template name onto the theme path and does not verify the result stays inside the theme. The core-reachable vector is the url-decoded `pagename` query variable. WordPress 7.1.2 adds `_wp_is_template_path_allowed()`.

## Product

WordPress 7.1.1 (fixed in 7.1.2, backported through 4.7.37). Lab oracle is LFI of a witness PHP file, not RCE.

Licence

Ce pack de divulgation est sous licence GNU Affero General Public License v3.0. Voir LICENSE.


Avertissement

Ce pack est destiné au fournisseur, au propriétaire du site et aux labs autorisés. Le script communique avec 127.0.0.1. L'utiliser contre des systèmes que vous ne possédez pas n'est pas autorisé par Abraxas Labs. Aucune garantie.

abraxaslabs.tech · github.com/abraxas · @abraxas_null

Télécharger l’outil