Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 RCE via actionCacheUpdates Behavior Injection
Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 passes the raw 'updates' request parameter in AppController::actionCacheUpdates to UpdatesModel without Component::cleanseConfig(), allowing behavior and event-handler injection. Authenticated control panel users with the performUpdates permission or Updates-utility access can supply 'as' or 'on' keys, such as an AttributeTypecastBehavior gadget, to execute arbitrary code.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-109308
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 16:54 UTC · Revision 1
Source evidence
Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 RCE via actionCacheUpdates Behavior Injection
core-osv · Original sourcePublished 12 Oct 2026, 16:05 UTC
Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 passes the raw 'updates' request parameter in AppController::actionCacheUpdates to UpdatesModel without Component::cleanseConfig(), allowing behavior and event-handler injection. Authenticated control panel users with the performUpdates permission or Updates-utility access can supply 'as' or 'on' keys, such as an AttributeTypecastBehavior gadget, to execute arbitrary code.
osv:CVE-2026-109308
Complete source record
{
"id": "99ffc62c206f46ebf7cdfafc66201bbd9995b493865a1c6224c99c5924f3cc1b",
"url": "https://osv.dev/vulnerability/CVE-2026-109308",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 RCE via actionCacheUpdates Behavior Injection",
"summary": "Craft CMS 4.0.0 before 4.18.7 and 5.0.0 before 5.10.14 passes the raw 'updates' request parameter in AppController::actionCacheUpdates to UpdatesModel without Component::cleanseConfig(), allowing behavior and event-handler injection. Authenticated control panel users with the performUpdates permission or Updates-utility access can supply 'as' or 'on' keys, such as an AttributeTypecastBehavior gadget, to execute arbitrary code.",
"evidence": "osv:CVE-2026-109308",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-109308",
"aliases": [
"CVE-2026-109308",
"GHSA-5m2g-hhqr-84pc"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "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"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/craftcms/cms",
"type": "GIT",
"events": [
{
"introduced": "982efcd14d7e93a1a54f0905b61f242de6b53d8a"
},
{
"fixed": "565b88afb88df790c5465bcbb0a0b8aef2903dd2"
},
{
"introduced": "f6a8fb685d44e387435825e3a96809eeda4973a6"
},
{
"fixed": "6804f92fbdd93c3a3fb40f15bcd76a406e97634d"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "4.0.0"
},
{
"fixed": "4.18.7"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "5.0.0"
},
{
"fixed": "5.10.14"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-109308.json"
}
}
],
"modified": "2026-10-28T02:30:37.643480158Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/109xxx/CVE-2026-109308.json",
"https://github.com/craftcms/cms/security/advisories/GHSA-5m2g-hhqr-84pc",
"https://nvd.nist.gov/vuln/detail/CVE-2026-109308",
"https://www.vulncheck.com/advisories/craft-cms-4.0.0-before-4.18.7-and-5.0.0-before-5.10.14-rce-via-actioncacheupdates-behavior-injection"
],
"provider_metadata": {
"cwe_ids": [
"CWE-94"
],
"cna_assigner": "VulnCheck",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/109xxx/CVE-2026-109308.json"
}
},
"related_cves": [
{
"value": "CVE-2026-109308",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 504974,
"published_at": "2026-10-12T16:05:04.666+00:00"
}