WordPress Plugin Vulnerabilities

Custom Field For WP Job Manager < 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

To test, you also need to have WP Job Manager installed.

When adding a new field:

1. In the plugin settings, "Add a New Field" and for the "Field Name" use `" style=animation-name:rotation onanimationstart=alert(/XSS/)//` and save.
2. Edit the field you created and see the XSS.

When editing an existing field:

1. Edit a field
2. For the "Field Name" use `" style=animation-name:rotation onanimationstart=alert(/XSS/)//` and in the "OutPut" field enter `<script>alert(1)</script>`
3. Add a new job and go through the submission process. When previewing, the plugin does not sanitize the "OutPut" string, leading to an XSS.

Affects Plugins

References

Classification

Type
XSS
CWE
CVSS

Miscellaneous

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

Timeline

Publicly Published
2023-07-24 (about 9 months ago)
Added
2023-07-24 (about 9 months ago)
Last Updated
2023-07-24 (about 9 months ago)

Other