Description
Configurable Reports block for Moodle (moodle-block_configurablereports) before 5.3.1 contains an sql injection vulnerability in report_sql::prepare_sql() via the filter_var request parameter of viewreport.php. Low-privileged users permitted to view reports using the %%FILTER_VAR%% placeholder can inject subqueries or UNION SELECT to read arbitrary database tables, including user password hashes.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| jleyva | moodle-block_configurablereports | < 5.3.1 | 5.3.1 |
References
- https://github.com/jleyva/moodle-block_configurablereports/commit/1a9fea4b98b093912c6432ea3705c7b1eff4efc0 patch
- https://github.com/jleyva/moodle-block_configurablereports/commit/8696899740577559efa274b7a40f3bb4f2b30f32 patch
- moodle-block_configurablereports 5.3.1 Release Notes release-notes
- https://github.com/jleyva/moodle-block_configurablereports/blob/5.2.0/reports/sql/report.class.php#L89-L95 technical-description
- https://github.com/jleyva/moodle-block_configurablereports/blob/5.3.0/reports/sql/report.class.php#L108-L128 technical-description
- VulnCheck Advisory: Configurable Reports block for Moodle before 5.3.1 SQL Injection via filter_var third-party-advisory