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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2026-24688 — POC لـ CVE-2026-24688 | Kitploit
أدوات/GitHubGitHub/fomovet/cve-2026-24688
تحليل الثغرات الأمنيةتحليل الكودالاستغلالالاختبار العشوائيالتعلم والتعليم
GitHubfomovet/cve-2026-24688

cve-2026-24688

POC لـ CVE-2026-24688

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-24688 - pypdf - ثغرة رفض الخدمة بسبب المراجع الدائرية

يحتوي هذا المستودع على كود إثبات المفهوم لاستغلال الثغرة CVE-2026-24688.

ملخص

ثغرة حرجة في رفض الخدمة في منطق تحليل المخطط التفصيلي (الإشارات المرجعية) في pypdf. عند معالجة ملف PDF يحتوي على مراجع دائرية في المخطط التفصيلي، يدخل المحلل في حلقة لا نهائية تقوم باستمرار بتخصيص الذاكرة، مما يستهلك مئات الميغابايتات من الذاكرة في الثانية، على جهازي (TM)، ويؤدي إلى تعطل النظام بالكامل.

هذا هجوم رفض خدمة على مستوى النظام، وليس مجرد تعليق للتطبيق.


المحتويات

  • malicious_circular_outline.pdf - ملف PDF خبيث بمخطط تفصيلي دائري (754 بايت)
  • create_malicious_pdf.py - سكريبت لإنشاء ملف PDF الخبيث
  • simple_read_pdf.py - سكريبت اختبار بسيط لإعادة إنتاج الثغرة
  • test_pypdf.sh - سكريبت اختبار آلي (يثبت pypdf ويشغل الاختبار)
  • README.md - هذا الملف

تحذير: قد تتسبب هذه الاختبارات في تعطل نظامك إذا لم تراقب استهلاك الذاكرة وتلغيه في الوقت المناسب.


اختبار آلي (غير آمن)

root@kitploit:~
# Run the automated test script (with timeout protection)
chmod +x test_pypdf.sh
./test_pypdf.sh

# This will:
# 1. Install the vulnerable version of pypdf
# 2. Run test with 15-second timeout
# 3. Show memory consumption behavior

الاختبارات اليدوية

الاختبار 1: اختبار مُتحكم به (10 ثوانٍ مع مهلة)

root@kitploit:~
# Install pypdf (vulnerable version 6.6.0)
pip install "pypdf==6.6.0"

# Run with timeout
timeout 10s python3 simple_read_pdf.py malicious_circular_outline.pdf

الاختبار 2: اختبار تعطل كامل (غير آمن)

root@kitploit:~
# Install pypdf (vulnerable version 6.6.0)
pip install "pypdf==6.6.0"

# Run without timeout
python3 simple_read_pdf.py malicious_circular_outline.pdf

تفاصيل الثغرة

الكود القابل للاستغلال

الموقع: pypdf/_doc_common.py - دالة _get_outline() (السطور 858-873)

root@kitploit:~
def _get_outline(self, node, outline=None):
    while True:  # ❌ NO cycle detection!
        outline_obj = self._build_outline_item(node)
        if outline_obj:
            outline.append(outline_obj)  # ❌ Heap allocation in loop!
        
        if "/Next" not in node:
            break
        node = node["/Next"]  # ❌ Follows circular references

السبب الجذري: عدم وجود مجموعة للزيارة، ولا حد للتكرار، وتخصيص مستمر للذاكرة.


التأثير

نتائج الاختبار المؤكدة

اختبار واقعي:

  • النتيجة: تعطل النظام، إعادة تشغيل قسرية مطلوبة
  • المدة الزمنية: حوالي 5 دقائق لتوقف النظام بالكامل ()
  • الذاكرة: استهلاك أكثر من 30 جيجابايت
  • وحدات المعالجة المركزية: جميع الأنوية 100% (تباطؤ النظام)

خصائص الهجوم:

  • ✅ استخدام 100% لوحدة المعالجة المركزية (فوري)
  • ✅ نمو خطي للذاكرة
  • ✅ فشل على مستوى النظام
  • ✅ إعادة تشغيل قسرية مطلوبة
  • ✅ احتمال فقدان البيانات

الإصلاح

تم الإصلاح في الإصدار 6.6.2

https://github.com/py-pdf/pypdf/security/advisories/GHSA-2q4j-m29v-hq73

تنزيل الأداة