Soumettre #877797: xianrendzw EasyReport <=2.0.17.0522_Beta remote code executioninformation

Titrexianrendzw EasyReport <=2.0.17.0522_Beta remote code execution
DescriptionQueryerFactory.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.
La source⚠️ https://github.com/xianrendzw/EasyReport/issues/83
Utilisateur
 Ana10gy (UID 93358)
Soumission02/07/2026 11:39 (il y a 2 mois)
Modérer18/08/2026 20:15 (2 months later)
StatutAccepté
Entrée VulDB391893 [xianrendzw EasyReport jusqu’à 2.0.17.0522_Beta QueryerFactory DataSourceController.java DataSourceController.add queryerClass élévation de privilèges]
Points20

Do you want to use VulDB in your project?

Use the official API to access entries easily!