| शीर्षक | xianrendzw EasyReport <=2.0.17.0522_Beta remote code execution |
|---|
| विवरण | QueryerFactory.create resolves the report queryer implementation by calling Class.forName(dataSource.getQueryerClass()) with no allowlist. An authenticated user with the report.ds:add permission can persist a datasource whose queryerClass is an arbitrary fully-qualified class name. Any subsequent operation that loads that datasource then executes Class.forName, which (with the default initialize=true) runs the named class's static initializer — code execution under the JVM. Five distinct trigger paths reach the same sink. All routes require Shiro authentication.
|
|---|
| स्रोत | ⚠️ https://github.com/xianrendzw/EasyReport/issues/83 |
|---|
| उपयोगकर्ता | Ana10gy (UID 93358) |
|---|
| सबमिशन | 02/07/2026 11:39 AM (2 महीनों पहले) |
|---|
| संयम | 18/08/2026 08:15 PM (2 months later) |
|---|
| स्थिति | स्वीकृत |
|---|
| VulDB प्रविष्टि | 391893 [xianrendzw EasyReport तक 2.0.17.0522_Beta QueryerFactory DataSourceController.java DataSourceController.add queryerClass अधिकार वृद्धि] |
|---|
| अंक | 20 |
|---|