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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2021-45046 — إعادة إنتاج CVE-2021-45046 | Kitploit
أدوات/GitHubGitHub/tejas-nagchandi/cve-2021-45046
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالأوراق والأبحاثالتعلم والتعليم
GitHubtejas-nagchandi/cve-2021-45046

CVE-2021-45046

إعادة إنتاج CVE-2021-45046

عرض المستودع
1منذ 4 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

tejas-nagchandi/CVE-2021-45046

الهجوم

image

الوصف

تم اكتشاف أن الإصلاح الذي عالج الثغرة CVE-2021-44228 في Apache Log4j 2.15.0 كان غير مكتمل في بعض التهيئات غير الافتراضية. قد يسمح هذا للمهاجمين الذين يتحكمون في بيانات إدخال Thread Context Map (MDC) عندما تستخدم تهيئة التسجيل نمط تخطيط غير افتراضي مع Context Lookup (مثل $${ctx:loginId}) أو نمط Thread Context Map ( %X, %mdc, أو %MDC ) لصياغة بيانات إدخال ضارة باستخدام نمط JNDI Lookup مما يؤدي إلى هجوم رفض الخدمة (DOS). يقوم Log4j 2.15.0 ببذل أقصى جهد لتقييد استعلامات JNDI LDAP إلى المضيف المحلي (localhost) بشكل افتراضي. يقوم Log4j 2.16.0 بإصلاح هذه المشكلة عن طريق إزالة دعم أنماط البحث في الرسائل وتعطيل وظائف JNDI بشكل افتراضي.

ما هو Thread Context؟

قدم Log4j مفهوم Mapped Diagnostic Context أو MDC.

يستمر Log4j 2 في فكرة MDC و NDC ولكنه يدمجهما في Thread Context واحد. Thread Context Map هو المكافئ لـ MDC، و Thread Context Stack هو المكافئ لـ NDC. على الرغم من أن هذه تُستخدم غالبًا لأغراض غير تشخيص المشكلات، إلا أنها لا تزال تُشار إليها غالبًا باسم MDC و NDC في Log4j 2 نظرًا لشهرتها بهذه الاختصارات.

Fish Tagging (وسم الأسماك)

معظم الأنظمة الواقعية تتعامل مع عدة عملاء في وقت واحد. في تطبيق نموذجي متعدد الخيوط لمثل هذا النظام، تتعامل خيوط مختلفة مع عملاء مختلفين. التسجيل مناسب بشكل خاص لتتبع وتصحيح التطبيقات الموزعة المعقدة. إحدى الطرق الشائعة لتمييز مخرجات التسجيل لعنوان عن آخر هي إنشاء مسجل منفصل جديد لكل عميل. وهذا يعزز انتشار المسجلين ويزيد من عبء إدارة التسجيل.

هناك تقنية أخف وهي وضع طابع فريد على كل طلب تسجيل ينشأ من نفس تفاعل العميل. وصف Neil Harrison هذه الطريقة في كتاب "Patterns for Logging Diagnostic Messages" في Pattern Languages of Program Design 3، تحرير R. Martin و D. Riehle و F. Buschmann (Addison-Wesley, 1997). كما يمكن وضع علامة على السمكة وتتبع حركتها، فإن وضع طابع على أحداث التسجيل بعلامة مشتركة أو مجموعة من عناصر البيانات يسمح بتتبع التدفق الكامل لمعاملة أو طلب. نسمي هذا Fish Tagging.

يوفر Log4j آليتين لأداء Fish Tagging: Thread Context Map و Thread Context Stack. يسمح Thread Context Map بإضافة أي عدد من العناصر وتحديدها باستخدام أزواج مفتاح/قيمة. يسمح Thread Context Stack بدفع عنصر واحد أو أكثر إلى المكدس ثم يتم تحديدها حسب ترتيبها في المكدس أو حسب البيانات نفسها. نظرًا لأن أزواج المفتاح/القيمة أكثر مرونة، يُوصى باستخدام Thread Context Map عندما يتم إضافة عناصر البيانات أثناء معالجة الطلب أو عندما يكون هناك أكثر من عنصر أو اثنين.

لوضع طابع فريد على كل طلب باستخدام Thread Context Stack، يدفع المستخدم المعلومات السياقية إلى المكدس.

المرجع

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45046 https://logging.apache.org/log4j/2.x/manual/thread-context.html

تنزيل الأداة