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-2024-31218-WEBHOOD-LAB — Labo basé sur Docker reproduisant CVE-2024-31218, une faille de création d'administrateur PocketBase non authentifiée dans Webhood, avec PoC, détection et vérification de la remédiation. | Kitploit
Outils/GitHubGitHub/chandrimanath04-hue/cve-2024-31218-webhood-lab
Analyse des VulnérabilitésExploitationSécurité WebTests d'IntrusionAuthentificationApprentissage et ÉducationLabs et Pratique
GitHubchandrimanath04-hue/cve-2024-31218-webhood-lab

CVE-2024-31218-WEBHOOD-LAB

Labo basé sur Docker reproduisant CVE-2024-31218, une faille de création d'administrateur PocketBase non authentifiée dans Webhood, avec PoC, détection et vérification de la remédiation.

Voir le dépôt
2il y a 1 jourPas 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-2024-31218 — Webhood / PocketBase Laboratoire de contournement d'authentification

Aperçu

Ce projet est un laboratoire contrôlé de recherche en sécurité et de reproduction de vulnérabilité pour CVE-2024-31218, une vulnérabilité d'authentification critique affectant les versions de Webhood antérieures à 0.9.1.

La vulnérabilité est liée à la création non authentifiée d'un compte administrateur PocketBase lorsqu'aucun compte administrateur n'existe. Un attaquant capable d'atteindre l'API affectée peut être en mesure de créer un compte administratif sans authentification préalable.

L'objectif de ce laboratoire est de :

  • Rechercher CVE-2024-31218
  • Comprendre sa cause racine et sa surface d'attaque
  • Reproduire la vulnérabilité dans un environnement isolé
  • Démontrer la détection du comportement vulnérable
  • Documenter les configurations vulnérables et corrigées
  • Expliquer la remédiation et la vérification
  • Fournir des artefacts de laboratoire reproductibles basés sur Docker

Sécurité : Ce projet est destiné uniquement à un environnement de laboratoire local isolé. L'application vulnérable ne doit jamais être exposée à l'Internet public ni utilisée contre des systèmes sans autorisation.


1. Informations sur la vulnérabilité

ChampDétails
CVECVE-2024-31218
ProjetWebhood
Versions affectéesWebhood <= 0.9.0
Version corrigéeWebhood 0.9.1
SévéritéCritique
CVSS v3.19.8
CWECWE-306 — Authentification manquante pour une fonction critique
Vecteur d'attaqueRéseau
Complexité de l'attaqueFaible
Privilèges requisAucun
Interaction utilisateurAucune
ConfidentialitéÉlevée
IntégritéÉlevée
DisponibilitéÉlevée

Vecteur CVSS

root@kitploit:~
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
2. Description de la vulnérabilité

CVE-2024-31218 est causée par une protection d'authentification insuffisante autour de la création d'administrateur dans l'application Webhood/PocketBase affectée.

Lorsque l'application n'a aucun compte administrateur configuré, la fonctionnalité de création d'administrateur peut être atteinte sans authentification.

Un attaquant capable d'atteindre l'API affectée peut donc tenter de créer le premier compte administrateur.

Une exploitation réussie peut entraîner un accès administratif à l'application.

La vulnérabilité est classée comme :

CWE-306 : Authentification manquante pour une fonction critique
3. Versions affectées et corrigées

La plage vulnérable est :

Webhood <= 0.9.0

La vulnérabilité a été corrigée dans :

Webhood 0.9.1

La version corrigée doit donc être utilisée pour la vérification de la remédiation.

4. Surface d'attaque

La surface d'attaque pertinente est l'API administrative PocketBase.

La fonctionnalité vulnérable concerne la création de compte administrateur.

Conceptuellement, le flux d'attaque est :

Attaquant
   |
   | Requête HTTP
   v
API Webhood / PocketBase
   |
   | Point de terminaison de création d'administrateur
   v
Création de compte admin
   |
   v
Accès administratif non autorisé

L'attaque ne nécessite pas de session authentifiée existante lorsque la condition vulnérable d'administrateur initial est présente.

5. Cause racine

La cause racine est une défaillance du contrôle d'authentification.

La fonctionnalité de création d'administrateur ne restreignait pas suffisamment l'accès lorsqu'aucun compte administrateur n'existait.

La frontière de sécurité devrait garantir que les fonctionnalités administratives privilégiées ne peuvent pas être abusées par un client distant non authentifié.

