Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network endpoint with low-privileged authenticated account (PR:L) and no interaction; authorization bypass crosses a privilege boundary to RCE (S:C) with full C/I/A impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Pagekit CMS 1.0.18 contains a privilege escalation vulnerability that allows authenticated users with the 'user: manage users' permission to escalate privileges by assigning arbitrary custom roles to themselves due to missing authorization checks in UserApiController::saveAction(). Attackers can assign themselves a custom role with the 'system: manage packages' permission and then upload and install a malicious PHP package through the admin package installer to achieve remote code execution.
Articles & Coverage 1
AnalysisAI
Privilege escalation to remote code execution in Pagekit CMS 1.0.18 lets an authenticated user holding the 'user: manage users' permission grant themselves arbitrary custom roles via an unprotected UserApiController::saveAction(), then assign a role carrying 'system: manage packages' to upload a malicious PHP package through the admin installer and run arbitrary code. Publicly available exploit code exists (gist by sermikr0, reported by VulnCheck), and the chain converts a limited management permission into full server compromise. No public evidence of active exploitation has been confirmed (not in CISA KEV).
Technical ContextAI
Pagekit is a PHP-based, modular open-source CMS built on a marketplace/package extension model where packages are PHP code installed through an admin 'package installer'. The root cause is CWE-862 (Missing Authorization): the saveAction() endpoint in UserApiController does not verify that the caller is permitted to assign the roles contained in the request, so a user with only the 'user: manage users' capability can attach any custom role - including privileged ones - to their own account. Because role-to-permission binding gates the 'system: manage packages' capability, and that capability allows installing arbitrary PHP packages, the authorization gap collapses the boundary between user administration and code execution. The single affected CPE is cpe:2.3:a:pagekit:pagekit:*:*:*:*:*:*:*:*.
RemediationAI
No vendor-released patch version was identified at time of analysis, so apply compensating controls. As the primary mitigation, restrict assignment of the 'user: manage users' permission to fully trusted administrators only, since this is the prerequisite capability the attack abuses; review existing custom roles and remove 'user: manage users' from any non-administrator role. Additionally, limit or disable the admin package installer ('system: manage packages') and restrict who can reach the admin API, recognizing the trade-off that this blocks legitimate extension installation and must be re-enabled manually for maintenance. Monitor user role-assignment changes and package-installation events for anomalous self-elevation. Consult the VulnCheck advisory at https://www.vulncheck.com/advisories/pagekit-cms-privilege-escalation-via-userapicontroller for details, and upgrade to a fixed release once the vendor publishes one. Do not deploy version 1.0.18 in multi-user configurations until remediated.
In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-39795
GHSA-rc6m-346q-rgq6