CVE-2021-24865

Advanced Custom Fields: Extended <= 0.8.8.6 - Admin+ SQL Injection

2021-12-24 00:00
ZhongFu Su

Strategic Overview

Status
Patched in 0.8.8.7
Affected Version
<= 0.8.8.6
CVSS
7.2High
Weakness type
CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
CVE
CVE-2021-24865
View all Advanced Custom Fields: Extended vulnerabilities

At a glance

CVE-2021-24865 is a high-severity Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in the Advanced Custom Fields WordPress plugin, affecting versions <= 0.8.8.6. It carries a CVSS score of 7.2 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). The issue is fixed in version 0.8.8.7; sites on affected versions should update now. Disclosed December 2021, reported by ZhongFu Su.

Vulnerability Overview

The Advanced Custom Fields: Extended WordPress plugin before 0.8.8.7 does not validate the order and orderby parameters before using them in a SQL statement, leading to a SQL Injection issue

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 interaction from a victim user. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.

CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

Reaching this weakness in Advanced Custom Fields <= 0.8.8.6 takes a caller who can reach the endpoint. SQL injection happens when request data is concatenated into a query instead of being bound as a parameter, letting an attacker change the structure of the statement rather than just its values.

A working injection can read any table the database user can see, which on a WordPress install means user records, password hashes and session or API secrets stored in options. For Advanced Custom Fields the fix is 0.8.8.7: builds <= 0.8.8.6 are affected, anything from 0.8.8.7 onward is not.

Remediation

Update to version 0.8.8.7, or a newer patched version

How does WordSec protect against this?

The attempt arrives as an ordinary request to Advanced Custom Fields: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Advanced Custom Fields 0.8.8.7 closes this, and updating the plugin is the step that ends it.

  • Firewall
  • Alerts

External References

Related records

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