scripts loader (denial of service) vulnerability
Low
M
MariaDB
Submitted None
Actions:
Reported by
badisman
Vulnerability Details
Technical details and impact analysis
1) vulnerability description
WordPress allows users to load multiple JS files and CSS files through load-scripts.php files at once. For example, https://wpwebsite.com/wp-admin/load-scripts.php?c=1&load[]=jquery-ui-core,editor&ver=4.9.1, file load-scripts.php will load jquery-ui-core and editor files automatically and return the contents of the file.
However, the number and size of files are not restricted in the process of loading JS files, attackers can use this function to deplete server resources and launch denial of service attacks.
(check references for more details about the vulnerability)
2) attack details
*affected link : https://mariadb.org/wp-admin/load-scripts.php
*proof of concept ( description );
the load-scripts.php file was receiving a parameter called load[]. This parameter is an array that was receiving the names of the JS files that needed to be loaded. In this case, it was receiving jQuery UI Core, which is the name of one of the Javascript files used by the WordPress login page. (it can be longer, this is just an example)
As no rate-limiting is setup for this URL - then DoS comes real
*proof of concept ( link ) ; https://mariadb.org/wp-admin/load-scripts.php?c=1&load[]=jquery-ui-core&ver=4.9.1
3) how to fix
The web application firewall will mitigate attacks by adding the following to .htaccess -file:
<Files load-scripts.php>
Order allow, deny
Deny from all
</Files>
4) vulnerability classification:
*owasp 2017 top 10 (A9 Using Components with Known Vulnerabilities )
*CVE( Common Vulnerabilities and Exposures ) : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6389
5) references:
https://blog.threatpress.com/wordpress-vulnerability-dos/
https://baraktawily.blogspot.com/2018/02/how-to-dos-29-of-world-wide-websites.html
## Impact
denial of service
Related CVEs
Associated Common Vulnerabilities and Exposures
CVE-2018-6389
UNKNOWN
In WordPress through 4.9.2, unauthenticated attackers can cause a denial of service (resource consumption) by using the large list of registered .js files (from wp-includes/script-loader.php) to construct a series of requests to load every file many times.
Report Details
Additional information and metadata
State
Closed
Substate
Resolved
Submitted
Weakness
Uncontrolled Resource Consumption