Cyber Resilience

CVE-2024-56322

XXE in Thoughtworks Gocd 16.7.0 – 24.5.0

Published
03 January 2025
Modified
01 August 2025
Patch / advisory
CVSS Score v4 2.1
Click a component to see what it means
Raw vectorCVSS:4.0/AV:N/AC:H/AT:N/PR:H/UI:N/VC:L/VI:L/VA:N/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
EPSS Score 0.0070 51th percentile
Risk Priority 17 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2024-56322 is a low-severity Improper Restriction of XML External Entity Reference (CWE-611) vulnerability in Thoughtworks Gocd. Its CVSS base score is 2.1 (Low).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked in the top 49% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to CM-6 (Configuration Settings) and SA-11 (Developer Testing and Evaluation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2024-56322 is an XML External Entity (XXE) injection vulnerability (CWE-611) affecting GoCD, a continuous delivery server, in versions 16.7.0 through 24.4.0 inclusive. The issue stems from a hidden and unused configuration repository feature, known as "pipelines as code," which GoCD admins can abuse to inject XXE payloads directly on the GoCD Server. These payloads execute when the server periodically scans configuration repositories for pipeline updates or when scans are triggered by an administrator or config repo admin.

Only GoCD super admins possess the privileges required to exploit this vulnerability. Attackers with such access can trigger XXE injection during repo scans, potentially achieving high impacts on confidentiality, integrity, and availability, as reflected in the CVSS v3.1 base score of 7.2 (AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H). In practice, the vulnerability's impact is limited without combination with another flaw, since a malicious admin could inflict far greater damage through legitimate administrative functions.

The vulnerability is fixed in GoCD 24.5.0. As a workaround, apply environment egress controls to block the GoCD server from accessing arbitrary external locations. Official details appear in the GoCD GitHub security advisory (GHSA-8xwx-hf68-8xq7), the 24.5.0 release notes, the fixing commit (410331a97eb2935e04c1372f50658e05c533f733), and the GoCD releases page.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

GoCD is a continuous deliver server. GoCD versions 16.7.0 through 24.4.0 (inclusive) can allow GoCD admins to abuse a hidden/unused configuration repository (pipelines as code) feature to allow XML External Entity (XXE) injection on the GoCD Server which will be…

more

executed when GoCD periodically scans configuration repositories for pipeline updates, or is triggered by an administrator or config repo admin. In practice the impact of this vulnerability is limited, in most cases without combining with another vulnerability, as only GoCD (super) admins have the ability to abuse this vulnerability. Typically a malicious GoCD admin can cause much larger damage than that they can do with XXE injection. The issue is fixed in GoCD 24.5.0. As a workaround, prevent external access from the GoCD server to arbitrary locations using some kind of environment egress control.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1005 Data from Local System Collection
Adversaries may search local system sources, such as file systems, configuration files, local databases, virtual machine files, or process memory, to find files of interest and sensitive data prior to Exfiltration.
T1213 Data from Information Repositories Collection
Adversaries may leverage information repositories to mine valuable information.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-56324Same product: Thoughtworks Gocd
CVE-2023-28630Same product: Thoughtworks Gocd
CVE-2023-28629Same product: Thoughtworks Gocd
CVE-2024-28866Same product: Thoughtworks Gocd
CVE-2024-56321Same product: Thoughtworks Gocd
CVE-2024-56320Same product: Thoughtworks Gocd
CVE-2023-20173Shared CWE-611
CVE-2025-34142Shared CWE-611
CVE-2023-37200Shared CWE-611
CVE-2025-4639Shared CWE-611

Affected Assets

thoughtworks
gocd
16.7.0 — 24.5.0

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

—

Detect
Catch it (NIST detect / respond)

—

Harden
Shrink the surface (DISA STIG)

—

Validate
Prove the fix (OWASP ASVS)
  • V1.5.1
  • V15.3.2

Mitigating Controls (NIST 800-53 r5) AI

Secure configuration settings can disable external entity processing in XML parsers.

Developer testing can discover XXE flaws through targeted XML parsing tests.

Input validation can reject or sanitize XML containing external entity references.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-01 mostly match
prevents

Hardened XML parser configurations directly disable external entity resolution.

PR.PS-06 mostly match
prevents

Secure SDLC practices include input validation and safe XML parser configuration that prevent XXE.

ID.RA-01 partial match
prevents

Vulnerability scanning can discover XXE flaws but does not prevent their introduction in code.

PR.PS-02 partial match
prevents

Patching eliminates XXE-vulnerable parser versions but is only one aspect of software maintenance.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development catches XXE via static analysis and dynamic XML fuzzing.

finds

Vulnerability management identifies and patches XML libraries with unsafe default entity settings.

prevents

Secure development life cycle mandates input validation and entity handling that directly prevents XXE.

prevents

Application security requirements explicitly call for disabling external entity processing in XML parsers.

prevents

Secure architecture principles include safe parser configuration that mitigates external entity risks.

prevents

Secure coding standards require disabling DTDs and external entities in XML processing.

References