Auto-commit: 2026-05-22 14:42
This commit is contained in:
36
memory/gitea-specs/issue-43.md
Normal file
36
memory/gitea-specs/issue-43.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# Issue #43 – Offene Redirects via REQUEST_URI fixen
|
||||
|
||||
## Komplexität: S (Small)
|
||||
- `$_SERVER['REQUEST_URI']` durch festen Pfad ersetzen
|
||||
- Geschätzter Aufwand: < 10 Min
|
||||
|
||||
## Analyse
|
||||
HomeController nutzt `$_SERVER['REQUEST_URI']` an 3 Stellen fuer Redirects:
|
||||
1. Nach Honeypot-Fang: `header('Location: ' . $_SERVER['REQUEST_URI'] . '#form-result');`
|
||||
2. Nach erfolgreichem Mail-Versand: `header('Location: ' . $_SERVER['REQUEST_URI'] . '#form-result');`
|
||||
3. Bei Fehlern: `header('Location: ' . $_SERVER['REQUEST_URI'] . '#form-result');`
|
||||
|
||||
Da alle Redirects zur Startseite + Anker fuehren, kann `REQUEST_URI` durch festen Pfad ersetzt werden.
|
||||
|
||||
### Architektur-Entscheidung
|
||||
Alle 3 Vorkommen von `$_SERVER['REQUEST_URI']` ersetzen durch:
|
||||
```php
|
||||
header('Location: /#form-result');
|
||||
```
|
||||
|
||||
Das ist sicher, da das Kontaktformular nur auf der Startseite existiert.
|
||||
|
||||
### Akzeptanzkriterien
|
||||
- [ ] Kein `$_SERVER['REQUEST_URI']` mehr in Redirects
|
||||
- [ ] Redirect fuehrt korrekt zur Startseite mit #form-result Anker
|
||||
- [ ] PRG-Pattern funktioniert weiterhin (Erfolg/Fehler-Nachrichten)
|
||||
|
||||
### Abhängigkeiten
|
||||
Keine. Unabhaengig von anderen Issues.
|
||||
|
||||
### Edge Cases
|
||||
- Falls das Formular spaeter auf anderen Seiten eingebaut wird:.Relative Pfade anpassen. Aktuell nur Startseite.
|
||||
- Query-Parameter gehen verloren – aber das ist ok, da PRG ueber Session arbeitet.
|
||||
|
||||
### Sicherheitsrisiken
|
||||
- Keine. Fester Pfad ist per Definition sicher gegen Open Redirects.
|
||||
Reference in New Issue
Block a user