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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-33154 — إثبات مفهوم لاستغلال CVE-2026-33154، يوضح تنفيذ الأكواد عن بُعد عبر SSTI في محلل Jinja الخاص بـ Dynaconf، مع تحليل وإرشادات للتخفيف. | Kitploit
أدوات/GitHubGitHub/redyank/cve-2026-33154
تحليل الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبالتعلم والتعليم
GitHubredyank/cve-2026-33154

CVE-2026-33154

إثبات مفهوم لاستغلال CVE-2026-33154، يوضح تنفيذ الأكواد عن بُعد عبر SSTI في محلل Jinja الخاص بـ Dynaconf، مع تحليل وإرشادات للتخفيف.

عرض المستودع
16منذ 5 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

تقرير ثغرة حقن القوالب من جانب الخادم (SSTI) في Dynaconf

الملخص

Dynaconf معرّض لثغرة حقن القوالب من جانب الخادم (SSTI) بسبب التقييم غير الآمن للقوالب في محلل __@Jinja__. عند تثبيت حزمة jinja2، يقوم Dynaconf بتقييم تعبيرات القوالب المضمّنة في قيم الإعدادات دون بيئة معزولة (sandbox).

إذا تمكن المهاجم من التأثير على مصادر الإعدادات مثل:

  • متغيرات البيئة
  • ملفات .env
  • إعدادات بيئة الحاويات
  • أسرار CI/CD

...فيمكنه تنفيذ أوامر نظام تشغيل تعسفية على النظام المضيف. بالإضافة إلى ذلك، يسمح محلل __@Format__ بالتنقل عبر مخطط الكائنات، مما قد يكشف عن كائنات حساسة في وقت التشغيل ومتغيرات بيئة.


التفاصيل

تنشأ الثغرة لأن محللات السلاسل النصية في Dynaconf تفتقر إلى حدود أمنية مناسبة.

1. محلل

__@Jinja__

يقوم محلل __@Jinja__ بعرض القوالب باستخدام تقييم Jinja2 الكامل. ومع ذلك، فإن سياق العرض ليس معزولاً (sandboxed)، مما يسمح للمهاجمين بالوصول إلى السمات الداخلية للغة Python. باستخدام كائنات مثل cycler، يمكن للمهاجمين الوصول إلى المتغيرات العامة في Python واستيراد وحدة os.

مسار الهجوم مثال:

root@kitploit:~
cycler → __init__ → __globals__ → os → popen()

يؤدي هذا إلى تنفيذ أوامر تعسفية.


2. محلل __@Format__

يقوم محلل __@Format__ بتنسيق السلاسل النصية في Python باستخدام كائنات داخلية. وهذا يسمح للمهاجمين بالتنقل عبر مخطط كائنات Python والوصول إلى كائنات حساسة في وقت التشغيل.

مثال على التنقل:

root@kitploit:~
{this.__class__.__init__.__globals__[os].environ}

يمكن أن يكشف هذا عن:

  • مفاتيح API
  • بيانات اعتماد قواعد البيانات
  • رموز الخدمات الداخلية
  • أسرار البيئة

إثبات المفهوم (PoC)

root@kitploit:~
import os
from dynaconf import Dynaconf

# حقن إعدادات خبيثة
os.environ["DYNACONF_RCE"] = "@jinja {{ cycler.__init__.__globals__.os.popen('id').read() }}"

settings = Dynaconf()

print("[!] نتيجة تنفيذ الأمر:")
print(settings.RCE)

التأثير

الاستغلال الناجح يسمح للمهاجمين بـ:

  • تنفيذ أوامر نظام تشغيل تعسفية على النظام المضيف
  • الوصول إلى متغيرات البيئة الحساسة
  • اختراق أسرار التطبيق
  • اختراق عملية التطبيق الجارية بالكامل

نظراً لأن قيم الإعدادات قد تنشأ من خطوط أنابيب CI/CD أو أنظمة تنسيق الحاويات أو حقن البيئة، يمكن أن تصبح هذه الثغرة قابلة للاستغلال عن بُعد في عمليات النشر في العالم الحقيقي.


المعالجة / التخفيف

1. استخدام بيئة Jinja2 المعزولة لعرض القوالب

root@kitploit:~
from jinja2.sandbox import SandboxedEnvironment

env = SandboxedEnvironment()
template = env.from_string("{{ config_value }}")
safe_value = template.render(config_value=user_input)

2. تقييد استخدام __@Format__ للقيم الموثوقة

root@kitploit:~
safe_value = "{name}".format(name=trusted_name)

المراجع

  • GHSA-pxrr-hq57-q35p
  • CVE-2026-33154 — NVD
  • dynaconf/dynaconf@2fbb45e
  • Dynaconf Release 3.2.13
تنزيل الأداة