
إصلاح دائم لإعادة تثبيت برنامج التشغيل الضعيف WinRing0 في Intel NUC (CVE-2020-14979) عبر Windows Update
يقوم Windows Defender بوضع علامة على OpenHardwareMonitorLib.sys (برنامج تشغيل WinRing0) كـ VulnerableDriver:WinNT/Winring0 بسبب CVE-2020-14979. يتم تضمين هذا البرنامج مع خدمة Intel NUC Software Studio ويتم إعادة تثبيته عبر Windows Update.
يوفر هذا المستودع حلاً دائماً.
performancedriverextension.inf من Intel بتثبيت NucSoftwareStudioServiceOpenHardwareMonitorLib.sys (برنامج تشغيل نواة WinRing0)Intel Corporation - Extension - 1.0.0.38 بإعادة تثبيته باستمراريقوم برنامج تشغيل أداء Intel NUC (ACPI\INTC1036) بتعريف جهاز ACPI يكشف عن ميزات خاصة بـ NUC:
يتصل الامتداد الضعيف ببرنامج التشغيل الأساسي هذا. يرى Windows Update الجهاز ويقدم تحديثات برنامج التشغيل له.
يقوم هذا بتعطيل جهاز ACPI بالكامل عبر Group Policy، مما يمنع تحميل أي برامج تشغيل.
قم بتشغيل scripts/disable-device-gpo.ps1 كمسؤول، أو يدوياً:
# Run as Administrator
.\scripts\disable-device-gpo.ps1
يحافظ على برنامج التشغيل الأساسي ولكنه يمنع جميع تثبيتات تحديثات برنامج التشغيل من Windows Update لهذا الجهاز.
المقايضات:
قم بتشغيل scripts/block-driver-updates.ps1 كمسؤول.
أقل ديمومة - يتطلب إعادة الإخفاء إذا أصدر Intel إصدارات جديدة.
قم بتشغيل scripts/remove-and-hide.ps1 كمسؤول.
تحقق من حالتك الحالية:
.\scripts\diagnose.ps1
| المكون | المسار |
|---|---|
| ملف الخدمة القابل للتنفيذ |
بعد تطبيق أي حل، تحقق:
# Check service is gone
sc.exe query NucSoftwareStudioService
# Check no pending Intel extension updates
# (Run scripts/diagnose.ps1 for full status)
السيناريو: التحقق من أن حظر جهاز Group Policy (الخيار أ) يصمد أمام محاولة Windows Update لتثبيت برنامج التشغيل الضعيف.
إجراءات الاختبار:
ACPI\INTC1036 (الجهاز معطل)النتائج بعد تثبيت Windows Update للحزمة:
الاكتشاف الرئيسي: حظر جهاز GPO هو طبقة الحماية الفعالة. يمكن لـ Windows Update تخزين حزمة برنامج التشغيل في مخزن برامج التشغيل، لكنه لا يمكنه التفعيل لأن معرف الجهاز محظور. لا يتم استخراج ملف .sys الضعيف أو تحميله أبداً.
بعد تأكيد ثبات حظر GPO، تم إكمال التنظيف الكامل:
pnputil /delete-driver oem17.infwushowhide.diagcabالحالة النهائية الموثقة:
حظر معرف الجهاز وحده حماية كافية.
أثبت الاختبار أن حظر ACPI\INTC1036 عبر Group Policy يمنع تحميل برنامج التشغيل الضعيف أبداً، حتى عندما يقوم Windows Update بتنزيل وتخزين حزمة برنامج التشغيل بنجاح. لا يتم استخراج ملف الخدمة القابل للتنفيذ وملف .sys لأن الجهاز المستهدف معطل.
التكوين الأدنى الموصى به:
ACPI\INTC1036 — هذه هي الحماية الوحيدة المطلوبةبساطة هذا النهج هي قوته: حظر جهاز واحد قائم على التسجيل يوفر حماية كاملة دون التدخل في وظائف Windows Update العادية للأجهزة الأخرى.
عند تعطيل جهاز برنامج تشغيل أداء Intel NUC (ACPI\INTC1036):
لم يعد متاحاً:
لا يزال يعمل بشكل طبيعي:
لماذا هذا مقبول لمعظم المستخدمين: يقوم برنامج تشغيل أداء NUC بشكل أساسي بتمكين التخصيص البرمجي لسلوك المروحة/LED. يوفر BIOS ملفات تعريف افتراضية تعمل بدون أي برنامج تشغيل Windows. يقوم معظم المستخدمين بضبط منحنيات المروحة مرة واحدة في BIOS ولا يلمسونها مرة أخرى. إذا كنت بحاجة إلى تحكم ديناميكي في المروحة قائم على Windows (على سبيل المثال، ملفات تعريف الألعاب التي تتحول تلقائياً)، فقد لا يكون الخيار أ مناسباً - فكر في الخيار ب بدلاً من ذلك.
# Remove the Group Policy block
Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions" -Recurse -Force
# Re-enable the device
$device = Get-PnpDevice | Where-Object { $_.InstanceId -like '*INTC1036*' }
Enable-PnpDevice -InstanceId $device.InstanceId -Confirm:$false
Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions" -Recurse -Force
إذا كان لديك اكتشافات إضافية أو تحسينات، يرجى فتح issue أو PR.
ترخيص MIT - استخدم على مسؤوليتك الخاصة. تحقق دائماً من البرامج النصية قبل تشغيلها كمسؤول.
C:\WINDOWS\System32\DriverStore\FileRepository\performancedriverextension.inf_amd64_*\Service\NucSoftwareStudioService.exe |
| برنامج التشغيل الضعيف | ...\Service\OpenHardwareMonitorLib.sys |
| ملف inf لبرنامج التشغيل الأساسي | oem*.inf (PerformanceDriver) |
| ملف inf للامتداد | performancedriverextension.inf |
| الفحص | النتيجة |
|---|
| NucSoftwareStudioService | غير موجود (جيد) |
| مخزن برامج التشغيل | تم تخزين performancedriverextension.inf كـ oem17.inf |
| OpenHardwareMonitorLib.sys | لم يتم استخراجه (جيد) |
| الجهاز INTC1036 | معطل - ثبات GPO |
| سجل حظر GPO | نشط |
| المكون | الحالة |
|---|
| NucSoftwareStudioService | غير موجود ✓ |
| مخزن برامج التشغيل (performancedriverextension.inf) | نظيف ✓ |
| OpenHardwareMonitorLib.sys | غير موجود ✓ |
| جهاز برنامج تشغيل أداء Intel NUC | معطل ✓ |
| حظر جهاز Group Policy | نشط (تم حظر INTC1036) ✓ |
| تحديث امتداد Intel | مخفي ✓ |