
ثغرة رفع الصلاحيات في نواة xfs (CVE-2026-64600)، أُفصح عنها بواسطة Qualys في 22 يوليو 2026
(المعروفة أصلاً باسم RefluXFS أو CVE-2026-64600)
يصف الاسم الآلية:
ومع ذلك، تعود الفضول الرسمية إلى Qualys وثغرتهم RefluXFS (CVE-2026-64600)،
التي أُفصح عنها عبر oss-security.
صُنعت COWSlip بشكل مستقل عن الترقيع الذي وصل إلى فرع for-next في xfs.
اكتُشفت ثغرة RefluXFS الخاصة بـ Qualys قبل أسبوع وتم إصلاحها كـ null-day.
COWSlip هو إثبات مفهوم (PoC) ليوم واحد مبني على إصلاح XFS الذي شُحن في نشرة Red Hat
RHBA-2026:39332، والتي كانت
موسومة بـ [Exploits (KEV)] (في البداية).
بعد فحص kernel.spec وفرق SRPM، وُجد الترقيع المقابل في فرع XFS Linux for-next:
xfs: resample the data fork mapping after cycling ILOCK
كان التوقيت ملحوظاً: ظهر الإصلاح في تحديث نواة مؤسسية بعد فترة قصيرة من وصول التغيير المقابل إلى فرع التطوير. باختصار، يعالج الترقيع بدائية رفع الصلاحيات المحلية في XFS. تعتمد قابلية الاستغلال على تخطيط نظام الملفات وإعدادات setuid؛ وهي ذات صلة خاصة بتثبيتات عائلة RHEL التي تستخدم XFS لنظام ملفات الجذر.
يستهدف PoC نواة XFS قبل الإصلاح مع تمكين reflink، وهدف ELF موجود
مملوك للجذر مع setuid (/usr/bin/su افتراضياً)، ودليل استنساخ
قابل للكتابة من المستخدم على نفس نظام ملفات XFS. افتراضياً، الهدف هو /usr/bin/su
ودليل الاستنساخ هو /tmp/cowslip-clones، لذا يجب أن يكون /tmp على
نظام ملفات XFS ذلك. يتسابق مع كتابات CoW المتوافقة مع الإدخال/الإخراج المباشر
ضد استنساخات reflink، ويستبدل مسار مُفسّر ELF للهدف في الكتلة الأولى المتسابقة، ويشغّل
/bin/bash -p عندما ينفّذ الهدف ذو setuid المُحمّل.
البناء:
gcc -O2 -Wall -Wextra -pthread poc.c -o /tmp/cowslip
gcc -nostdlib -static-pie -s -Wl,-e,_start -o /tmp/cowslip-loader loader.S
مُحمّل static-PIE مطلوب لمسار نواة EL8 الأقدم؛ المُحمّل السابق ET_EXEC قد يحدث segfault قبل تشغيل الصدفة.
شغّله كمستخدم غير مميز مع وجود الهدف ودليل الاستنساخ على نفس نظام ملفات XFS المُمكّن بـ reflink:
/tmp/cowslip
عناصر التحكم الاختيارية هي POC_TARGET وPOC_TRIES وPOC_THREADS:
POC_TARGET=/usr/bin/su POC_TRIES=20000 POC_THREADS=32 /tmp/cowslip
لا يعيد PoC عمداً استعادة الهدف بعد الإصابة. من تسجيل دخول جذر عادي، أعد تثبيت الحزمة المالكة وتحقق منها:
dnf -y reinstall util-linux || yum -y reinstall util-linux
rpm -V util-linux
تشير نتيجة rpm -V الفارغة إلى أن ملفات الحزمة تطابق قاعدة بيانات
الحزمة المثبتة.
الأنوية المُختبرة:
6.12.0-211.33.1.el10_2: إصابة5.14.0-687.25.1.el9_8: إصابة5.14.0-687.26.1.el9_8: لا إصابة؛ هذه النواة تحتوي على إصلاح XFS4.18.0-553.143.1.el8_10: إصابة4.18.0-553.144.1.el8_10: لا إصابة؛ هذه النواة تحتوي على إصلاح XFSالإصلاح: xfs: resample the data fork mapping after cycling ILOCK
أُدخلت بواسطة 3c68d44a2b49a0 في v4.11؛ متأثرة حتى تطبيق إصلاح إعادة أخذ العينات.
يتطلب التشغيل نظام ملفات XFS مُمكّن بـ reflink، وهدف ELF مملوك للجذر مع setuid على نظام الملفات ذلك، ودليل على نفس نظام الملفات قابل للكتابة من المستخدم غير المميز.