| 제목 | RuoYi RuoYi-Vue 3.9.2 Cross Site Scripting |
|---|
| 설명 | A stored cross-site scripting vulnerability exists in RuoYi-Vue due to unsafe file upload handling.
The common upload endpoints allow uploading files with .html and .htm extensions. Uploaded files are stored under the application-accessible directory (e.g., /profile/upload/) and are served from the same origin as the application.
Source-level chain:
POST /common/upload
POST /common/uploads
→ FileUploadUtils.upload(...)
→ allowed extensions include .html / .htm
→ file is written under /profile/upload/...
→ file is publicly accessible via /profile/upload/...
→ browser renders attacker-controlled HTML/JavaScript under same origin
Impact:
An authenticated low-privilege user can upload a malicious HTML file and have it executed in the context of the application's origin. This enables stored XSS attacks, including session hijacking, token theft, phishing, or performing actions on behalf of other users depending on cookie and security configuration.
The vulnerability is caused by allowing active content types to be uploaded and served from the same origin without proper restrictions. |
|---|
| 원천 | ⚠️ https://github.com/yangzongzhuan/RuoYi-Vue |
|---|
| 사용자 | feng123123 (UID 95215) |
|---|
| 제출 | 2026. 04. 26. AM 07:39 (1 월 ago) |
|---|
| 모더레이션 | 2026. 05. 23. PM 04:15 (27 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 365338 [yangzongzhuan RuoYi-Vue 까지 3.9.2 Common Upload Endpoint /common/upload FileUploadUtils.upload 권한 상승] |
|---|
| 포인트들 | 20 |
|---|