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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2026-98432-kernel-upgrade — ترقية آمنة للنواة لمعالجة CVE-2026-98432 على Ubuntu 24.04 مع NVIDIA، وتحليل للخطأ | Kitploit
أدوات/GitHubGitHub/bigbiuewhale/cve-2026-98432-kernel-upgrade
أدوات دفاعيةتحليل الثغرات الأمنيةالبرمجة النصية والأتمتةتدقيق التكوينتحليل الملفات الثنائيةالتعلم والتعليمالاستجابة للحوادث
GitHubbigbiuewhale/cve-2026-98432-kernel-upgrade

الأكثر شعبية

عرض الكل →

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

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

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

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

cve-2026-98432-kernel-upgrade

ترقية آمنة للنواة لمعالجة CVE-2026-98432 على Ubuntu 24.04 مع NVIDIA، وتحليل للخطأ

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

ترقية نواة CVE-2026-98432

تنقل هذه العملية جهازًا يعمل بنظام Ubuntu 24.04 مزوّدًا ببطاقة رسومات NVIDIA إلى نواة تُصلح CVE-2026-98432، وهي ثغرة استخدام بعد التحرير (use-after-free) في شيفرة IPv4 TCP الخاصة بالنواة. صُمّمت هذه العملية لجهاز قد لا تتمكن من الوصول إليه إذا فشلت الترقية: لا يُوثق بأي شيء حتى يُقلع النظام، وتتوقف أي خطوة فاشلة صراحةً بدلًا من ترك مضيف معطوب.

فضّل تحديثات Ubuntu العادية إذا كانت تتضمن الإصلاح. وُجد هذا الحل لأنه، في الحالة الطارئة التي كُتب من أجلها، كانت النواة المُصلحة الوحيدة عبارة عن إصدار ما قبل الإصدار في أرشيف staging الخاص بـ Canonical. أما أحدث نواة منشورة، 7.0.0-42، فكانت لا تزال تحوي العلّة.

هل تحتاج إلى هذا؟

لا تعتمد على رقم الإصدار. اقرأ شيفرة النواة قيد التشغيل نفسها باستخدام بوابة personal_server:

sudo bash scripts/14_verify_kernel_fixes.sh

يقرأ الشيفرة الآلية للنواة قيد التشغيل من الذاكرة الحية، وللنواة التي يُقلعها GRUB تاليًا من صورتها. في النواة المُصلَّحة، تستدعي inet_sock_destruct وtcp_v4_reqsk_destructor الدالة kvfree_call_rcu. وفي النواة المعرّضة للثغرة تستدعيان kfree.

إذا فشل ذلك، جرّب المسار العادي أولًا:

sudo apt-get update
sudo apt-get install --only-upgrade linux-generic-hwe-24.04
sudo systemctl reboot

استخدم هذا المستودع فقط إذا لم يكن ذلك يجلب نواة ثابتة.

كيفية الاستخدام

تحتاج إلى نسختك الخاصة، لأن العملية تنشر سجل التدقيق الخاص بها إلى Git أثناء تشغيلها. قم بعمل fork لهذا المستودع، وعلى الجهاز:

git clone <your fork> && cd <it>
kernel-upgrade/install.sh
sudo systemctl reboot

اسمح بنحو 8 دقائق لإعادة التشغيل. تعيد الآلة تشغيل نفسها مرتين إضافيتين، ولا تحتاج منك أي شيء:

uname -r                                       # must print 7.0.0-43-generic
python3 -I kernel-upgrade/upgrade.py status    # must say complete

إذا لم تكن الآلة مناسبة، يوضّح المثبّت السبب ولا يغيّر شيئًا. يحتوي kernel-upgrade/PROCEDURE.md على ما يحتاجه المضيف، وكل إخفاق وما ينبغي فعله بشأنه، وحدود الانهيار.

ما الذي يفعله

