| Title | xianrendzw EasyReport <=2.0.17.0522_Beta SQL Injection |
|---|
| Description | In EasyReport, the module and category "move" operations build an UPDATE ... SET path = replace(path, '${oldPath}', '${newPath}') ... statement using raw ${} MyBatis interpolation of oldPath/newPath. The sourcePath request parameter flows unvalidated into ${oldPath} and is concatenated inside SQL string literals, so a quote-breakout value yields SQL injection. The shipped datasource configuration sets allowMultiQueries=true, which makes the injection stacked-query capable. Two sibling sites are affected (membership module and report category), and both require Shiro authentication. |
|---|
| Source | ⚠️ https://github.com/xianrendzw/EasyReport/issues/84 |
|---|
| User | Ana10gy (UID 93358) |
|---|
| Submission | 07/02/2026 11:37 (2 months ago) |
|---|
| Moderation | 08/18/2026 14:32 (2 months later) |
|---|
| Status | Accepted |
|---|
| VulDB entry | 391569 [xianrendzw EasyReport up to 2.0.17.0522_Beta Move Operations ModuleController.java sourcePath sql injection] |
|---|
| Points | 20 |
|---|