title: set-screen-option filter misuse by plugins leading to privilege escalation in WordPress
description: In affected versions of WordPress, misuse of the `set-screen-option` filter's return value allows arbitrary user meta fields to be saved. It does require an admin to install a plugin that would misuse the filter. Once installed, it can be leveraged by low privileged users. This has been patched in version 5.4.2, along with all the previously affected versions via a minor release (5.3.4, 5.2.7, 5.1.6, 5.0.10, 4.9.15, 4.8.14, 4.7.18, 4.6.19, 4.5.22, 4.4.23, 4.3.24, 4.2.28, 4.1.31, 4.0.31, 3.9.32, 3.8.34, 3.7.34).
problem types: CWE-288: Authentication Bypass Using an Alternate Path or Channel
affected:
{
product: wordpress-develop
vendor: WordPress
versions:
status: affected, version: >= 5.4.0, < 5.4.2
status: affected, version: >= 5.3.0, < 5.3.4
status: affected, version: >= 5.2.0, < 5.2.7
status: affected, version: >= 5.1.0, < 5.1.6
status: affected, version: >= 5.0.0, < 5.0.10
status: affected, version: >= 4.9.0, < 4.9.15
status: affected, version: >= 4.8.0, < 4.8.14
status: affected, version: >= 4.7.0, < 4.7.18
status: affected, version: >= 4.6.0, < 4.6.19
status: affected, version: >= 4.5.0, < 4.5.22
status: affected, version: >= 4.4.0, < 4.4.23
status: affected, version: >= 4.3.0, < 4.3.24
status: affected, version: >= 4.2.0, < 4.2.28
status: affected, version: >= 4.1.0, < 4.1.31
status: affected, version: >= 4.0.0, < 4.0.31
status: affected, version: >= 3.9.0, < 3.9.32
status: affected, version: >= 3.8.0, < 3.8.34
status: affected, version: >= 3.7.0, < 3.7.34
}
metrics:
cvssV3_1: [
attackComplexity: HIGH
attackVector: NETWORK
availabilityImpact: NONE
baseScore: 3.5
baseSeverity: LOW
confidentialityImpact: NONE
integrityImpact: LOW
privilegesRequired: LOW
scope: CHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:L/A:N
version: 3.1
]