| 제목 | JEECG JeecgBoot v3.9.1 SQL Injection |
|---|
| 설명 | JEECG Boot contains an authenticated blind SQL injection vulnerability in /sys/dict/loadDict/{dictCode}. In the audited 3.9.1 source snapshot, the application concatenates the untrusted keyword parameter directly into a SQL LIKE condition inside SysDictServiceImpl.getFilterSql and renders the resulting filter through a MyBatis ${filterSql} fragment. The dictionary-specific blacklist does not block single quotes, boolean operators, or substring(), allowing a low-privileged authenticated user to infer sensitive non-whitelisted columns such as password and salt from sys_user. The issue is practically exploitable in default deployments because the request-signing secret is hardcoded in the codebase and configuration. |
|---|
| 원천 | ⚠️ https://github.com/jeecgboot/JeecgBoot/issues/9491 |
|---|
| 사용자 | larlarua (UID 97278) |
|---|
| 제출 | 2026. 04. 12. AM 11:17 (2 개월 ago) |
|---|
| 모더레이션 | 2026. 04. 28. AM 11:48 (16 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 359948 [JeecgBoot 까지 3.9.1 loadDict Endpoint SqlInjectionUtil.java SqlInjectionUtil keyword SQL 주입] |
|---|
| 포인트들 | 20 |
|---|