Catégories
CVE-2026-54757 high CVSS 7.8

Injection de code dans compliance-trestle (CVE-2026-54757)

Résumé

Injection de code dans compliance-trestle (CVE-2026-54757). L'exploitation peut entraîner la prise de contrôle totale du système. Exploitable via SandboxedEnvironment. Atténuation : mise à jour vers 4.1.0 ou plus.

Description d'origine

La description telle que publiée par la source (souvent en anglais).

Impact

A Server-Side Template Injection (SSTI) vulnerability exists in multiple locations of trestle's Jinja2 rendering pipeline due to a systemic pattern: untrusted data is re-parsed as Jinja2 template source code without sandboxing. This advisory tracks the root cause across all affected code paths.

The core anti-pattern is: treating runtime data (rendered output, included Markdown content, LUT values) as Jinja2 template source code and passing it to Parser.parse() or an equivalent rendering cycle, without using SandboxedEnvironment or escaping Jinja2 syntax delimiters. Because jinja2.Environment (not SandboxedEnvironment) is used, injected expressions can traverse Python object chains (__class__.__mro__, __globals__, __subclasses__()) to achieve arbitrary command execution via os.system() or subprocess.

Previously fixed instance (historical context):

An earlier version of render_template() in trestle/core/commands/author/jinja.py implemented a recursive while loop: rendered output was loaded via DictLoader into a new Environment and re-rendered until convergence. This allowed an attacker to inject {{ namespace.__init__.__globals__.os.system('command') }} into SSP data fields or LUT YAML values. When a trusted template rendered these data fields (e.g., Title: {{ ssp.metadata.title }}), the injected payload was written into the output, then re-evaluated as executable Jinja2 code in the next loop iteration. **This specific code…

Source: NIST National Vulnerability Database NVD GitHub Advisory

Résumé généré automatiquement

Assemblé par SecPulse à partir des données sources (CVSS, CWE, versions affectées) à l'aide de modèles, sans IA. Vérifiez la description d'origine et les références ci-dessous.

Une vulnérabilité référencée CVE-2026-54757 a été découverte dans compliance-trestle.
Des attaquants peuvent cibler un point d'entrée spécifique comme SandboxedEnvironment à distance pour détourner le produit.
L'exploitation peut entraîner la prise de contrôle totale du système. Score CVSS : 7.8/10.
Action : mettez à jour compliance-trestle vers 4.1.0 ou supérieur.
En cas de doute, contactez votre service informatique ou cherchez « compliance-trestle CVE-2026-54757 » sur le site de l'éditeur.

CVE-2026-54757 (compliance-trestle) — CWE-94 / CVSS v3 7.8
Vecteur d'attaque : local / non authentifié
Surface d'attaque : SandboxedEnvironment / jinja2.Environment / __class__.__mro__ / __globals__
Correctif : 4.1.0 — appliquer immédiatement
Plan : 1) Audit SBOM, 2) Mise à jour staging→prod, 3) Surveillance WAF/proxy sur les endpoints affectés, 4) Recherche d'IOC dans les logs.
Réfs : voir GHSA / avis éditeur / version corrigée liés sur cette page.

❓ Quel est le problème

Une exécution de code arbitraire (CWE-94) affecte compliance-trestle. Les attaquants atteignent le code vulnérable via SandboxedEnvironment sans authentification.

📍 Périmètre concerné

Consultez l'avis de l'éditeur pour les versions affectées de compliance-trestle. Surface d'attaque : SandboxedEnvironment / jinja2.Environment / __class__.__mro__ / __globals__.

🔥 Gravité

Gravité : Élevée (CVSS 7.8/10). L'exploitation peut entraîner la prise de contrôle totale du système.

🔧 Comment corriger

Mettre à jour vers 4.1.0.

🛡️ Contournement

En attendant le correctif : désactivez la fonctionnalité concernée, appliquez des règles WAF, ou restreignez l'accès par ACL réseau.

🔍 Détection

Recherchez dans les logs des requêtes correspondant aux IOC connus de cette CVE. Auditez les SBOM/dépendances.

Actions de réponse

Étapes concrètes et exemples de commandes que les équipes SOC/SRE doivent exécuter dans l'ordre

  1. 1
    Identify exposure identify
    grep -r 'compliance-trestle' . | grep -v node_modules

    リポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で compliance-trestle を grep し、稼働しているサービス・バージョンを把握する。

  2. 2
    Apply patch patch
    Upgrade compliance-trestle to 4.1.0

    ステージング環境で 4.1.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。

  3. 3
    Post-deployment verification verify
    Confirm patched version is live in production

    パッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。

Paquets affectés

pip compliance-trestle
[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.1.0"}]}]

Références

Nous utilisons des cookies pour l'analyse d'audience et la mesure publicitaire. Ce réglage s'applique à tous les sites de Game co., Ltd. En savoir plus