CVE-2021-24458

Popup box < 2.3.4 - Authenticated SQL Injection

2021-06-29 00:00
To Quang Duong

Strategic Overview

Status
Patched in 2.3.4
Affected Version
< 2.3.4
CVSS
8.8High
Weakness type
CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
CVE
CVE-2021-24458
View all Popup Box – Create Countdown, Coupon, Video, Contact Form Popups vulnerabilities

At a glance

CVE-2021-24458 is a high-severity Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in the Popup Box WordPress plugin, affecting versions < 2.3.4. It carries a CVSS score of 8.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires an authenticated account. The issue is fixed in version 2.3.4; sites on affected versions should update now. Disclosed June 2021, reported by To Quang Duong.

Vulnerability Overview

The get_ays_popupboxes() and get_popup_categories() functions of the Popup box WordPress plugin before 2.3.4 did not use whitelist or validate the orderby parameter before using it in SQL statements passed to the get_results() DB calls, leading to SQL injection issues in the admin dashboard.

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')

Popup Box < 2.3.4 carries this weakness at get_ays_popupboxes(), and reaching it takes any authenticated account. 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 Popup Box the fix is 2.3.4: builds < 2.3.4 are affected, anything from 2.3.4 onward is not.

Remediation

Update to version 2.3.4, or a newer patched version

How does WordSec protect against this?

The attempt arrives as an ordinary request to Popup Box: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Popup Box 2.3.4 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