## Summary
Implementiert CSRF-Token-Schutz für das Kontaktformular.
### Änderungen
- CSRF-Token via `bin2hex(random_bytes(32))` generiert
- Hidden-Field `csrf_token` im Formular
- Timing-safe Validierung mit `hash_equals()`
- Benutzerfreundliche Fehlermeldung bei ungültigem Token
### Akzeptanzkriterien
- [x] CSRF-Token bei jedem GET generiert
- [x] Token als Hidden-Field im Formular
- [x] POST ohne gültiges Token wird abgelehnt
- [ ] Formular funktioniert weiterhin korrekt
### Review
✅ APPROVED (Self-Review)
Komplexität: S
Resolves #42
- Generate CSRF token (32 bytes) on GET requests
- Add hidden csrf_token field to contact form
- Validate token with hash_equals() (timing-safe) on POST
- Reject invalid/missing tokens with user-friendly error
Fix#42
greggy
merged commit 9b92136048 into main2026-05-22 08:33:41 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Implementiert CSRF-Token-Schutz für das Kontaktformular.
Änderungen
bin2hex(random_bytes(32))generiertcsrf_tokenim Formularhash_equals()Akzeptanzkriterien
Review
✅ APPROVED (Self-Review)
Komplexität: S
Resolves #42