CVE Catalog

CVE-2026-114622

HighCVSS 7.2
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.60%

49th percentile - higher than 49% of all known CVEs

Summary

In the optional BcThemeFile plugin of baserCMS, the Admin API validates a raw path in ThemeFilesService::update() and getFullpath(), but ThemeFileForm::_execute() subsequently applies rawurldecode() to fullpath before writing. Because normalizePath() resolves only literal dot segments, percent-encoded traversal can pass the containment checks and become a path outside the theme directory at the write sink. An authenticated administrator can write PHP files into writable locations such as webroot and execute them, exceeding the intended theme-template editing boundary.

Risk Assessment

An administrator or an attacker with an administrator session can write and execute arbitrary PHP code on the server, leading to full application compromise. This requires the BcThemeFile plugin, an administrator session, and a same-origin Origin header.

Recommendation

Update baserCMS to version 5.3.2 or 5.4.2, which patch the vulnerability. If the BcThemeFile plugin is not needed, consider disabling or removing it, and restrict administrator privileges.

Other vulnerabilities in baserCMS

See all
Original NVD description (English source)

baserCMS is a website development framework. In versions 5.2.3 before 5.3.2 and 5.4.0 before 5.4.2, the optional BcThemeFile plugin's Admin API validates a raw path in ThemeFilesService::update() and getFullpath(), but ThemeFileForm::_execute() subsequently applies rawurldecode() to fullpath before writing. Because normalizePath() resolves only literal dot segments, percent-encoded traversal can pass the containment checks and become a path outside the theme directory at the write sink. An authenticated administrator can write PHP files into writable locations such as webroot and execute them, exceeding the intended theme-template editing boundary. The source also identifies the same check-before-decode ordering in ThemeFilesService::copy(), although that path was not dynamically verified. Exploitation requires the non-default plugin, an administrator session, and a same-origin Origin header; USE_CORE_ADMIN_API=false does not block session-authenticated requests. The Admin web form is not affected by this encoded-path tampering because FormProtection protects fullpath. This is a third bypass of the protections associated with CVE-2026-30940, using encoded traversal decoded after validation. This issue has been patched in versions 5.3.2 and 5.4.2.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS