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-92966 — PoC Python et outil d'exploitation de masse pour CVE-2026-92966, une exécution de shortcode stocké non authentifiée dans WordPress LatePoint ≤5.7.0 via les champs de nom de réservation. | Kitploit
Outils/GitHubGitHub/murrez/cve-2026-92966
Scanners de VulnérabilitésAnalyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionDéveloppement de Charges Utiles
GitHubmurrez/cve-2026-92966

CVE-2026-92966

PoC Python et outil d'exploitation de masse pour CVE-2026-92966, une exécution de shortcode stocké non authentifiée dans WordPress LatePoint ≤5.7.0 via les champs de nom de réservation.

Voir le dépôt
il y a 1 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-92966 — LatePoint ≤ 5.7.0 exécution de shortcode stocké non authentifiée

ChampValeur
CVECVE-2026-92966
ProduitLatePoint — Réservation de rendez-vous
Affecté≤ 5.7.0
Corrigé5.7.1
CWECWE-94 — Injection de code (exécution de shortcode)
CVSS 3.19.1 Critique (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N)
CNAWordfence
Découvreurhashiramasenju333
Catalogue PoCbithttps://pocbit.org/pocs/
Page PoCbithttps://pocbit.org/pocs/cve-2026-92966
Marqueur de vérificationPOCBIT-92966-OK
AvisWordfence Threat Intel

PoC Python aligné sur CVE-2026-102425 : exploitation de masse par défaut, --check, -u, --lab, pool de threads, hits.txt / exploited.txt. Aucune clé API — implantation entièrement non authentifiée via le flux de réservation public.


Résumé

WordPress LatePoint permet aux visiteurs anonymes de réserver des rendez-vous. Le prénom / nom du client sont stockés avec seulement sanitize_text_field() — les crochets ne sont pas supprimés, donc des valeurs comme [caption]…[/caption] persistent.

Lorsque le site affiche le bloc Gutenberg Customer Cabinet (render_customer_dashboard() → [latepoint_customer_dashboard]), le modèle du tableau de bord imprime le nom du client dans le HTML (Welcome %s avec esc_html($customer->full_name)). esc_html n'encode pas [ ni ], donc les charges utiles de type shortcode survivent dans la sortie du bloc.

WordPress exécute ensuite do_shortcode sur the_content à la priorité 11. Comme 5.7.0 renvoyait le HTML brut du tableau de bord depuis le gestionnaire de shortcode, les shortcodes stockés dans la ligne de bienvenue étaient analysés une seconde fois et exécutés. 5.7.1 corrige cela par encode_shortcode_delimiters() sur la sortie du tableau de bord (voir le commentaire dans shortcodes_helper.php : « the_content exécute do_shortcode à la priorité 11 »).

Impact : exécution arbitraire de shortcode non authentifiée. Ce n'est pas toujours une RCE OS instantanée en soi, mais sur une pile WordPress typique, cela s'enchaîne vers des plugins critiques (formulaires, constructeurs, gestionnaires de fichiers, shortcodes basés sur eval). Le PoC prouve l'exécution avec le shortcode cœur [caption] et un POCBIT_EXEC_SHORTCODE optionnel pour des gadgets RCE spécifiques au site.


Chaîne d'attaque (deux étapes)

sequenceDiagram
  participant A as Attacker
  participant B as Booking (nopriv AJAX)
  participant DB as wp_latepoint_customers
  participant P as Page + Customer Cabinet block
  participant WP as the_content do_shortcode

  A->>B: first_name=[caption]PAYLOAD[/caption]
  B->>DB: store customer (guest booking)
  A->>P: GET customer dashboard (session/cookie)
  P->>P: shortcode renders Welcome + payload
  WP->>WP: second do_shortcode pass
  WP-->>A: executed shortcode output (marker)
  1. Plant — Étape de réservation / client non authentifiée : définir customer[first_name] (ou last_name) sur une charge utile de shortcode.
  2. Trigger — Charger une page contenant le bloc Customer Cabinet en étant authentifié en tant que ce client (session invité après réservation, ou connexion). La seconde passe de do_shortcode se déclenche.

