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-78006-POC — POC pour CVE-2026-78006 The Events Calendar <= 6.17.4 - Injection d'objet PHP non authentifiée menant à l'exécution de code à distance | Kitploit
Outils/GitHubGitHub/deadexpl0it/cve-2026-78006-poc
Outils DéfensifsMécanismes de PersistanceAnalyse des VulnérabilitésExploitationExploitation d'Applications WebPost-ExploitationSécurité WebTests d'IntrusionDéveloppement de Charges UtilesCheval de Troie d'Accès à Distance
42138il y a 20 joursPas encore vérifié
GitHub
deadexpl0it/cve-2026-78006-poc

CVE-2026-78006-POC

POC pour CVE-2026-78006 The Events Calendar <= 6.17.4 - Injection d'objet PHP non authentifiée menant à l'exécution de code à distance

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-78006-POC

POC pour CVE-2026-78006 The Events Calendar <= 6.17.4 - Injection d'objet PHP non authentifiée menant à l'exécution de code à distance

#CONTACT telegram pour toute demande : @soldout0O

💙 Soutenir le projet

Si vous appréciez mon travail, envisagez de soutenir le projet via USDT (TRC20) : TQBA72kakjCZLnJt8fJYcD7dyQCEpzNtVN

The Events Calendar — Injection d'objet PHP non authentifiée menant à une RCE

PoC de recherche en sécurité

The Events Calendar pour WordPress contient une vulnérabilité d'injection d'objet PHP non authentifiée qui peut être chaînée à une exécution de code à distance.

Le chemin de code vulnérable implique :

  • is_safe_widget_instance()
  • enable_rendering_widget_copied()
  • La gestion des méthodes magiques PHP lors de la désérialisation d'objets
  • unserialize()
  • Le template V2 d'événement unique
  • do_blocks()
  • La fonctionnalité de hachage de modération des commentaires de WordPress

Dans les conditions documentées, un attaquant non authentifié peut transmettre un balisage de bloc spécialement conçu via un commentaire d'événement et atteindre le chemin de désérialisation vulnérable avant que la modération des commentaires ne se produise.


Résumé de la vulnérabilité

La vulnérabilité existe parce que la protection du plugin autour des instances de widget est insuffisante.

Le flux vulnérable peut être résumé comme suit :```text Unauthenticated Comment | v Pending Event Comment | v WordPress Moderation-Hash URL | v Unauthenticated Author Can View Own Pending Comment | v V2 Single-Event Template | v do_blocks() | v Injected Block Markup | v enable_rendering_widget_copied() | v Forged Integrity Attribute | v is_safe_widget_instance() | v PHP Magic Methods / Object Deserialization | v unserialize() | v PHP Object Injection | v Remote Code Execution

---

# Extension affectée

**Extension :** The Events Calendar

**Vulnérabilité :** Injection d'objet PHP non authentifiée menant à
l'exécution de code à distance

**Versions affectées :** Toutes les versions jusqu'à **6.17.4** inclus,
selon l'avis Wordfence.

> [!IMPORTANT]
> Le PoC de recherche actuellement publié avec ce dépôt s'identifie
> en interne comme ciblant `<= 6.17.2`.
>
> La plage de versions indiquée ci-dessus suit l'avis Wordfence
> (`<= 6.17.4`). Vérifiez toujours la version exacte vulnérable/corrigée par
> rapport à l'avis du fournisseur avant de tester un déploiement.

---

# Cause racine

Le comportement vulnérable est associé à l'interaction entre la
vérification de sécurité du widget et le comportement de désérialisation
d'objet de PHP.

Les fonctions clés impliquées sont :```text
is_safe_widget_instance()
enable_rendering_widget_copied()

Le contrôle de sécurité est insuffisant car PHP peut invoquer des méthodes magiques lors de son comportement d'analyse/désérialisation avant que la validation de sécurité prévue n'apporte une protection efficace.

La chaîne repose également sur le fait que le plugin génère une valeur d'intégrité valide pour l'instance de widget fournie.


Pourquoi l'authentification n'est pas requise

L'une des caractéristiques les plus importantes de cette vulnérabilité est que l'attaquant n'a pas besoin d'un compte WordPress existant.