الإقلاعمن يبدأهالنواةما يحدث
1أنتنواة معروف أنها تعمل هنايُثبت أن GRUB يستطيع الكتابة إلى هذا القرص، لذا فإن الإقلاع لمرة واحدة هو فعلًا لمرة واحدة
2العملية، مرة واحدة-43، لمرة واحدة فقطيقرأ الإصلاح من ذاكرة النواة ويتحقق من كل ما كان لدى المضيف من قبل. يعود الانهيار إلى النواة المعروفة بسلام من تلقاء نفسه
3العملية، مرة واحدة-43، عبر GRUB الأصلييُثبت الحالة النهائية، مع استعادة GRUB الأصلي وإزالة كل نواة أخرى

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

  • complete تعني مُثبت. لا يُبلغ عن تلك الحالة إلا بعد إقلاع عبر حالة GRUB والنواة النهائية، ويصل السجل النهائي إلى Git قبل حفظ الحالة.
  • لا شيء مضمّن بشكل ثابت. يحدد lock.json ما ينبغي تثبيته ولا يحمل أي شيء عن أي آلة. تُقرأ النواة الاحتياطية وقوائم الإزالة وخط الأساس الصحي كلها من المضيف، وتُنشر قبل التغيير الأول.
  • الرفض لا يغيّر شيئًا. تُحاكى معاملة الحزم بأكملها أولًا.
  • النواة الاحتياطية أقلعت فعلًا هنا. إنها أحدث نواة سبق أن شغّلت initramfs الخاص بها بالضبط على هذا المضيف، ولا تُختار أبدًا نواة لم تُقلع قط.
  • لا شيء يُضاف إلى APT. لا مصدر ولا مفتاح ولا pin ولا hold. تُتحقق الحزم مقابل قفل تجزئة أينما جاءت.
  • كل خطوة مسجلة. تصل كل خطوة تغيّر المضيف إلى Git قبل تشغيلها وبعده، ولا يحتفظ root أبدًا ببيانات اعتماد Git. إذا توقف النشر، لا تبدأ أي خطوة أخرى.
  • انقطاع الكهرباء قابل للتجاوز في أي نقطة، باستثناء النوافذ التي يسميها PROCEDURE.md. يستمر الإقلاع التالي أو يتوقف صراحةً.

كيف جرى اختباره

يبني kernel-upgrade/vm/final-run.sh آلات اختبار UEFI من الصفر، بقرص NVMe محاكى بسعة 4 TB، ويشغّل المثبّت نفسه فيها. يسجّل test-report.json تجزئات ما نجح، ويرفض install.sh التشغيل إذا اختلف الكود عن ذلك التقرير.

تغطي السيناريوهات الـ24 انقطاعات كهرباء حقيقية أثناء الحزم، وأثناء التطهير النهائي وبعد السجل النهائي، وانهيارات النواة وتعليقها، وتعطّل GitHub في كل مرحلة، وآلة يجب رفضها. يبني from-zero آلة بالسكربت الحقيقي لـpersonal_server من أرشيف Ubuntu الحقيقي، ويرى البوابة ترفضها، ثم يرقّيها، ويرى البوابة تسمح بها. يحتاج from-zero إلى نسخة مستنسخة من personal_server بجوار هذا المستودع.

ما لا تستطيع الآلات الافتراضية إظهاره مذكور في PROCEDURE.md. أبرزها البرنامج الثابت الحقيقي، وهو ما يختبره الإقلاع 1 على الآلة نفسها.

أول استخدام حقيقي

جرى هذا على خادم متصل بالإنترنت بقرص NVMe بسعة 4 TB وRTX 5090 في 2026-11-02. لا تملك تلك الآلة وحدة تحكم عن بُعد، بل مفتاح طاقة على الشبكة فقط. نجح الإقلاع الأول عبر GRUB الأصلي في كل الفحوص، مع 7.0.0-43 كنواتها الوحيدة والإصلاح مؤكدًا في ذاكرة النواة الحية.

عملت النسخة الأولى من هذه العملية هناك لكنها لم تكن صحيحة. قتلتها systemd في آخر أجزاء من الثانية لديها، لأنها حذفت ملف وحدتها الخاص أثناء التشغيل. كما أعلنت نفسها complete قبل أن يُقلع GRUB الأصلي، وكانت تفاصيل تلك الآلة مضمّنة فيها. هذا المستودع هو إعادة البناء. ثم وجدت مراجعات مستقلة عيوبًا حقيقية أخرى قبل أن تعمل مجددًا، بما في ذلك فحص كان سيمنع كل مضيف NVMe حقيقي بعد تغيّر حزمه.

التخطيط

├── ANALYSIS.md                 what the bug is, what MPTCP changes, and the limits of that
├── upstream-fix.diff           the two-line upstream fix
├── filter/                     an interim packet filter. It reduces exposure and isn't a fix
└── kernel-upgrade/
    ├── PROCEDURE.md            the full procedure, failure table and crash boundary
    ├── install.sh              the entry point
    ├── upgrade.py              the controller and the audit publisher
    ├── lock.json               what to install, with hashes
    ├── cuda-probe.c            a real GPU allocation, for the health check
    ├── test_upgrade.py         logic tests against a real Git remote
    ├── test-report.json        what passed, and the exact bytes it covered
    ├── test-evidence/          the journal of each VM scenario
    └── vm/                     the VM test harness

الكود مُصدَر بموجب Unlicense. تحتفظ الحزم بتراخيصها الخاصة. يحتوي الإصدار على حزم نواة Canonical وdkms، لأن أرشيف التجهيز يحذف عمليات البناء القديمة. لا تُعاد توزيع حزم NVIDIA هنا: فهي تأتي من أرشيف Ubuntu الخاص بك.

تنزيل الأداة