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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-46242 — مدقق إثبات مفهوم (PoC) لمعمارية Aarch64 لثغرة CVE-2026-46242 'Bad Epoll'، يستغل سباق الاستخدام بعد التحرير (use-after-free) بين عمليات الإغلاق مقابل الإغلاق (close-vs-close) في epoll بنواة لينكس للتحقق من تصعيد الامتيازات المحلي. | Kitploit
أدوات/GitHubGitHub/binarymasc/cve-2026-46242
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال الملفات الثنائية
GitHubbinarymasc/cve-2026-46242

CVE-2026-46242

مدقق إثبات مفهوم (PoC) لمعمارية Aarch64 لثغرة CVE-2026-46242 'Bad Epoll'، يستغل سباق الاستخدام بعد التحرير (use-after-free) بين عمليات الإغلاق مقابل الإغلاق (close-vs-close) في epoll بنواة لينكس للتحقق من تصعيد الامتيازات المحلي.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-46242 — "Bad Epoll"

هذا المستودع هو مُدقِّق لثغرة Bad Epoll لأنوية aarch64، استنادًا إلى استغلال موجود مسبقًا لمعمارية x86.

تصعيد محلي للامتيازات في نواة لينكس عبر حالة سباق استعمال-بعد-التحرير في epoll

الحقلالتفاصيل
CVECVE-2026-46242
الاسم المستعارBad Epoll
النوعاستعمال بعد التحرير (UAF) عبر حالة سباق
CVSS7.8 (عالٍ)
الأثرتصعيد محلي للامتيازات → صلاحيات الجذر
الأنوية المتأثرة5.10 – 6.11 (LTS & COS)
النظام الفرعيfs/eventpoll.c (ep_remove() / مسار الإغلاق)

ملخص الثغرة

توجد حالة سباق في نظام epoll بنواة لينكس أثناء تنفيذ عمليات close() المتزامنة على واصفات الملفات المُراقَبة والمُراقِبة. عند تنفيذ مساري إغلاق في الوقت نفسه:

  1. يقوم أحد المسارين بتحرير كائن eventpoll عبر ep_remove().
  2. بينما يقع تعليق hlist_del_rcu() المُعلَّق للمسار الآخر على ذاكرة تم تحريرها بالفعل.

ينتج عن ذلك استعمالٌ بعد التحرير يُفسد قائمة refs الخاصة بكائن eventpoll المُستعاد، تاركًا مؤشرًا مُعلَّقًا epi->ffd.file في كائن انتظار epoll الناجي — وهو الأساس لسلسلة الاستغلال الكاملة.


سلسلة الاستغلال

root@kitploit:~
┌─────────────────────────────────────────────────────────┐
│ 1. KASLR Leak       (prefetch side-channel via libxdk)  │
├─────────────────────────────────────────────────────────┤
│ 2. Race Trigger      (close-vs-close UAF on eventpoll)  │
│    ├─ Adaptive timer: stat/exec phases calibrate ahead  │
│    ├─ False-sharing:  dup()+close() widens race window  │
│    └─ Oracle:         EPOLL_CTL_ADD depth-3 → ELOOP?    │
├─────────────────────────────────────────────────────────┤
│ 3. Reclaim           (freed eventpoll → ep_uaf_target)  │
│    └─ Dangling epi->ffd.file in ep_uaf_waiter           │
├─────────────────────────────────────────────────────────┤
│ 4. Cross-Cache       (filp slab → buddy → pipe_buffer)  │
│    ├─ Drain per-CPU partial list                        │
│    ├─ Free enclosing objects → slab page freed          │
│    └─ Reclaim as pipe pages (256 × 4 KiB)              │
├─────────────────────────────────────────────────────────┤
│ 5. Constrained AAR   (fdinfo ino:/sdev: as read oracle) │
│    ├─ Fake file spray tiles forged struct file in pipe  │
│    ├─ 8B read: ino: ← i_ino at controlled offset       │
│    ├─ 4B read: sdev: ← sigaltstack(sas_ss_sp) cursor   │
│    └─ Walk: init_task → find exploit task → resolve     │
│       files → fdt → fd[] → pipe_buffer → struct page   │
├─────────────────────────────────────────────────────────┤
│ 6. RIP Control       (f_op→poll hijack → JOP → ROP)    │
│    ├─ Forge f_op = virt, f_count = virt - 1             │
│    ├─ JOP pivot chain lands rsp on controlled page      │
│    └─ libxdk ROP: commit_creds(init_cred) + ns switch  │
├─────────────────────────────────────────────────────────┤
│ 7. Ret2Usr           execve("/bin/bash") as root        │
└─────────────────────────────────────────────────────────┘

البناء

root@kitploit:~
# aarch64 (cross-compile or native)
aarch64-linux-gnu-gcc -O2 -Wall -pthread -march=armv8-a \
    race_check_aarch64.c -o race_check

الاستخدام

root@kitploit:~
./race_check [timeout_seconds]   # default: 300s (5 min)
./race_check 120                 # 2-minute timeout

رموز الخروج

الرمزالمعنى
0السباق مُربَح — النواة قابلة للاستغلال
1انتهت المهلة — لم يُرصد السباق (قد تكون نتيجة سلبية خاطئة، ولا تُثبت أن النواة مُصَحَّحة)

المراجع

  • الإثبات الأصلي (PoC) — J-jaeyoung
  • NVD — CVE-2026-46242

⚠️ إخلاء مسؤولية: هذا المستودع مُقدَّم لأغراض التعليم والبحث الأمني المصرَّح به فقط. الاستخدام غير المصرَّح به لهذا الاستغلال ضد أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها غير قانوني.

تنزيل الأداة