CVE-2025-1667

School Management System – WPSchoolPress <= 2.2.16 - Missing Authorization to Privilege Escalation via Account Takeover

2025-03-14 14:22
wesley (wcraft)

Strategic Overview

Status
Patched in 2.2.17
Affected Version
<= 2.2.16
CVSS
8.8High
Weakness type
CWE-639 · Authorization Bypass Through User-Controlled Key
CVE
CVE-2025-1667
View all School Management System – WPSchoolPress vulnerabilities

At a glance

CVE-2025-1667 is a high-severity Authorization Bypass Through User-Controlled Key vulnerability in the School Management System WordPress plugin, affecting versions <= 2.2.16. It carries a CVSS score of 8.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). The root cause is a missing authorization check on a reachable function. The issue is fixed in version 2.2.17; sites on affected versions should update now. Disclosed March 2025, reported by wesley (wcraft).

Vulnerability Overview

The School Management System – WPSchoolPress plugin for WordPress is vulnerable to Privilege Escalation due to a missing capability check on the wpsp_UpdateTeacher() function in all versions up to, and including, 2.2.16. This makes it possible for authenticated attackers, with teacher-level access and above, to update arbitrary user details including email which makes it possible to request a password reset and access arbitrary user accounts, including 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-639: Authorization Bypass Through User-Controlled Key

School Management System <= 2.2.16 carries this weakness at wpsp_UpdateTeacher(), and reaching it takes a caller who can reach the endpoint. Authorization bypass through a user-controlled key, often called insecure direct object reference, means the application looks up a record by an identifier from the request without checking that the caller owns it.

Changing a number in the request is enough to read or modify other users' records, which on commerce and membership sites means customer data. For School Management System the fix is 2.2.17: builds <= 2.2.16 are affected, anything from 2.2.17 onward is not.

Remediation

Update to version 2.2.17, 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: School Management System 2.2.17 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