CVE-2022-45208: Jeecg-boot vulnerable to SQL injection via /sys/user/putRecycleBin
4.3
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.14861%
CWE
Published
11/25/2022
Updated
2/2/2023
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| org.jeecgframework.boot:jeecg-boot-common | maven | < 3.4.4 | 3.4.4 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from unsafe SQL parameter handling in MyBatis XML mappings. The pre-patch versions used dangerous ${userIds} interpolation in SQL IN clauses rather than safe #{} parameterization. The mapper interface methods accepted raw String inputs which were passed to these vulnerable XML mappings. The service layer's String.format() calls created comma-separated quoted values that appeared safe but were still vulnerable due to the underlying ${} interpolation in SQL templates. The commit fixed this by switching to List<String> parameters and using <foreach> with #{} in XML.