| Title | https://github.com/jeecgboot/JeecgBoot <=3.91 SQL Injection |
|---|
| Description | The dictionary query endpoint /sys/api/queryFilterTableDictInfo in JeecgBoot contains a SQL injection vulnerability caused by two compounding security flaws:
Signature Bypass: The endpoint enforces signature verification (@SignatureCheck), but due to differences in JSON serialization behavior between Java (fastjson) and other languages (e.g. Python), an attacker can reproduce a valid signature by sorting parameters alphabetically, effectively bypassing the signature check.
Blacklist Bypass: After passing signature verification, the filterSql parameter is checked by SqlInjectionUtil.specialFilterContentForDictSql. However, the blacklist only matches keywords followed by a space (e.g. select ). Using select( without a space bypasses the check entirely. |
|---|
| Source | ⚠️ https://github.com/nn0nkey/JD-Security-SHENYI-Team/blob/main/JeecgBoot_SQL_Injection_Signature_Blacklist_Bypass.md |
|---|
| User | JD Security SHENYI Team (UID 97436) |
|---|
| Submission | 04/17/2026 09:39 (3 months ago) |
|---|
| Moderation | 05/09/2026 08:59 (22 days later) |
|---|
| Status | Duplicate |
|---|
| VulDB entry | 231896 [JeecgBoot up to 3.5.1 queryFilterTableDictInfo sql injection] |
|---|
| Points | 0 |
|---|