CVE-2019-20360

GiveWP <= 2.5.4 - Authorization Bypass

2019-09-26 00:00
Matt Barry

Strategic Overview

Status
Patched in 2.5.5
Affected Version
<= 2.5.4
CVSS
7.5High
Weakness type
CWE-285 · Improper Authorization
CVE
CVE-2019-20360
View all GiveWP – Donation Plugin and Fundraising Platform vulnerabilities

At a glance

CVE-2019-20360 is a high-severity Improper Authorization vulnerability in the GiveWP WordPress plugin, affecting versions <= 2.5.4. It carries a CVSS score of 7.5 (reachable over the network; low attack complexity; high confidentiality impact). Exploitation requires no authentication. The issue is fixed in version 2.5.5; sites on affected versions should update now. Disclosed September 2019, reported by Matt Barry.

Vulnerability Overview

A flaw in Give before 2.5.5, a WordPress plugin, allowed unauthenticated users to bypass API authentication methods and access personally identifiable user information (PII) including names, addresses, IP addresses, and email addresses. Once an API key has been set to any meta key value from the wp_usermeta table, and the token is set to the corresponding MD5 hash of the meta key selected, one can make a request to the restricted endpoints, and thus access sensitive donor data.

Technical Analysis

The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user. A successful exploit has high impact on confidentiality.

CWE-285: Improper Authorization

Reaching this weakness in GiveWP <= 2.5.4 takes a caller who can reach the endpoint. Improper authorization means a permission check exists but does not cover the case being exercised, so a caller who is allowed to do one thing is allowed to do a neighbouring thing as well.

A lower-privileged account performs an action reserved for a higher one, which on a multi-author or membership site means an ordinary user reaching administrative behaviour. For GiveWP the fix is 2.5.5: builds <= 2.5.4 are affected, anything from 2.5.5 onward is not.

Remediation

Update to version 2.5.5, or a newer patched version

How does WordSec protect against this?

Because it turns on account access, WordSec's login security is the relevant layer: role-based two-factor, captcha and brute-force limits raise the cost of getting the account this needs. None of that substitutes for the fix: GiveWP 2.5.5 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C