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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
ovpn-kernel-backport — إصلاح نواة OpenVPN من المنبع لـ CVE-2026-74727، تم اختباره على نواة Ubuntu 7.0.0-38.38. يتضمن تعليمات البناء ونتائج الاختبار الوظيفي. | Kitploit
أدوات/GitHubGitHub/kosifuchs/ovpn-kernel-backport
تحليل الثغرات الأمنيةتحليل الكودأمن الشبكاتالأوراق والأبحاث
GitHubkosifuchs/ovpn-kernel-backport

ovpn-kernel-backport

إصلاح نواة OpenVPN من المنبع لـ CVE-2026-74727، تم اختباره على نواة Ubuntu 7.0.0-38.38. يتضمن تعليمات البناء ونتائج الاختبار الوظيفي.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

مراجعة backport لوحدة نواة OpenVPN

توثيق لعملية بناء محلي، واختبارات وظيفية، ومراجعة مصدرية مركّزة، واختبارات انحدار حتمية لثوابت إعادة التجزئة (rehash) الخاصة بعنوان IP للـ VPN ونقطة نهاية النقل، للإصلاح upstream المرتبط بـ CVE-2026-74727، مقابل حزمة مصدر نواة Ubuntu linux 7.0.0-38.38 على x86_64. كما أُعيد بناء اختبارات نقطة نهاية النقل وتشغيلها على نواة Generic KASAN مبنية محليًا.

الإسناد والنطاق

هذه مراجعة backport لإصلاح upstream قائم، وليست ثغرة مكتشفة حديثًا ولا إصلاحًا أمنيًا أصليًا. المؤلف المسجَّل في upstream هو Antonio Quartulli. الـ commit المسجَّل هو 33ec10567fe14456063daf549fdf1a4f53448e4c.

رقع upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/patch/?id=33ec10567fe14456063daf549fdf1a4f53448e4c

التغيير في drivers/net/ovpn/peer.c يمنع إعادة تجزئة (rehash) نظير (peer) سبق إزالته من جدول تجزئة معرّف النظير (peer ID). حافظ على ترويسات الرقعة الأصلية والإسناد والترخيص عند توزيعها. هذا التوثيق لا يعيد ترخيص رقعة النواة.

الرقعة الأصلية من upstream مضمّنة بايتًا ببايت. بصمة SHA-256 الخاصة بها تطابق الأثر المستخدم في جلسة الاختبار المسجَّلة. تم التحقق من مؤلفها ورسالة الـ commit وتغييرات الشيفرة مقابل الـ commit العام في upstream على GitHub. لا يتضمن أي ملف ثنائي.

المجاميع الاختبارية المسجَّلة

تم التحقق من مجموع التحقق الاختباري للرقعة بشكل مستقل مقابل الملف المضمَّن. سُجِّل مجموع التحقق الاختباري للوحدة أثناء جلسة اختبار المشغّل؛ ولا يُوزَّع الملف الثنائي هنا.

الأثرSHA-256
CVE-2026-74727-upstream.patchbaf0962c60b182776a86e040d2ec5b35eea2737c2e2eb6f17f87eb7d2fe47b24
ovpn.ko المُختبَر0853fdce14ce1c4d64857871dc873bf98a1b8fe8243bf042ad6daffc906e6d27

التطبيق والبناء

استخدم نسخة مستخرجة منفصلة من حزمة المصدر الدقيقة لـ Ubuntu linux 7.0.0-38.38. ثبّت ترويسات النواة المطابقة وسلسلة أدوات البناء أولًا. كان المترجم المسجَّل هو Ubuntu GCC 15.2.0-16ubuntu1، مطابقًا لمترجم النواة قيد التشغيل.

من جذر المصدر، مع وجود الرقعة في الدليل الأب:

