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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
log4shell-finder — أسرع ماسح لنظام الملفات لـ log4shell (CVE-2021-44228, CVE-2021-45046) وغيرها من الحالات الضعيفة (CVE-2017-5645, CVE-2019-17571, CVE-2022-23305, CVE-2022-23307 ... ) لمكتبة log4j. أداء ممتاز وبصمة ذاكرة منخفضة. | Kitploit
أدوات/GitHubGitHub/hynekpetrak/log4shell-finder
التحليل الثابتماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةتحليل الكودأمن سلسلة التوريدسوء التكوين
GitHubhynekpetrak/log4shell-finder

log4shell-finder

أسرع ماسح لنظام الملفات لـ log4shell (CVE-2021-44228, CVE-2021-45046) وغيرها من الحالات الضعيفة (CVE-2017-5645, CVE-2019-17571, CVE-2022-23305, CVE-2022-23307 ... ) لمكتبة log4j. أداء ممتاز وبصمة ذاكرة منخفضة.

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
عرض المستودع
391312منذ 3 سنواتتمت المراجعة من قبل Kitploit
مشاركة

log4shell-finder - أسرع ماسح لنظام الملفات للبحث عن مثيلات log4j

نسخة Python من https://github.com/mergebase/log4j-detector - log4j-detector حقوق النشر (C) 2021 شركة Mergebase Software Inc. https://mergebase.com/ مرخص بموجب GPLv3.

الدافع لتحويله إلى Python كان تحسين الأداء وتقليل استهلاك الذاكرة وزيادة وضوح الكود. انظر القسم أدناه حول مقارنة الأداء.

ويبدو أن هذه أسرع أداة مسح بأقل متطلبات ذاكرة

تحدد إصدارات log4j (1.x) و reload4j (1.2.18+) و log4j-core (2.x) على نظام الملفات لديك المعرضة لثغرات CVE-2021-44228 و CVE-2021-45046 وغيرها الكثير - انظر الجدول أدناه. يمكنها العثور على مثيلات مدمجة في تطبيقات أكبر بعدة طبقات عمقاً. تعمل على Linux و Windows و Mac أو أي مكان آخر يعمل عليه Python 3.8+.

يمكنها اكتشاف log4j بشكل صحيح داخل ملفات executable spring-boot jars/wars، والتبعيات المخلوطة في uber jars، و shaded jars، وحتى الملفات jar المفكوكة جالسة غير مضغوطة على نظام الملفات (المعروفة باسم *.class).
يمكنها أيضاً التعامل مع ملفات shaded class - امتدادات .esclazz (elastic) و .classdata (Azure).

ملحقات أرشيفات Java التي يتم البحث فيها: .zip، .jar، .war، .ear، .aar، .jpi، .hpi، .rar، .nar، .wab، .eba، .ejb، .sar، .apk، .par، .kar

الثغرات التي تم اكتشافها

يتم الكشفCVECVSSv3الخطورةJavaالثغرة منمعرض للإصدارات إلىتم الإصلاح فيالمكتبة
نعمCVE-2021-4422810.0حرجة82.0-beta92.14.12.15.0log4jv2
نعمCVE-2017-56459.8حرجة72.0-alpha12.8.12.8.2log4jv2
نعمCVE-2019-175719.8حرجة1.2.01.2.17nofixlog4jv1
نعمCVE-2021-450469.0حرجة7/82.0-beta92.15.0 باستثناء 2.12.22.12.2/2.16.0log4jv2
نعمCVE-2022-233059.8حرجة1.2.01.2.17nofix / 1.2.18.1log4jv1, reload4j
نعمCVE-2022-233079.8حرجة1.2.01.2.17nofix / 1.2.18.1log4jv1, reload4j
نعمCVE-2022-233028.8عالية1.01.2.17nofix / 1.2.18.1log4jv1, reload4j
نعمCVE-2021-41047.5عالية-1.01.2.17nofixlog4jv1
نعمCVE-2021-448326.6متوسطة6/7/82.0-alpha72.17.0، باستثناء 2.3.2/2.12.42.3.2/2.12.4/2.17.1log4jv2
-CVE-2021-425506.6متوسطة-1.01.2.71.2.8logback
نعمCVE-2021-451055.9متوسطة6/7/82.0-beta92.16.0، باستثناء 2.12.32.3.1/2.12.3/2.17.0log4jv2
-CVE-2020-94883.7منخفضة7/82.0-alpha12.13.12.12.3/2.13.2log4jv2

يتم الإبلاغ عن كل مثيل مع قائمة مناسبة من CVEs. لكل CVE، يتم تحليل ملف مكتبة log4j لمعرفة ما إذا كان قد تم تطبيق الحلول البديلة الموصى بها (مثل إزالة JndiLookup.class أو JMSAppender.class) وفي هذه الحالة يعتبر غير معرض للخطر. يتم الإبلاغ عن الحالة STRANGE للأرشيفات التي تحتوي على ملفات pom.properties الخاصة بـ log4j-core، ولكن بدون فئات bytecode الفعلية، وعادةً ما تكون هذه حزم مصدرية ويمكن تجاهلها.