Le chemin d'attaque exploite la manière dont WordPress expose le commentaire en attente d'un utilisateur via une URL de hachage de modération.

Les conditions pertinentes sont :```text Comments enabled + Comments visible on events + Attacker can submit an event comment + V2 single-event template active

Après avoir soumis un commentaire, WordPress peut fournir une URL
moderation-hash non authentifiée qui permet au commentateur de consulter son
propre commentaire en attente.

Cela crée un mécanisme de livraison non authentifié pour le balisage de bloc
fabriqué.

---

# Explication technique

## 1. Soumission du commentaire

L'attaquant soumet un commentaire associé à un événement.

Le commentaire n'a pas besoin d'être approuvé.

La propriété importante est que WordPress peut exposer le commentaire via
le mécanisme moderation-hash.

---

## 2. Accès par moderation-hash

WordPress fournit au commentateur une URL qui lui permet de
consulter son propre commentaire en attente.

Cela signifie que l'attaquant peut atteindre le chemin de rendu vulnérable sans
attendre la modération.

Conceptuellement :```text
POST Comment
     |
     v
Pending Comment
     |
     v
Moderation Hash
     |
     v
Unauthenticated Access

3. Rendu des événements

Le modèle d'événement unique V2 de The Events Calendar traite le contenu de l'événement et le HTML lié aux commentaires.

Le chemin de traitement WordPress pertinent atteint finalement :```text do_blocks()

C'est important car le balisage de bloc intégré dans le contenu rendu
est interprété comme des données de bloc WordPress.

---

## 4. Données de bloc forgées

Le PoC construit un bloc de widget hérité contenant une instance de widget
sérialisée.

L'implémentation de recherche construit le bloc en utilisant une instance
sérialisée encodée et un attribut d'intégrité.

Le chemin vulnérable traite finalement ces données comme une instance de widget.

---

## 5. Contournement de l'intégrité

Le comportement `enable_rendering_widget_copied()` du plugin peut être abusé
pour produire un attribut d'intégrité valide pour les données de widget
contrôlées par l'attaquant.

Cela permet à l'instance de widget malveillante de passer la vérification
d'intégrité attendue et d'atteindre le chemin de traitement vulnérable.

---

## 6. Gestion non sécurisée des objets

La protection vulnérable `is_safe_widget_instance()` est insuffisante
contre l'objet fourni via l'instance de widget forgée.

Le comportement de gestion des objets de PHP peut invoquer des méthodes
magiques pendant le processus de désérialisation.

Le résultat est une primitive d'injection d'objet PHP exploitable.

---

## 7. Chaîne de gadgets

Le PoC de recherche construit des structures d'objets WordPress / The Events Calendar
qui fournissent un comportement appelable pendant la désérialisation.

Le PoC utilise des objets orientés callback et des structures de classes sérialisées
pour construire la charge utile de recherche.

---

## 8. Exécution de code

L'impact final est l'exécution de code à distance.

Le PoC contient une étape de webshell de recherche et une logique de création
d'administrateur.

Pour une vérification sécurisée de la vulnérabilité, la frontière de sécurité
importante est déjà démontrée par l'exécution réussie de la chaîne de
désérialisation vulnérable.

---

# Pourquoi la vulnérabilité est critique

La combinaison de :```text
Unauthenticated
       +
Remote
       +
PHP Object Injection
       +
RCE

crée un chemin d'attaque à fort impact.

Un attaquant n'a pas besoin de :

  • Un compte administrateur
  • Un mot de passe WordPress valide
  • De casser des mots de passe
  • D'identifiants privilégiés existants

Le principal prérequis environnemental est que le chemin de rendu vulnérable des événements/commentaires soit accessible.


PoC de recherche

Le dépôt contient une implémentation de recherche en Python.

Le PoC téléversé est un exécuteur asynchrone autour de la logique de recherche originale.

Il utilise :```text Python aiohttp rich

L'implémentation exécute la chaîne de vulnérabilités via une livraison et une vérification de charge utile par étapes.

La source du PoC décrit son architecture comme suit :```text
payload building
        |
        v
stage 1
        |
        v
verification
        |
        v
stage 2

Capacités du PoC

L'implémentation de recherche inclut des fonctionnalités pour :

Télécharger l’outil