patch --dry-run --batch --forward --fuzz=0 -p1 < ../CVE-2026-74727-upstream.patch
patch --batch --forward --fuzz=0 -p1 < ../CVE-2026-74727-upstream.patch
make -C /lib/modules/7.0.0-38-generic/build \
  M="$PWD/drivers/net/ovpn" CONFIG_OVPN=m \
  CC=x86_64-linux-gnu-gcc -j1 modules

استخدم تطبيق الرقعة المسجَّل صفر fuzz مع إزاحات أسطر قدرها -6 و-5. أعاد البناء رمز الخروج 0. تم تخطي توليد BTF لأن vmlinux لم يكن متاحًا. طابق vermagic الخاص بالوحدة 7.0.0-38-generic SMP preempt mod_unload modversions.

لا يُثبت تطابق vermagic ونجاح البناء أن الوحدة آمنة أو أن الثغرة قد تم التحقق منها بالكامل.

الاختبارات الوظيفية المسجَّلة

أُجريت الاختبارات يدويًا على جهاز Hyper-V افتراضي يعمل بنظام Ubuntu بنواة 7.0.0-38-generic مع تعطيل Secure Boot. تستند النتائج إلى مخرجات الطرفية التي قدّمها المشغّل:

  • تم تحميل وحدة الاختبار وطابق build-ID الخاص بها build-ID الخاص بالوحدة المحمّلة.
  • أعاد اتصال OpenVPN DCO القائم الاتصال بنجاح.
  • دعمت مساحة أسماء شبكة منفصلة إنشاء واجهة MP وحذفها.
  • أمكن إنشاء نظير اختبار والاستعلام عنه وتكوينه وحذفه.
  • غيّر CLI اختبار معدَّل عنوان IPv4 الخاص بـ VPN لنظير اختبار من 192.0.2.2 إلى 192.0.2.3؛ وأكدت حالة النظير المُعادة التغيير. اقتصر ذلك على مساحة أسماء اختبار مؤقتة ولم يغيّر عنوان VPN التشغيلي.
  • لم يحتوي سجل النواة الذي تمت مراجعته على رسائل BUG أو Oops أو KASAN أو general protection fault أو soft lockup مطابقة. كانت رسائل تلوث الوحدات خارج الشجرة غير الموقّعة موجودة.
  • أُزيلت مساحات أسماء الاختبار وأُعيد تحميل وحدة التوزيع بعد الاختبار. وأُعيد اتصال VPN التشغيلي.

اختبار انحدار إعادة تجزئة VPN-IP الحتمي

في 2026-10-06، نفّذت وحدتا اختبار مستقلتان الدالة الفعلية ovpn_peer_hash_vpn_ip() المستخرجة من النسخة الاحتياطية غير المرقّعة والمصدر المرقّع. أُبقيت الكائنات الاصطناعية الخاصة مخصَّصة طوال الوقت. بعد محاكاة إزالة مكتملة من جداول التجزئة، استدعى الاختبار الدالة مرة أخرى تحت ovpn->lock.

الخاصيةقبل الرقعةبعد الرقعة
النظير النشط مُدخَل في جدولي IPv4 وIPv6PASSPASS
النظير المُزال يبقى خارج جدولي IPv4 وIPv6FAILPASS
دلاء IPv4 / IPv6 المشغولة بعد إعادة تجزئة النظير المُزال1 / 10 / 0

هذا فحص وقت تشغيل للثابت المحدد بعد الإزالة، وليس إعادة إنتاج لحالة تسابق حذف متزامن أو use-after-free. فشل الثابت في خط الأساس متوقع ويُظهر أن الاختبار يميّز بين نسختي الدالة. أُفرغت الوحدتان لاحقًا. بقي VPN التشغيلي نشطًا مع عدم تغيّر عنوانه. احتوى فاصل السجل الذي تمت مراجعته على نتائج الاختبار ولم يحتوي على رسائل BUG أو Oops أو general protection fault أو soft lockup مطابقة.

راجع TESTING.md للاطلاع على المخرجات المسجَّلة وتعليمات إعادة الإنتاج والقيود. يوجد المولّد في tests/prepare-ovpn-rehash-regtest.py.

