Cross-Site Request Forgery
Cross-Site Request Forgery
Cross-Site Request Forgery, o CSRF, inganna un browser autenticato nell'inviare un'azione che la persona non ha scelto. Il sito di destinazione si fida dei cookie o di altre credenziali che il browser aggiunge automaticamente.
Un altro esempio
Un amministratore paghe connesso visita una pagina dannosa che tenta di `POST` una modifica del conto bancario. L'app richiede un token CSRF di sessione, controlla l'`Origin` e utilizza cookie `SameSite`. Chiede inoltre all'amministratore di accedere nuovamente. Un link `GET` non può modificare le paghe.
Parti principali
- 01Sessione autenticata ambientale
- 02Richiesta forgiata cross-site
- 03Validazione anti-CSRF lato server
Usalo quando
Proteggi ogni richiesta del browser che modifica i dati. Questo include le richieste che inviano credenziali salvate da sole. Usa token e controlli di origine appropriati.
Non usarlo quando
`POST` da solo non è protezione, e CORS non è una difesa completa contro CSRF. Non mettere mai un token CSRF in un URL o in un posto leggibile da un altro sito.
Nome usato nel codice
synchronizer/double-submit token + Origin/Fetch Metadata checks + SameSite + reauthentication Prima di spedire
Work only within an explicitly authorized and isolated defense test. Check the trust boundary, inert regression case, mitigation, and handling of secrets and personal data. Check redacted detection signals, safe failure, incident owner, recovery, and rollback. Never test a real target.
Outcome: Complete the task with Cross-Site Request Forgery (Cross-Site Request Forgery). User context: Un amministratore paghe connesso visita una pagina dannosa che tenta di `POST` una modifica del conto bancario. L'app richiede un token CSRF di sessione, controlla l'`Origin` e utilizza cookie `SameSite`. Chiede inoltre all'amministratore di accedere nuovamente. Un link `GET` non può modificare le paghe. Risk or control to address: Cross-Site Request Forgery (Cross-Site Request Forgery). Why it applies: Proteggi ogni richiesta del browser che modifica i dati. Questo include le richieste che inviano credenziali salvate da sole. Usa token e controlli di origine appropriati. Classification boundary: `POST` da solo non è protezione, e CORS non è una difesa completa contro CSRF. Non mettere mai un token CSRF in un URL o in un posto leggibile da un altro sito. Safety requirements: Test only in an isolated space with explicit permission. Use inert, harmless inputs. Protect secrets and personal data. Name the trust boundary and record the mitigation. Operational safeguards: Set up detection and logs that hide sensitive data. Name the incident owner. Define a safe failure mode and rollback before release. Acceptance criteria: A defensive regression test fails before the mitigation and passes after it. No real target, secret, or personal data is used. Monitoring and rollback are verified. Evidence and limits (evidence boundary): È ufficiale per quella fonte. Altre piattaforme o team potrebbero usare il termine in modo diverso. Unknowns to confirm: Authorized scope, affected assets, data class, threat actor, incident owner, and rollback limits.
Controlla questa richiesta
Review how Cross-Site Request Forgery (Cross-Site Request Forgery) is used now. Definition: Cross-Site Request Forgery, o CSRF, inganna un browser autenticato nell'inviare un'azione che la persona non ha scelto. Il sito di destinazione si fida dei cookie o di altre credenziali che il browser aggiunge automaticamente. Release checks: Work only within an explicitly authorized and isolated defense test. Check the trust boundary, inert regression case, mitigation, and handling of secrets and personal data. Check redacted detection signals, safe failure, incident owner, recovery, and rollback. Never test a real target. Before changing code, list the evidence, gaps, severity, and the smallest safe fix.