تحذير ميزة --fix تجريبية، استخدمها على مسؤوليتك الخاصة، تأكد من عمل نسخة احتياطية من ملفات jar الخاصة بك قبل استخدامها.

الوسيطة --fix تحاول إعادة تسمية مثيلات JndiLookup.class إلى JndiLookup.vulne، وبالتالي تمنع تحميل الفئة. داخل أرشيفات Java يتم ذلك عبر إعادة التسمية في المكان، ولا يتطلب إعادة ضغط الأرشيف وسريع جداً.

الملفات الثنائية متاحة لـ Linux 64 بت، MS Windows 64 بت و 32 بت - انظر Releases

أقل إصدار Python مدعوم هو 3.8. وفقاً لاختباراتي، لا يمكن لتنفيذ zip في Python 3.6 فتح العديد من ملفات .jar من بيانات الاختبار الخاصة بي.

الأداء

تم تحسين log4shell finder للأداء واستهلاك منخفض للذاكرة.

تم التحديث في 23.1.2022، تم قياس الأداء على دليل يحتوي على 26237 ملفاً في 2005 مجلداً.

وقت التشغيل انخفض إلى النصف، استهلاك الذاكرة إلى 2/3، قراءات نظام الملفات بنسبة 90% على الأقل

log4shell-finder (هذه الأداة)

Command being timed: "./test_log4shell.py /home/hynek/war/ --exclude-dirs /mnt --same-fs"
User time (seconds): 17.68
System time (seconds): 1.20
Percent of CPU this job got: 127%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:14.47
Maximum resident set size (kbytes): 64144
File system inputs: 114424

log4j-finder (https://github.com/fox-it/log4j-finder)

Command being timed: "./log4j-finder.py /home/hynek/war/"
User time (seconds): 23.59
System time (seconds): 1.09
Percent of CPU this job got: 99%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.18
Maximum resident set size (kbytes): 38604
File system inputs: 142824

log4j-detector (https://github.com/mergebase/log4j-detector)

Command being timed: "java -jar log4j-detector-latest.jar /home/hynek/war"
User time (seconds): 30.56
System time (seconds): 1.39
Percent of CPU this job got: 113%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:28.26
Maximum resident set size (kbytes): 214116
File system inputs: 14416

log4j2-scan (https://github.com/logpresso/CVE-2021-44228-Scanner)

Command being timed: "./log4j2-scan /home/hynek/war --scan-log4j1 --scan-zip"
User time (seconds): 52.05
System time (seconds): 25.32
Percent of CPU this job got: 88%
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:27.86
Maximum resident set size (kbytes): 593080
File system inputs: 215416

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

الإصدار 1.22-20220222

  • تمت الإضافة: قراءة إصدار المكتبة واسمها (log4j، log4j-core، reload4j) من MANIFEST.MF وكذلك من pom.properties
  • تحسينات في الأداء بنسبة 15% إضافية
  • تمت الإضافة: الكشف التلقائي عن جميع الأقراص المحلية في mswin باستخدام المعامل all
  • تمت الإضافة: --no-csv-header لتجاهل رأس csv للسماح بدمج النتائج من عدة أجهزة بسهولة
  • تمت الإضافة: كشف CVE-2017-5645 (9.8)، CVE-2019-17571 (9.8)، CVE-2022-23307 (8.1)، CVE-2022-23305 (9.8)، CVE-2022-23305 (9.8)، CVE-2022-23302 (8.1)، تحسين كشف CVE-2017-5645
  • تمت الإضافة: معامل --threads لضبط عدد خيوط المسح يدوياً
  • تمت الإضافة: معامل --cvs-clean لكتابة سطر "CLEAN" إلى مخرجات csv في حالة عدم اكتشاف أي مكتبة log4j
  • تمت الإضافة: معامل --cvs-stats لكتابة سطر "STATS" إلى مخرجات csv مع وقت التشغيل بالثواني وعدد الملفات والمجلدات الممسوحة

الإصدار 1.21-20220109

  • إصلاح الخلل: أمر --fix في الإصدارين 1.19 و 1.20 قد يؤدي إلى إتلاف أرشيفات .jar.

للتغييرات السابقة انظر ملاحظات الإصدار

الاستخدام

قم إما بالتشغيل من مترجم Python أو استخدم الملفات الثنائية لنظامي Windows/Linux من مجلد dist.

احرص على تشغيله كمستخدم لديه صلاحية (قراءة على الأقل) لنظام الملفات بأكمله. يقوم log4shell-finder باجتياز المجلدات التي يمكنه الوصول إليها فقط، ولا يبلغ عن أخطاء رفض الصلاحية.

PS C:\D\log4shell_finder> python3 .\test_log4shell.py --help
usage:  Type "test_log4shell.py --help" for more information
        On Windows "test_log4shell.py c:\ d:\"
        On Linux "test_log4shell.py /"
تنزيل الأداة