اختبار انحدار نقطة نهاية النقل / float الحتمي

في 2026-10-06، نفّذت وحدات اختبار مستقلة أيضًا الدالة الفعلية ovpn_peer_endpoints_update() المستخرجة من المصادر غير المرقّعة والمرقّعة، مع مساعدات الربط الإنتاجية. بالنسبة لكل من IPv4 وIPv6، تسببت رؤوس حزم اصطناعية خاصة في أن يطفو نظير نشط، ثم تسببت في تحديث آخر لنقطة النهاية بعد إزالة إدخالات التجزئة الخاصة به بينما بقي تخزينه مخصَّصًا.

الخاصية، لكل من IPv4 وIPv6قبل الرقعةبعد الرقعة
النظير النشط يطفو ويبقى في جدول النقلPASSPASS
يُبلَغ تحديث نقطة النهاية بعد إزالة مُحاكاةPASSPASS
النظير المُزال يبقى خارج جدول النقلFAILPASS
دلاء النقل المشغولة بعد تحديث النظير المُزال10

لم تُرسَل أي حزم، ولم تُعدَّل أي واجهات أو نظائر VPN أو عناوين حقيقية. أُفرغت وحدتا الاختبار بعد ذلك؛ وبقي VPN التشغيلي نشطًا مع عدم تغيّر عنوانه. احتوى فاصل السجل الذي تمت مراجعته على نتائج الاختبار الأربع ولم يحتوي على أسطر BUG أو Oops أو general protection fault أو soft lockup مطابقة.

راجع FLOAT-TESTING.md وtests/prepare-ovpn-float-regtest.py للاطلاع على النطاق وتعليمات إعادة الإنتاج والنتائج المسجَّلة.

تشغيل KASAN إضافي ومراجعة المصدر

في 2026-10-06، تم بناء مصدر Ubuntu المراجَع كنواة كاملة باستخدام CONFIG_KASAN=y وCONFIG_KASAN_GENERIC=y وCONFIG_KASAN_OUTLINE=y وCONFIG_STACKTRACE=y. وكانت سلسلة الإصدار الخاصة به 7.0.14-ovpn-kasan. أعادت عمليات بناء النواة والوحدات رمز الخروج 0. أقلعت الآلة الافتراضية بهذه النواة وكانت خدمة VPN الإدارية الخاصة بها نشطة.

أُعيد بناء وحدات float الاصطناعية الموجودة مقابل ذلك البناء الكامل، وتم التحقق منها عبر checksum وvermagic بعد النقل. بقيت نتائج IPv4 وIPv6 دون تغيير: نجحت فحوصات active-peer وendpoint-update في كلا المتغيرين؛ وفشل ثابت removed-peer في النسخة الأساسية ونجح في النسخة المُرقَّعة. لم يظهر أي خطأ KASAN في سجل الاختبار المُفلتر المُقدَّم. هذا تنفيذ للاختبار الاصطناعي مع تمكين KASAN، وليس إعادة إنتاج KASAN لخطأ use-after-free الأصلي. لم يُعَد تشغيل اختبار VPN-IP-only تحت KASAN.

تم تفريغ وحدات الاختبار من الذاكرة. عادت الآلة الافتراضية بعد ذلك إلى نواة التوزيعة 7.0.0-38-generic، وتم التأكد من أن VPN الإدارية نشطة. تبقى نواة الاختبار المثبَّتة بشكل منفصل ووحداتها متاحة للاختبار المستقبلي؛ ونواة التوزيعة مُهيأة كخيار GRUB الافتراضي.

راجع KASAN-TESTING.md للاطلاع على التهيئة والنتائج الدقيقة وتجزئات المخرجات والقيود. وراجع SOURCE-REVIEW.md لمراجعة الأقفال والمراجع ومسار التحرير المركزة بناءً على مقتطفات المصدر التي قدّمها المشغّل.

القيود

تنزيل الأداة