Le comportement vulnérable représente donc une vérification d'authentification manquante autour d'une opération sensible en matière de sécurité.

6. Architecture du laboratoire contrôlé

Le laboratoire reproduit le comportement de l'API administrative PocketBase
sous-jacent à CVE-2024-31218.

L'environnement Docker utilise directement le composant PocketBase plutôt que
de prétendre empaqueter l'application Webhood 0.9.0 complète.

L'architecture du laboratoire est :

+-------------------------+
|    Machine hôte         |
|                         |
|  PowerShell / Python    |
+------------+------------+
             |
             | 127.0.0.1:8090
             v
+-------------------------+
|   Conteneur Docker      |
|                         |
|  +-------------------+  |
|  |    PocketBase     |  |
|  | API administrative|  |
|  +-------------------+  |
|                         |
+-------------------------+

Le service est lié uniquement à localhost et n'est pas destiné à être exposé
à l'Internet public.

Tous les identifiants utilisés lors de la reproduction sont des identifiants de laboratoire synthétiques.

7. Structure du dépôt
CVE-2024-31218-WEBHOOD-LAB/
│
├── README.md
│
├── vulnerable/
│   ├── Dockerfile
│   └── docker-compose.yml
│
├── exploit/
│   └── reproduce.py
│
├── detection/
│   └── detect.py
│
├── patched/
│   └── README.md
│
├── evidence/
│   └── README.md
│
└── blog/
    └── CVE-2024-31218-Technical-Blog.pdf

8. Environnement vulnérable

L'environnement vulnérable est conçu pour reproduire le comportement de l'API
administrative PocketBase associé à CVE-2024-31218 dans un conteneur Docker
isolé.

Le laboratoire utilise directement PocketBase comme composant affecté plutôt
que de prétendre reproduire l'application Webhood 0.9.0 complète.

La configuration Docker va :

- Construire l'environnement de laboratoire.
- Démarrer PocketBase localement.
- Lier le service à localhost.
- Maintenir le service isolé des systèmes externes.
- Fournir un environnement reproductible pour les tests.
- Permettre au script de reproduction d'interagir avec l'API administrative.

Le laboratoire actuel utilise un compte administrateur synthétique et ne
contient pas de données utilisateur ni d'identifiants réels.

9. Méthodologie de reproduction

La procédure de reproduction est conçue uniquement pour le laboratoire local.

Étape 1 — Démarrer le conteneur vulnérable
docker compose up --build
Étape 2 — Vérifier le service

Confirmer que le service PocketBase utilisé pour le laboratoire au niveau du composant répond localement.

Étape 3 — Exécuter le script de reproduction contrôlé

Le script de reproduction enverra la requête pertinente à l'instance vulnérable locale.

Exemple :

python exploit/reproduce.py
Étape 4 — Observer la réponse

La réponse devrait démontrer si l'application accepte la requête de création d'administrateur non authentifiée.

Étape 5 — Vérifier l'état résultant

Le laboratoire devrait vérifier si un compte administrateur a été créé.

Aucune cible externe ne doit jamais être utilisée.

10. Détection

La détection devrait identifier les indicateurs associés aux tentatives de création d'administrateur non autorisées.

Les indicateurs potentiels incluent :

Requêtes vers la fonctionnalité de création d'administrateur
Requêtes non authentifiées vers des points de terminaison administratifs
Création inattendue d'un premier compte administrateur
Requêtes HTTP provenant d'un client inattendu
Tentatives répétées de création d'administrateur
Création de compte administratif immédiatement après l'initialisation de l'application

Le script de détection se trouve dans :

detection/detect.py

11. Remédiation

La remédiation principale consiste à mettre à niveau Webhood vers la version corrigée :

Webhood 0.9.1

La version vulnérable ne doit pas être utilisée en production.

Un contournement documenté consiste à restreindre l'accès à la fonctionnalité d'API administrateur affectée lorsqu'une mise à niveau ne peut pas être effectuée immédiatement.

Après la remédiation :

Arrêter le conteneur vulnérable.
Remplacer la version vulnérable par la version corrigée.
Reconstruire le conteneur.
Démarrer l'environnement corrigé.
Répéter la tentative de reproduction.
Confirmer que le comportement vulnérable n'est plus possible.
Examiner les journaux de l'application pour détecter des requêtes administratives inattendues.

12. Remédiation et vérification

