In the Linux kernel, the following vulnerability has been resolved:
gve: defer interrupt enabling until NAPI registration
Currently, interrupts are automatically enabled immediately upon
request. This allows interrupt to fire before the associated NAPI
context is fully initialized and cause failures like below:
[ 0.946369] Call Trace:
[ 0.946369] <IRQ>
[ 0.946369] __napi_poll+0x2a/0x1e0
[ 0.946369] net_rx_action+0x2f9/0x3f0
[ 0.946369] handle_softirqs+0xd6/0x2c0
[ 0.946369] ? handle_edge_irq+0xc1/0x1b0
[ 0.946369] __irq_exit_rcu+0xc3/0xe0
[ 0.946369] common_interrupt+0x81/0xa0
[ 0.946369] </IRQ>
[ 0.946369] <TASK>
[ 0.946369] asm_common_interrupt+0x22/0x40
[ 0.946369] RIP: 0010:pv_native_safe_halt+0xb/0x10
Use the `IRQF_NO_AUTOEN` flag when requesting interrupts to prevent auto
enablement and explicitly enable the interrupt in NAPI initialization
path (and disable it during NAPI teardown).
This ensures that interrupt lifecycle is strictly coupled with
readiness of NAPI context.
CVE-2025-71156 is a Linux kernel vulnerability in the Google Virtual Ethernet (GVE) driver affecting kernel versions up to 6.19-rc3. The vulnerability allows interrupts to fire before NAPI (New API) context initialization is complete, causing kernel panics and system instability. This race condition has a CVSS score of 7.8 (high) and impacts cloud infrastructure and virtualized environments commonly used by Saudi organizations.
Immediate Actions:
1. Identify systems running affected Linux kernel versions (6.19-rc1 through 6.19-rc3 and earlier versions with GVE driver)
2. Check kernel version: uname -r
3. Verify GVE driver presence: lsmod | grep gve
Patching Guidance:
1. Update to Linux kernel 6.19-rc4 or later, or apply the official patch that implements IRQF_NO_AUTOEN flag
2. For production systems, coordinate with cloud provider (GCP) for kernel updates
3. Test patches in non-production environment first
4. Schedule maintenance windows for kernel updates to minimize service disruption
Compensating Controls (if immediate patching unavailable):
1. Implement network redundancy and failover mechanisms
2. Enable kernel panic monitoring and automatic restart: echo 10 > /proc/sys/kernel/panic
3. Monitor system logs for GVE driver errors: journalctl -u kernel | grep gve
4. Implement rate limiting on interrupt-heavy workloads
Detection Rules:
1. Monitor for kernel panic messages containing 'napi_poll' or 'gve' in system logs
2. Alert on unexpected system reboots or service interruptions
3. Track GVE driver error rates and interrupt handling anomalies
4. Implement kernel module integrity checking for gve driver
الإجراءات الفورية:
1. تحديد الأنظمة التي تعمل بإصدارات نواة Linux المتأثرة (6.19-rc1 إلى 6.19-rc3 والإصدارات السابقة مع برنامج تشغيل GVE)
2. التحقق من إصدار النواة: uname -r
3. التحقق من وجود برنامج تشغيل GVE: lsmod | grep gve
إرشادات التصحيح:
1. التحديث إلى نواة Linux 6.19-rc4 أو أحدث، أو تطبيق الرقعة الرسمية التي تطبق علم IRQF_NO_AUTOEN
2. للأنظمة الإنتاجية، التنسيق مع مزود الخدمة السحابية (GCP) لتحديثات النواة
3. اختبار الرقع في بيئة غير الإنتاج أولاً
4. جدولة نوافذ الصيانة لتحديثات النواة لتقليل انقطاع الخدمة
الضوابط البديلة (إذا لم يكن التصحيح الفوري متاحاً):
1. تطبيق التكرار والفشل على مستوى الشبكة
2. تفعيل مراقبة الذعر في النواة وإعادة التشغيل التلقائي: echo 10 > /proc/sys/kernel/panic
3. مراقبة سجلات النظام لأخطاء برنامج تشغيل GVE: journalctl -u kernel | grep gve
4. تطبيق تحديد معدل على أحمال العمل الثقيلة على المقاطعات
قواعد الكشف:
1. مراقبة رسائل الذعر في النواة التي تحتوي على 'napi_poll' أو 'gve' في سجلات النظام
2. التنبيه على إعادة تشغيل النظام غير المتوقعة أو انقطاع الخدمة
3. تتبع معدلات أخطاء برنامج تشغيل GVE والشذوذ في معالجة المقاطعات
4. تطبيق فحص سلامة وحدة النواة لبرنامج تشغيل gve