Sicherheit: Offene Redirects via REQUEST_URI fixen #43

Closed
opened 2026-05-19 15:42:56 +02:00 by greggy · 1 comment
Owner

Schwachstelle #3 – Offene Redirects via $_SERVER["REQUEST_URI"]

header("Location: " . $_SERVER["REQUEST_URI"] . "#form-result");

REQUEST_URI wird vom Client kontrolliert. In den meisten Konfigurationen sicher, aber in Edge-Cases (Proxy-Setups) könnte das umgeleitet werden.

Empfehlung

Statt REQUEST_URI einen festen Pfad verwenden:

header("Location: /index.php#form-result");

Priorität

🟠 Mittel

## Schwachstelle #3 – Offene Redirects via `$_SERVER["REQUEST_URI"]` ```php header("Location: " . $_SERVER["REQUEST_URI"] . "#form-result"); ``` `REQUEST_URI` wird vom Client kontrolliert. In den meisten Konfigurationen sicher, aber in Edge-Cases (Proxy-Setups) könnte das umgeleitet werden. ### Empfehlung Statt `REQUEST_URI` einen festen Pfad verwenden: ```php header("Location: /index.php#form-result"); ``` ### Priorität 🟠 Mittel
greggy added the
KI
label 2026-05-19 15:42:56 +02:00
greggy added the
KI
label 2026-05-22 01:03:20 +02:00
Author
Owner

Phase 1: Analyse abgeschlossen

Komplexität: S (Small)

Spezifikation

Alle 3 Vorkommen von $_SERVER["REQUEST_URI"] in HomeController ersetzen durch festen Pfad:

header("Location: /#form-result");

Sicher, da Kontaktformular nur auf der Startseite existiert.

Akzeptanzkriterien

  • Kein $_SERVER["REQUEST_URI"] mehr in Redirects
  • Redirect korrekt zur Startseite + #form-result
  • PRG-Pattern funktioniert weiterhin

Status: ReadyForDev → Weiter zu Phase 2 (Implementierung)

## Phase 1: Analyse abgeschlossen ✅ **Komplexität: S (Small)** ### Spezifikation Alle 3 Vorkommen von `$_SERVER["REQUEST_URI"]` in HomeController ersetzen durch festen Pfad: ```php header("Location: /#form-result"); ``` Sicher, da Kontaktformular nur auf der Startseite existiert. ### Akzeptanzkriterien - [ ] Kein `$_SERVER["REQUEST_URI"]` mehr in Redirects - [ ] Redirect korrekt zur Startseite + #form-result - [ ] PRG-Pattern funktioniert weiterhin **Status: ReadyForDev** → Weiter zu Phase 2 (Implementierung)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: greggy/landingpage-haus-schleusingen#43
No description provided.