
تحليل تقني وPoC منقّح لـ CVE-2026-43284 (Dirty Frag)، ثغرة في نواة لينكس xfrm-ESP تُمكّن من إفساد ذاكرة التخزين المؤقت للصفحات عبر استدعاء splice() وكتابات نافذة إعادة التشغيل الموضعية.
يحتوي هذا المستودع على رسم بياني تقني مُنظَّف وملاحظات داعمة لثغرة نواة لينكس المعروفة باسم Dirty Frag والمُتَتَبَّعة لمسار xfrm-ESP تحت CVE-2026-43284.
ينتمي هذا العيب إلى الفئة الأوسع Dirty Frag التي اكتشفها Hyunwoo Kim (@v4bel). ويتم تتبع متغير RxRPC ذي الصلة بشكل منفصل تحت CVE-2026-43500.
الغرض من هذه المواد هو:
splice() وشظايا skb والصفحات المدعومة بالملفات وفساد ذاكرة التخزين المؤقت للصفحات؛هذا المستودع ليس دليلاً للاستغلال.
من الناحية العملية، يقوم المستودع بتوسيع وتوثيق إثبات المفهوم الأصلي العام لـ Dirty Frag ESP بشكل يمكن فحصه بسهولة أكبر. المواد المضمنة مخصصة لأنظمة لينكس 64 بت فقط.
على مستوى عالٍ، يرتبط العيب بـ المعالجة الخاطئة في المكان في مسار استقبال xfrm ESP.
تبدو السلسلة كالتالي:
unshare(CLONE_NEWUSER | CLONE_NEWNET)؛/usr/bin/su إلى مسار حزمة UDP عبر splice() وSPLICE_F_MOVE؛skb؛
poc/dirtyfrag_sim.cpp — أثر مصدري بحثي بلغة C++ مُنظَّفpoc/dirtyfrag — أثر ثنائي مُجمَّع 64 بتdocs/dirtyfrag-flow.png — رسم بياني منشور مُولَّديتضمن المستودع أيضًا أثرًا ثنائيًا بلغة C++ مُجمَّعًا من ملف المصدر C++. مثال لأمر البناء:
g++ -std=c++17 -o poc/dirtyfrag poc/dirtyfrag.cpp
النوى من cac2661c53f3 (2017-01-17) حتى f4c50a4034e6 (2026-05-05، تم إصدار الإصلاح).
نافذة التعرض الفعلية حوالي 9 سنوات.
يتم توفير هذا المستودع لأغراض البحث الدفاعي والتوثيق والتحليل التعليمي فقط.
لا تستخدمه لاستهداف أنظمة حقيقية، أو تعديل الملفات التنفيذية المميزة، أو الحصول على وصول غير مصرح به.
تم اكتشاف فئة الثغرة بواسطة Hyunwoo Kim (@v4bel). هذا المستودع هو أثر بحثي مُنظَّف مستقل يهدف إلى التحليل الأسرع.
f4c50a4034e6