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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2022-2869-detector — CodeQL كاشف للسبب الجذري لـ CVE-2022-2869 (CWE-191 تجاوز سفلي غير موقّع) باستخدام تحليل تدفق التحكم/النطاق لتحديد الأنماط القابلة للاستغلال دون ترميز دوال محددة بشكل ثابت. | Kitploit
أدوات/GitHubGitHub/halahajyahia/cve-2022-2869-detector
التحليل الثابتتحليل الثغرات الأمنيةتحليل الكودتحليل الملفات الثنائية
GitHubhalahajyahia/cve-2022-2869-detector

CVE-2022-2869-detector

CodeQL كاشف للسبب الجذري لـ CVE-2022-2869 (CWE-191 تجاوز سفلي غير موقّع) باستخدام تحليل تدفق التحكم/النطاق لتحديد الأنماط القابلة للاستغلال دون ترميز دوال محددة بشكل ثابت.

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
منذ 9س 56دلم تتم المراجعة بعد
مشاركة

كاشف CVE-2022-2869 باستخدام CodeQL

ينفّذ هذا المشروع كاشف CodeQL عامًا للضعف الجذري الكامن خلف CVE-2022-2869: عملية طرح بدون إشارة قد تسبب تجاوزًا سفليًا (underflow) لأن البرنامج لم يُنشئ حارسًا كافيًا للحد الأدنى/الترتيب قبل العملية الحسابية.

لماذا تختلف هذه النسخة عن الاستعلام السابق

يُبلّغ الكاشف عمدًا عن السبب الجذري (CWE-191) بدلًا من ترميز tiffcrop.c أو أسماء الدوال أو أسماء المتغيرات بشكل ثابت. يستخدم مكتبة Overflow القياسية في CodeQL، التي يعتمد استدلالها الحارس على تحليل تدفق التحكم/النطاق. لا يستخدم ترتيب أسطر الكود المصدري كبديل عن هيمنة تدفق التحكم.

الملفات

  • UnsignedUnderflow.ql — الكاشف الأساسي المطلوب تقديمه.
  • report.md — شرح الثغرة والاستعلام.
  • test/mini_tiffcrop_like.c — حالات غير آمنة شبيهة بـ CVE بالإضافة إلى حالات تحكم آمنة.
  • test/mini_tiffcrop_variant.c — اختلاف بنيوي إضافي مع حالة تحكم آمنة.
  • test/EXPECTED_RESULTS.md — السلوك الإيجابي/السلبي المقصود.
  • original/ORIGINAL_VALIDATION.md — ما يجب إثباته على LibTIFF القابل للاختراق.
  • تثبيت تبعيات حزمة الاستعلام

    من هذا الدليل:

    root@kitploit:~
    codeql pack install
    

    إنشاء قاعدة بيانات للاختبارات الصغيرة

    مثال على Linux/WSL:

    root@kitploit:~
    codeql database create db-tests \
      --language=cpp \
      --command="gcc -std=c11 -O0 -g test/mini_tiffcrop_like.c -o /tmp/test1 && gcc -std=c11 -O0 -g test/mini_tiffcrop_variant.c -o /tmp/test2"
    

    تشغيل الاستعلام:

    root@kitploit:~
    codeql query run UnsignedUnderflow.ql --database=db-tests
    

    عرض توضيحي وقت التشغيل باستخدام AddressSanitizer

    استعلام CodeQL هو تحليل ثابت. ASan هو دليل اختياري يُظهر عواقب الاختلافات المخصصة.

    root@kitploit:~
    gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_like.c -o mini1
    ./mini1                 # آمن
    ./mini1 unsafe-x2       # خطأ ذاكرة متوقع
    
    gcc -std=c11 -O0 -g -fsanitize=address test/mini_tiffcrop_variant.c -o mini2
    ./mini2                 # آمن
    ./mini2 unsafe          # خطأ ذاكرة متوقع
    

    التحقق الأصلي من LibTIFF

    أنشئ قاعدة بيانات CodeQL من مراجعة LibTIFF قابلة للاختراق (مثلًا 4.3.0)، ثم شغّل نفس استعلام UnsignedUnderflow.ql تمامًا على تلك القاعدة. التقط النتيجة في tools/tiffcrop.c، خاصةً computeInputPixelOffsets.

    يجب ألا يُعدَّل الكاشف ليذكر tiffcrop أو computeInputPixelOffsets أو x2 أو crop_width؛ وإلا فسيُفرط في تكييفه مع حالة CVE واحدة وسيفشل في تلبية متطلب الاختلاف في المهمة.

    تنزيل الأداة