Strategic Overview
- Status
- Patched in 2.1.0
- Affected Plugin
- Easy Modal
- Affected Version
< 2.1.0- CVSS
- 7.2High
- Weakness type
- CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
- CVE
CVE-2017-12946
At a glance
CVE-2017-12946 is a high-severity Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in the Easy Modal WordPress plugin, affecting versions < 2.1.0. It carries a CVSS score of 7.2 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires an authenticated account at Admin level or above. The issue is fixed in version 2.1.0; sites on affected versions should update now. Disclosed August 2017, reported by DefenceCode.
Vulnerability Overview
classes\controller\admin\modals.php in the Easy Modal plugin before 2.1.0 for WordPress has SQL injection in a delete action with the id, ids, or modal parameter to wp-admin/admin.php, exploitable by administrators.
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 Easy Modal < 2.1.0 takes an account at Admin level or above. 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 Easy Modal the fix is 2.1.0: builds < 2.1.0 are affected, anything from 2.1.0 onward is not.
Remediation
Update to version 2.1.0, or a newer patched version
How does WordSec protect against this?
An attacker needs Admin access first, so the firewall sees the attempt as traffic from a logged-in account: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Easy Modal 2.1.0 closes this, and updating the plugin is the step that ends it.
- Firewall
- Alerts
External References
Related records
Same weakness class
Other vulnerabilities in Easy Modal
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C