Description
Backstage is an open framework for building developer portals. Prior to version 1.14.3, this is a configuration bypass vulnerability that enables arbitrary code execution. The @backstage/plugin-techdocs-node package uses an allowlist to filter dangerous MkDocs configuration keys during the documentation build process. A gap in this allowlist allows attackers to craft an mkdocs.yml that causes arbitrary Python code execution, completely bypassing TechDocs' security controls. This issue has been patched in version 1.14.3.
Published: 2026-03-07
Score: 7.7 High
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability resides in the @backstage/plugin-techdocs-node component of the Backstage framework, which is used to build developer portals. Prior to version 1.14.3, the component relied on an allowlist to filter dangerous MkDocs configuration keys. A gap in that allowlist allows an attacker to craft a specially crafted mkdocs.yml file that bypasses the security controls and results in arbitrary Python code execution. The flaw is aligned with multiple weaknesses, including untrusted file upload, unsafe configuration handling, and pointer manipulation, as reflected by CWE-, CWE-74, and CWE-791. If exploited, an attacker can run code with the privileges of the Backstage process, potentially gaining full system compromise and impacting confidentiality, integrity, and availability.

Affected Systems

Organisations running Backstage versions older than 1.14.3 are affected. The vulnerability is specific to the @backstage/plugin-techdocs-node package, part of the Backstage GitHub project. No explicit sub-versions are listed beyond the fixed version 1.14.3, so any build using the plugin before this release is susceptible.

Risk and Exploitability

The CVSS base score of 7.7 indicates high severity. The EPSS score is reported as less than 1%, meaning the probability of exploitation is presently very low, but not zero. The vulnerability is not yet listed in CISA's KEV catalog. Exploitation requires an attacker to supply a malicious mkdocs.yml file—most likely via a configuration repository or a public documentation source—so the attack vector is likely local or web-based within the documentation build pipeline. Despite the low current exploitation likelihood, the impact is catastrophic, warranting urgent action.

Generated by OpenCVE AI on April 16, 2026 at 10:56 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Backstage to version 1.14.3 or later, which removes the allowlist gap in @backstage/plugin-techdocs-node
  • Disallow arbitrary or untrusted mkdocs.yml files from being processed, restricting configuration inputs to trusted sources only
  • Validate or audit existing mkdocs.yml configurations to ensure they do not contain disallowed directives before deployment

Generated by OpenCVE AI on April 16, 2026 at 10:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-928r-fm4v-mvrw TechDocs Mkdocs Configuration Key Enables Arbitrary Code Execution
History

Wed, 11 Mar 2026 18:15:00 +0000

Type Values Removed Values Added
First Time appeared Linuxfoundation
Linuxfoundation backstage Plugin-techdocs-node
CPEs cpe:2.3:a:linuxfoundation:backstage_plugin-techdocs-node:*:*:*:*:*:*:*:*
Vendors & Products Linuxfoundation
Linuxfoundation backstage Plugin-techdocs-node

Tue, 10 Mar 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-791
References
Metrics threat_severity

None

threat_severity

Important


Mon, 09 Mar 2026 21:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 09 Mar 2026 10:15:00 +0000

Type Values Removed Values Added
First Time appeared Backstage
Backstage backstage
Vendors & Products Backstage
Backstage backstage

Sat, 07 Mar 2026 15:15:00 +0000

Type Values Removed Values Added
Description Backstage is an open framework for building developer portals. Prior to version 1.14.3, this is a configuration bypass vulnerability that enables arbitrary code execution. The @backstage/plugin-techdocs-node package uses an allowlist to filter dangerous MkDocs configuration keys during the documentation build process. A gap in this allowlist allows attackers to craft an mkdocs.yml that causes arbitrary Python code execution, completely bypassing TechDocs' security controls. This issue has been patched in version 1.14.3.
Title @backstage/plugin-techdocs-node: TechDocs Mkdocs Configuration Key Enables Arbitrary Code Execution
Weaknesses CWE-434
CWE-74
References
Metrics cvssV3_1

{'score': 7.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:L'}


Subscriptions

Backstage Backstage
Linuxfoundation Backstage Plugin-techdocs-node
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-03-09T20:24:16.895Z

Reserved: 2026-03-04T14:44:00.714Z

Link: CVE-2026-29186

cve-icon Vulnrichment

Updated: 2026-03-09T20:15:47.537Z

cve-icon NVD

Status : Analyzed

Published: 2026-03-07T15:15:55.400

Modified: 2026-03-11T18:00:01.620

Link: CVE-2026-29186

cve-icon Redhat

Severity : Important

Publid Date: 2026-03-07T15:03:51Z

Links: CVE-2026-29186 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-04-16T11:00:10Z

Weaknesses