Références dans le code source du fournisseur (5.7.0) :

  • lib/models/customer_model.php — prepare_data_before_it_is_set() / sanitize_text_field sur les noms
  • lib/views/customer_cabinet/dashboard.php — ligne de bienvenue avec full_name
  • lib/helpers/blocks_helper.php — render_customer_dashboard()
  • Correctif : lib/helpers/shortcodes_helper.php (5.7.1) — encode_shortcode_delimiters()

Fichiers PoC

FichierObjectif
poc.pyCLI, menu interactif, exploitation de masse
_engine.pyVérification de version, tentative de plant de réservation, déclenchement du tableau de bord, lab
up.phpFichier de sonde optionnel si votre shortcode RCE dépose des fichiers
targets.example.txtListe d'URL pour le traitement en masse
extract-5.7.0/ / extract-5.7.1/Arborescences du fournisseur pour diff (optionnel)

Prérequis

pip install requests colorama

Utilisation (approche orientée exploitation)

Interactif (par défaut = exploit)

python poc.py

Exploitation de masse → exploited.txt

python poc.py targets.txt
python poc.py fofa_latepoint.txt -t 20 -T 28

Vérification de masse → hits.txt

python poc.py --check targets.txt

Empreinte : Stable tag de readme.txt, indices front-end de LatePoint (latepoint-book-form, latepoint_helper), version ≤ 5.7.0.

Cible unique

python poc.py -u https://target.example --check
python poc.py -u https://target.example

Shortcode RCE spécifique au site

Si la cible dispose d'un shortcode dangereux (gestionnaire de fichiers, etc.) :

set POCBIT_EXEC_SHORTCODE=[your_shortcode_here]
python poc.py -u https://target.example

Ou : python poc.py -u URL --exec-shortcode "[shortcode]"

La sonde par défaut utilise le shortcode du cœur WordPress [caption]POCBIT-92966-OK[/caption] (aucune extension supplémentaire requise pour prouver l'exécution).

Laboratoire local

python poc.py --lab

Se lie à 127.0.0.1:8797, simule le readme 5.7.0, la réservation de plante et le double do_shortcode sur le HTML du tableau de bord. Attendez-vous à "exploited": true.


Notes sur le scan de masse

StatutSignification
affectedVersion ≤ 5.7.0 (mode vérification)
exploitedMarqueur après l'assistant de réservation + page Espace client connecté
plant_no_auth_cookieNom planté mais aucun cookie de connexion client/WP depuis admin-ajax
plant_missing_service_idL'assistant de réservation n'a aucun service public à sélectionner
plant_otp_required / plant_auth_blockedÉtape client bloquée par OTP ou politique de connexion
no_customer_cabinet_pageSession OK mais aucune page [latepoint_customer_dashboard] trouvée
shortcode_not_triggeredPlant + session OK ; espace client chargé mais marqueur non exécuté
patched_skip≥ 5.7.1
no_latepointExtension non détectée

Exemples FOFA / recherche :

body="/wp-content/plugins/latepoint/"
body="latepoint-book-form"
body="latepoint_helper"

Le taux de réussite de l'exploit dépend de : l'assistant de réservation accessible sans paiement, le bloc Customer Cabinet publié, la session invité après réservation.


Atténuation

  1. Mettre à jour LatePoint vers ≥ 5.7.1 immédiatement.
  2. Supprimer ou restreindre la réservation publique si elle n'est pas nécessaire.
  3. Règle WAF : bloquer [ dans customer[first_name] / last_name sur latepoint_route_call — temporaire uniquement.
  4. Auditer les enregistrements clients pour détecter les caractères crochets dans les noms.

Mentions légales

Tests autorisés uniquement.


Télécharger l’outil