PUBLISHED
2026-01-30 22:15
MODIFIED
2026-01-30 22:15
EPSS (Prob. Exploit)
0.62%
Top 51.2%
> DESCRIPTION
Backstage is an open framework for building developer portals, and @backstage/plugin-techdocs-node provides common node.js functionalities for TechDocs. In versions of @backstage/plugin-techdocs-node prior to 1.13.11 and 1.14.1, when TechDocs is configured with `runIn: local`, a malicious actor who can submit or modify a repository's `mkdocs.yml` file can execute arbitrary Python code on the TechDocs build server via MkDocs hooks configuration. @backstage/plugin-techdocs-node versions 1.13.11 and 1.14.1 contain a fix. The fix introduces an allowlist of supported MkDocs configuration keys. Unsupported configuration keys (including `hooks`) are now removed from `mkdocs.yml` before running the generator, with a warning logged to indicate which keys were removed. Users of `@techdocs/cli` should also upgrade to the latest version, which includes the fixed `@backstage/plugin-techdocs-node` dependency. Some workarounds are available. Configure TechDocs with `runIn: docker` instead of `runIn: local` to provide container isolation, though it does not fully mitigate the risk. Limit who can modify `mkdocs.yml` files in repositories that TechDocs processes; only allow trusted contributors. Implement PR review requirements for changes to `mkdocs.yml` files to detect malicious `hooks` configurations before they are merged. Use MkDocs < 1.4.0 (e.g., 1.3.1) which does not support hooks. Note: This may limit access to newer MkDocs features. Building documentation in CI/CD pipelines using `@techdocs/cli` does not mitigate this vulnerability, as the CLI uses the same vulnerable `@backstage/plugin-techdocs-node` package.
> AFFECTED_PRODUCTS
ℹ️ Aucun produit affecté n'a encore été publié par NVD pour cette CVE.
> CVSS V3 METRICS
CVSS_VECTOR
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:L
> MÉTRIQUES CVSS DÉTAILLÉES
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:L
| Métrique |
Valeur |
Interprétation |
|
AV (Vecteur d'Attaque)
Attack Vector
|
Network (N)
|
Exploit possible à distance via réseau (HTTP, API, etc.)
|
|
AC (Complexité d'Attaque)
Attack Complexity
|
High (H)
|
Conditions spécifiques doivent être réunies pour exploiter
|
|
PR (Privilèges Requis)
Privileges Required
|
Low (L)
|
Authentifié avec compte utilisateur basique
|
|
UI (Interaction Utilisateur)
User Interaction
|
None (N)
|
Aucune interaction utilisateur nécessaire
|
|
S (Périmètre)
Scope
|
Changed (C)
|
Impact s'étend au-delà du composant compromis
|
|
C (Impact Confidentialité)
Confidentiality Impact
|
High (H)
|
Divulgation totale d'informations
|
|
I (Impact Intégrité)
Integrity Impact
|
Low (L)
|
Modification limitée des données possible
|
|
A (Impact Disponibilité)
Availability Impact
|
Low (L)
|
Interruption partielle du service possible
|
> RÉSUMÉ DES IMPACTS
Confidentialité
High
Divulgation totale d'informations
Intégrité
Low
Modification limitée des données possible
Disponibilité
Low
Interruption partielle du service possible
> CWE DETAILED DESCRIPTIONS
CWE-94: Improper Control of Generation of Code - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.
> RED HAT SECURITY ADVISORIES
Red Hat Security Advisory: Red Hat Developer Hub 1.8.5 release.
Red Hat Developer Hub 1.8.5 has been released.
Red Hat Security Advisory: Red Hat Developer Hub 1.9.3 release.
Red Hat Developer Hub 1.9.3 has been released.
> RED HAT SEVERITY ASSESSMENT
THREAT SEVERITY
Important
> GITHUB SECURITY ADVISORY
GHSA-6jr7-99pf-8vgf
HIGH
@backstage/plugin-techdocs-node vulnerable to arbitrary code execution via MkDocs hooks
AFFECTED PACKAGES:
NPM / @backstage/plugin-techdocs-node
< 1.13.11
Fixed in: 1.13.11
NPM / @backstage/plugin-techdocs-node
= 1.14.0
Fixed in: 1.14.1
> OSV (GOOGLE OPEN SOURCE VULNERABILITIES)
@backstage/plugin-techdocs-node vulnerable to arbitrary code execution via MkDocs hooks
AFFECTED PACKAGES:
Unknown / Unknown
1 versions affected
ALIASES:
GHSA-6jr7-99pf-8vgf
> HISTORIQUE DES MODIFICATIONS
Première apparition
30/01/2026 22:15
Source: NVD
📊
ENRICHISSEMENT
01/11/2026 06:58
CWE
Champ modifié: Description CWE
Ancienne valeur:
CWE-94: Improper Control of Generation of Code ('Code Injection') - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not n...
Nouvelle valeur:
CWE-94: Improper Control of Generation of Code - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorr...
📊
ENRICHISSEMENT
01/02/2026 06:45
CWE
Champ modifié: Description CWE
Nouvelle valeur:
CWE-94: Improper Control of Generation of Code ('Code Injection') - The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not n...
📊
ENRICHISSEMENT
01/02/2026 05:01
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 23:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 22:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 21:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 20:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 19:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 18:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 17:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 16:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 15:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 14:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 13:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 12:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 11:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 10:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 09:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 08:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 07:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 06:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 05:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 04:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 03:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 02:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 01:30
REDHAT
Champ modifié: Sévérité Red Hat
Ancienne valeur:
{
"severity_scale": null,
"threat_severity": "Important"
}
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 00:30
REDHAT
Champ modifié: Sévérité Red Hat
Nouvelle valeur:
{
"threat_severity": "Important",
"severity_scale": null
}
📊
ENRICHISSEMENT
31/01/2026 00:30
REDHAT
Total des modifications: 28
Dernière mise à jour: 1 week ago