CVE-2018-20985

WP Payeezy Pay < 2.98 - Local File Inclusion

2018-12-07 00:00
Anonymous

Strategic Overview

Status
Patched in 2.98
Affected Plugin
WP Payeezy Pay
Affected Version
< 2.98
CVSS
9.8Critical
Weakness type
CWE-98 · Improper Control of Filename for Include/Require Statement in PHP Program ('PHP Remote File Inclusion')
CVE
CVE-2018-20985
View all WP Payeezy Pay vulnerabilities

At a glance

CVE-2018-20985 is a critical-severity Improper Control of Filename for Include/Require Statement in PHP Program ('PHP Remote File Inclusion') vulnerability in the WP Payeezy Pay WordPress plugin, affecting versions < 2.98. It carries a CVSS score of 9.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires no authentication. The issue is fixed in version 2.98; sites on affected versions should update now. Disclosed December 2018.

Vulnerability Overview

The wp-payeezy-pay plugin before 2.98 for WordPress has local file inclusion in pay.php, donate.php, donate-rec, and pay-rec.

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, integrity, availability — full site compromise territory.

CWE-98: Improper Control of Filename for Include/Require Statement in PHP Program ('PHP Remote File Inclusion')

Reaching this weakness in WP Payeezy Pay < 2.98 takes a caller who can reach the endpoint. PHP file inclusion means a path used by include or require is built from request data, so the file that gets executed is under the caller's influence.

Including an attacker-influenced file executes its contents, which is why this class is routinely chained with an upload or log-poisoning step to reach code execution. For WP Payeezy Pay the fix is 2.98: builds < 2.98 are affected, anything from 2.98 onward is not.

Remediation

Update to version 2.98, or a newer patched version

How does WordSec protect against this?

The attempt arrives as an ordinary request to WP Payeezy Pay: WordSec's web application firewall inspects request payloads before WordPress loads them. Classes like this one can leave something behind, so the staged malware scanner is the second half: it looks for dropped files and modified code rather than for the request that created them. None of that substitutes for the fix: WP Payeezy Pay 2.98 closes this, and updating the plugin is the step that ends it.

  • Firewall
  • Scanner
  • Alerts

External References

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