
يساعد المدافعين في العثور على إعدادات WSUS الخاصة بهم في أعقاب CVE-2025-59287
اكتشف إعدادات خوادم WSUS عبر كائنات نهج المجموعة (GPOs) — بما في ذلك تفضيلات نهج المجموعة (GPP) المخفية.
Find-WSUS هي أداة PowerShell مصممة لـ المتخصصين في الأمن ومسؤولي الأنظمة لتحديد جميع عناوين URL لخوادم WSUS (خدمات تحديث Windows Server) المكوّنة عبر كائنات نهج المجموعة (GPOs). تكتشف الأداة الإعدادات من كلا المصدرين:
خوادم WSUS هي أصول بنية تحتية عالية القيمة. إذا تم اختراقها، يمكن للمهاجم نشر "تحديثات" خبيثة على جميع الأنظمة المرتبطة بالمجال، مما يؤدي إلى اختراق المجال بالكامل.
🧨 تُظهر ثغرات مثل CVE-2025-59287 أن استغلالًا واحدًا لـ WSUS يمكن أن يمنح المهاجمين سيطرة على نطاق المجال بأكمله.
Find-WSUS تساعد المؤسسات على تحديد كل مصادر إعداد WSUS قبل أن يفعل المهاجمون ذلك.
معظم عمليات الفحص تتحقق فقط من:
HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate
ولكن العديد من المؤسسات تنشر إعداد WSUS عبر تفضيلات نهج المجموعة (GPP)، التي تعدّل مفاتيح التسجيل مباشرةً. هذه الإعدادات لا تظهر في تقارير GPMC القياسية.
✅ يكتشف Find-WSUS كلًا من الإعدادات القياسية والقائمة على GPP، مما يمنحك رؤية كاملة لبيئتك.
حمّل البرنامج النصي إلى جلسة PowerShell الخاصة بك:
. .\Find-WSUS.ps1
بعد الاستيراد، تصبح الدالة Find-WSUS متاحة.
Find-WSUS | Format-Table -AutoSize
عرض رسائل تقدّم مفصّلة أثناء الفحص:
Find-WSUS -Verbose
Find-WSUS -Domain "child.mydomain.com" | Format-Table -AutoSize
Find-WSUS -Name "*Server*" -Verbose
$results = Find-WSUS -Domain "mydomain.com"
$results.Hostname | Where-Object { $_ } | Sort-Object -Unique
يستخدم Get-GPRegistryValue في STA runspace لتجنب أخطاء ترابط COM.
يفحص قيم WUServer و WUStatusServer في:
HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate
Get-GPOReport -ReportType Xml.q2:Registry) وعُقد احتياطية (*[local-name()='Registry'])....\Windows\WindowsUpdate.يعكس هذا التخطيط والترويسات الفعلية لأمر
Format-Table -AutoSizeمنFind-WSUS، لكن مع أمثلة واقعية للمضيفين/عناوين URL وأسماء/GUIDs لكائنات GPO.
PS C:\Users\Administrator\Documents> Find-WSUS | Format-Table -AutoSize
[OK] Environment check passed: 64-bit PowerShell, GroupPolicy module loaded, GPOs accessible.
GPOName Scope Key ValueName Value Hostname GPOGuid
------- ----- --- --------- ----- -------- -------
Default Domain Policy Policy (Computer) HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUServer https://wsus.corp.contoso.com:8531 wsus.corp.contoso.com 31b2f340-016d-11d2-945f-00c04fb984f9
Default Domain Policy Policy (Computer) HKLM\Software\Policies\Microsoft\Windows\Windows\Update WUStatusServer https://wsus.corp.contoso.com:8531 wsus.corp.contoso.com 31b2f340-016d-11d2-945f-00c04fb984f9
Corporate WSUS Baseline Policy (Computer) HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUServer http://wsus01.contoso.com:8530 wsus01.contoso.com 57f2e3da-33c5-4a35-abce-c12a0b7f9823
Corporate WSUS Baseline Policy (Computer) HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUStatusServer https://wsus01.contoso.com:8531 wsus01.contoso.com 57f2e3da-33c5-4a35-abce-c12a0b7f9823
Workstations - Windows Update (GPP) Preference (Registry) HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate WUStatusServer https://wsus-west.contoso.com:8531 wsus-west.contoso.com a1cde8b2-7f45-43f2-9db4-9c1e93a0e5c1
ملاحظة: في البيئات الحقيقية ستجد غالبًا SSL على
:8531وHTTP القديم على:8530. أسماء المضيفين أعلاه أمثلة فقط؛ استبدلها بجردك الفعلي.
[!WARNING] هذا البرنامج النصي هو أداة اكتشاف، وليس نظام جرد كامل.
تكتشف فقط خوادم WSUS المعرّفة عبر نهج المجموعة. لا تكتشف:
Find-WSUS عبر جميع المجالات في غابتك (forest).WSUSService.طُوّرت بواسطة مهندسي أمن لكشف إعدادات WSUS المخفية وتحسين رؤية البنية التحتية للتحديثات.
📘 المساهمات مرحّب بها! قدّم طلبات السحب (pull requests) أو المشكلات (issues) لتحسين التوافق أو إضافة طرق اكتشاف جديدة.
| المتطلب | الوصف |
|---|
| PowerShell بنسخة 64-بت | مطلوب للتوافق مع COM. يخرج البرنامج النصي تلقائيًا إذا تم تشغيله في PowerShell بنسخة 32-بت. |
| RSAT: أدوات إدارة نهج المجموعة | مطلوبة لوحدة GroupPolicy.Windows 10/11: Settings → Optional Features → Add a Feature → RSAT: Group Policy Management ToolsWindows Server: Server Manager → Add Roles and Features → Features → Group Policy Management |
| الأذونات | صلاحية قراءة لجميع كائنات GPO في المجال الذي يتم فحصه. |
| اختياري: صلاحيات المسؤول | قد تفشل بعض استعلامات نهج التسجيل دون رفع الصلاحيات. |
| المعامل | الوصف | الافتراضي |
|---|
-Name | تصفية كائنات GPO حسب اسم العرض باستخدام أحرف البدل. يستخدم -All عند *. | * (جميع كائنات GPO) |
-Domain | تحديد مجال للاستعلام (مفيد في الغابات متعددة المجالات). | مجال المستخدم الحالي |
-Verbose | يعرض تفاصيل تقدّم الفحص والنتائج. | معطّل |