Le correctif officiel de Webhood pour CVE-2024-31218 a été vérifié à l'aide de la version source réelle de Webhood `v0.9.1`.

Le commit de correction est :

`735e7fa2814edeec9a2c07778ed51b3c018609f9`

Le correctif ajoute la migration :

`src/backend/migrations/1712252550_generate_random_admin.js`

La migration vérifie si un administrateur existe déjà. Si aucun administrateur n'existe, elle crée un compte administrateur avec un mot de passe généré aléatoirement. Cela empêche un demandeur non authentifié de revendiquer le premier administrateur via le point de terminaison `/api/admins` exposé.

#### Procédure de vérification

1. Le tag source officiel Webhood `v0.9.1` a été extrait.
2. Le backend a été construit localement à partir de la source officielle en utilisant son Dockerfile.
3. L'image résultante a été exécutée sur localhost au port `8091`.
4. La même requête de création d'administrateur non authentifiée utilisée contre le laboratoire vulnérable a été rejouée contre le backend corrigé.
5. L'environnement vulnérable acceptait auparavant la requête avec HTTP `200`.
6. Le backend corrigé `v0.9.1` a rejeté la même requête avec HTTP `401`.

Réponse observée de l'environnement corrigé :

```text
HTTP status: 401
{"code":401,"message":"The request requires valid admin authorization token to be set.","data":{}}

Cela confirme que le chemin d'attaque de création d'administrateur non authentifié précédemment démontré a été bloqué dans le backend Webhood v0.9.1 construit localement.

REMEDIATION VERIFIED: YES

Preuve :

evidence/05-remediation-verified.png

13. Impact de sécurité

Une exploitation réussie peut fournir des privilèges administratifs à une partie non autorisée.

Les conséquences potentielles incluent :

Accès administratif non autorisé
Modification des données de l'application
Exposition des informations de l'application
Modification ou suppression d'enregistrements
Abus administratif supplémentaire de l'application

La sévérité est donc classée comme Critique selon l'évaluation CVSS publiée.

14. Preuves

Le répertoire evidence/ est destiné à contenir des captures d'écran démontrant :

Démarrage de l'application vulnérable
Statut du conteneur Docker
Version vulnérable
Requête de reproduction
Comportement vulnérable réussi
Sortie de détection
Version corrigée
Reproduction échouée/bloquée après remédiation

Les captures d'écran ne doivent pas contenir d'identifiants réels, d'informations personnelles, de clés API ou d'autres données sensibles.

15. Limitations

Lors de la préparation de ce laboratoire, l'environnement Windows local a rencontré des problèmes pour démarrer le backend Docker Linux.

Windows a renvoyé :

Error: 14098
The component store has been corrupted.

Les fonctionnalités Windows requises étaient également initialement désactivées :

VirtualMachinePlatform
Microsoft-Windows-Subsystem-Linux

Par conséquent, tout résultat de reproduction ou capture d'écran doit distinguer avec précision entre :

Recherche de vulnérabilité
Configuration du laboratoire
Procédure de reproduction prévue
Reproduction exécutée avec succès

Aucune exécution d'exploit réussie ne doit être revendiquée à moins qu'elle n'ait réellement été effectuée dans le laboratoire isolé.

16. Considérations de sécurité

Ce projet est destiné uniquement à la recherche en sécurité autorisée.

Le laboratoire devrait :

S'exécuter localement.
Éviter l'exposition publique.
Éviter les identifiants réels.
Éviter les données utilisateur réelles.
Éviter les tests contre des systèmes tiers.
Utiliser des comptes de test jetables.
Utiliser un réseau Docker isolé.
Détruire l'environnement vulnérable après les tests.

Exemple de nettoyage :

docker compose down
17. Références
National Vulnerability Database — CVE-2024-31218
Avis de sécurité Webhood
Dépôt source Webhood/PocketBase
Commit de correction associé à CVE-2024-31218
CWE-306 — Authentification manquante pour une fonction critique
Spécification FIRST CVSS v3.1
18. Avertissement

Ce dépôt est un projet d'éducation en cybersécurité et de recherche sur les vulnérabilités.

La configuration vulnérable est intentionnellement reproduite pour des tests contrôlés. Elle ne doit pas être déployée en tant que service accessible publiquement.

L'auteur n'assume aucune responsabilité pour l'utilisation non autorisée des techniques ou des artefacts contenus dans ce dépôt.
Télécharger l’outil