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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/retx0/cve-2026-20660
توليد الحمولةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراق
GitHubretx0/cve-2026-20660

CVE-2026-20660

استغلال PoC مستقل لثغرة CVE-2026-20660: اجتياز المسار في مفكك ترميز gzip في Safari. يقدّم الخادم ملف gzip خبيثًا لكتابة ملفات عشوائية على أنظمة macOS المعرّضة للخطر.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

حزمة PoC لـ CVE-2026-20660

يضم هذا المجلد إثبات مفهوم مستقلًا لما يلي:

  • CVE-2026-20660
  • تجاوز المسار في NSGZipDecoder (CFNetwork) عبر FNAME الخاص بـ gzip
  • التأثير على macOS Safari القابل للثغرة عند تفعيل الفتح التلقائي

1. هيكل الدليل

  • server.py: الخادم الرئيسي لـ PoC مع عمق تجاوز واسم هدف قابلين للضبط
  • server_overwrite.py: نسخة مركّزة تكتب ../../pwn.sh
  • README.md: ملاحظات إعادة الإنتاج وسجل التشغيل

2. المتطلبات المسبقة

  1. الهدف هو macOS Safari القابل للثغرة (قبل سلسلة تصحيح 26.3).
  2. إعداد Safari مفعّل:
    • التفضيلات -> عام -> فتح الملفات الآمنة بعد التنزيل
  3. يمكنك الوصول إلى هذا المضيف من المتصفح الهدف.

3. ملخص السبب الجذري

يُظهر فرق التصحيح أن -[NSGZipDecoder filenameWithOriginalFilename:] غيّر السلوك:

  • السلوك القديم: إرجاع الاسم المشتق من FNAME الخاص بـ gzip مباشرةً.
  • السلوك الجديد: تطبيق lastPathComponent قبل الإرجاع.

وهذا يمنع مكونات الدليل مثل ../ والمسارات المطلقة في FNAME.

4. لماذا لا يُعد Content-Disposition ناقل الهجوم

يمكن أن يكون اسم ملف HTTP سليمًا ومع ذلك ينجح الاستغلال.

  • اسم ملف Content-Disposition في HTTP: سليم (مثال: report.gz)
  • حقل FNAME في ترويسة gzip: خبيث (مثال: ../../proof.txt)

تطبق عملية التعقيم في جانب Safari بشكل أساسي على أسماء طبقة HTTP، وليس على FNAME المضمن في gzip الذي يستهلكه NSGZipDecoder في المسار القابل للثغرة.

5. بدء سريع

من جذر المستودع:

root@kitploit:~
python3 exploit/cve-2026-20660/server.py --port 8888 --depth 2

افتح في Safari القابل للثغرة:

root@kitploit:~
http://<server-ip>:8888/

انقر فوق Trigger depth=2.

6. التحقق

بعد التشغيل، تحقق من نتيجة الكتابة على الجهاز الهدف:

root@kitploit:~
ls -la ~/cve-2026-20660-proof.txt
cat ~/cve-2026-20660-proof.txt

بالنسبة لنسخة الكتابة فوق الملفات:

root@kitploit:~
python3 exploit/cve-2026-20660/server_overwrite.py --port 9999

ثم افتح:

root@kitploit:~
http://<server-ip>:9999/

تحقق:

root@kitploit:~
ls -la ~/pwn.sh
cat ~/pwn.sh

7. ملاحظات المعاملات (server.py)

  • --bind, -b: عنوان الربط (الافتراضي 0.0.0.0)
  • --port, -p: منفذ الاستماع (الافتراضي 8888)
  • --depth, -d: عمق التجاوز (عدد مرات تكرار ../، الافتراضي 2)
  • --name, -n: اسم ملف الإخراج الهدف

أمثلة:

root@kitploit:~
# write to ~/proof.txt when depth matches runtime directory nesting
python3 exploit/cve-2026-20660/server.py -p 8888 -d 2 -n proof.txt

# explicit absolute path test (if resolver permits)
python3 exploit/cve-2026-20660/server.py -p 8888
# then use: /download?depth=0&fname=/tmp/proof.txt

8. السلوك الملحوظ (ملاحظات حالية)

  1. قد يتم فك الضغط في دليل مؤقت داخل ~/Downloads، لذا غالبًا ما يلزم أن يكون العمق >= 2 للهروب إلى ~/.
  2. قد لا يتم استبدال الملفات الهدف الموجودة؛ فقد يعيد مكدس التنزيل تسميتها تلقائيًا لتجنب التعارضات.
  3. قد تظهر حمولات البرامج النصية ببتات تنفيذ في عمليات التشغيل الملحوظة؛ تحقق وفقًا للبناء/الإعداد.

9. استكشاف الأخطاء وإصلاحها

  1. عدم ملاحظة أي كتابة:
    • تأكد من تفعيل إعداد الفتح التلقائي في Safari.
    • زد العمق (2, 3, 4) وأعد الاختبار.
  2. بقاء الملف في Downloads:
    • العمق ضحل جدًا بالنسبة لتداخل دليل فك الضغط الحالي.
  3. فشل الاتصال:
    • تأكد من جدار حماية المضيف وإمكانية الوصول عبر الشبكة المحلية.
  4. عدم تغيّر المسار الهدف:
    • قد يؤدي تعارض أسماء الملفات الموجودة إلى إخراج مُعاد تسميته.

10. السلامة والنطاق

استخدم فقط في بيئات الاختبار المصرح بها.

  • لا تستهدف الأنظمة دون إذن صريح.
  • أبقِ الحمولات غير مدمرة لضمان قابلية إعادة الإنتاج.
  • احتفظ بلقطات الشاشة والسجلات كدليل للتقييم.

11. جمع الأدلة المقترح

  1. لقطة شاشة لإصدار Safari وبناء نظام التشغيل.
  2. سجلات وحدة تحكم خادم PoC (الطلب + FNAME).
  3. أوامر التحقق من نظام الملفات ومخرجاتها.
  4. قائمة الدليل قبل/بعد للمسار الهدف.

12. تقرير تفصيلي

للحصول على شرح أكثر تفصيلًا، انظر:

  • https://ret0.dev/posts/cve-2026-20660/
تنزيل الأداة