CVE-2025-54065

7.9 HIGH

📋 TL;DR

CVE-2025-54065 is a critical memory corruption vulnerability in GZDoom that allows arbitrary code execution through crafted ZScript actor state handling. Attackers can manipulate FState and VMFunction structures to execute malicious bytecode. This affects all users running GZDoom versions 4.14.2 and earlier.

💻 Affected Systems

Products:
  • GZDoom
Versions: 4.14.2 and earlier
Operating Systems: Windows, Linux, macOS
Default Config Vulnerable: ⚠️ Yes
Notes: All installations are vulnerable regardless of configuration. The vulnerability is in core ZScript handling code.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise through arbitrary code execution, potentially leading to malware installation, data theft, or ransomware deployment.

🟠

Likely Case

Game crashes, save file corruption, or remote code execution when loading malicious game mods or maps from untrusted sources.

🟢

If Mitigated

Limited to denial of service if execution is constrained by sandboxing or privilege restrictions.

🌐 Internet-Facing: MEDIUM - While GZDoom itself isn't typically internet-facing, malicious content could be distributed through mod repositories or multiplayer servers.
🏢 Internal Only: HIGH - Local users or malicious game mods can exploit this vulnerability to gain elevated privileges on the system.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires loading malicious ZScript content, which could be embedded in game mods, maps, or save files. No authentication is required once malicious content is loaded.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.14.3 and later

Vendor Advisory: https://github.com/ZDoom/gzdoom/security/advisories/GHSA-prhc-chfw-32jg

Restart Required: Yes

Instructions:

1. Download GZDoom 4.14.3 or later from official sources. 2. Replace existing installation with new version. 3. Restart the application.

🔧 Temporary Workarounds

Disable ZScript Loading

all

Prevent loading of ZScript content which is required for exploitation

Not applicable - configuration setting in GZDoom

Sandbox Execution

linux

Run GZDoom in a restricted environment or container

docker run --security-opt=no-new-privileges -it gzdoom

🧯 If You Can't Patch

  • Only load game content from trusted, verified sources
  • Run GZDoom with minimal user privileges and in isolated environments

🔍 How to Verify

Check if Vulnerable:

Check GZDoom version in application or via command: gzdoom --version

Check Version:

gzdoom --version | grep -o 'GZDoom [0-9.]*'

Verify Fix Applied:

Verify version is 4.14.3 or higher and test loading known safe ZScript content

📡 Detection & Monitoring

Log Indicators:

  • Unexpected memory access violations
  • ZScript parsing errors
  • Game crashes with memory corruption signatures

Network Indicators:

  • Downloads of suspicious game mods/maps from untrusted sources

SIEM Query:

Process:gzdoom AND (EventID:1000 OR ExceptionCode:c0000005)

🔗 References

📤 Share & Export