GZDoom engine allows arbitrary code execution via ZScript actor states
GZDoom is a feature centric port for all Doom engine games. GZDoom is an open source Doom engine. In versions 4.14.2 and earlier, ZScript actor state handling allows scripts to read arbitrary addresses, write constants into the JIT-compiled code section, and redirect control flow through crafted FState and VMFunction structures. A script can copy FState structures into a writable buffer, modify function pointers and state transitions, and cause execution of attacker-controlled bytecode, leading to arbitrary code execution.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2025-54065
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 16:00 UTC · Revision 1
Source evidence
GZDoom engine allows arbitrary code execution via ZScript actor states
core-osv · Original sourcePublished 3 Dec 2025, 17:02 UTC
GZDoom is a feature centric port for all Doom engine games. GZDoom is an open source Doom engine. In versions 4.14.2 and earlier, ZScript actor state handling allows scripts to read arbitrary addresses, write constants into the JIT-compiled code section, and redirect control flow through crafted FState and VMFunction structures. A script can copy FState structures into a writable buffer, modify function pointers and state transitions, and cause execution of attacker-controlled bytecode, leading to arbitrary code execution.
osv:CVE-2025-54065
Complete source record
{
"id": "0860e66bda980096f696db91f43fa0107c76c8833263ff5d8f231c434ebb74ff",
"url": "https://osv.dev/vulnerability/CVE-2025-54065",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "GZDoom engine allows arbitrary code execution via ZScript actor states",
"summary": "GZDoom is a feature centric port for all Doom engine games. GZDoom is an open source Doom engine. In versions 4.14.2 and earlier, ZScript actor state handling allows scripts to read arbitrary addresses, write constants into the JIT-compiled code section, and redirect control flow through crafted FState and VMFunction structures. A script can copy FState structures into a writable buffer, modify function pointers and state transitions, and cause execution of attacker-controlled bytecode, leading to arbitrary code execution.",
"evidence": "osv:CVE-2025-54065",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2025-54065",
"aliases": [
"CVE-2025-54065",
"GHSA-prhc-chfw-32jg"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/zdoom/gzdoom",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"last_affected": "99aa489d09015a95bb78df2b30ede29f328cc874"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.14.2"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.14.2"
}
],
"source": "DESCRIPTION"
}
]
}
}
],
"versions": [
"g4.14.2",
"g4.14.1",
"g4.15pre",
"g4.14pre",
"g4.13pre",
"g4.12pre",
"g4.11pre",
"g4.10pre",
"g4.9pre",
"g4.8pre",
"g4.7.0pre",
"g4.6pre",
"g4.5pre",
"g4.4pre",
"g4.3pre",
"g4.2pre",
"g4.1pre",
"g3.6pre",
"g3.5pre",
"g3.4pre",
"g3.3pre",
"g3.2pre",
"g3.0pre",
"2.5pre",
"g2.4pre",
"ok3",
"g2.3pre",
"g2.2pre",
"g2.1.pre",
"G1.9pre",
"2.8pre",
"2.7.0",
"2.5.0",
"2.3.1",
"2.3.0",
"2.2.0",
"2.1.7",
"2.1.6",
"2.1.5",
"2.1.4",
"2.1.3",
"2.1.2",
"2.1.1",
"notok#2",
"2.1.0",
"ci_deps"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-54065.json"
}
}
],
"modified": "2026-10-28T02:30:37.014333793Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/54xxx/CVE-2025-54065.json",
"https://github.com/ZDoom/gzdoom/security/advisories/GHSA-prhc-chfw-32jg",
"https://nvd.nist.gov/vuln/detail/CVE-2025-54065"
],
"provider_metadata": {
"cwe_ids": [
"CWE-913"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/54xxx/CVE-2025-54065.json"
}
},
"related_cves": [
{
"value": "CVE-2025-54065",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 504418,
"published_at": "2025-12-03T17:02:56.603+00:00"
}