Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2026-29923 | Kitploit
أدوات/GitHubGitHub/mein-0/cve-2026-29923
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالتعلم والتعليماستغلال الملفات الثنائية
GitHubmein-0/cve-2026-29923

cve-2026-29923

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-29923 — تصعيد محلي للصلاحيات عبر pstrip64.sys

إثبات مفهوم بسيط لـ CVE-2026-29923، وهي ثغرة أمنية في برنامج تشغيل النواة pstrip64.sys (EnTech Taiwan PowerStrip ≤ 3.90.736) تسمح لعملية غير مميزة في وضع المستخدم بتصعيد صلاحياتها إلى NT AUTHORITY\SYSTEM.


الثغرة

يعرض pstrip64.sys استدعاء IOCTL (0x80002008) يقبل عنوانًا فيزيائيًا يقدمه المستخدم ويربطه مباشرة بمساحة العناوين الافتراضية للعملية المستدعية عبر فتح \Device\PhysicalMemory واستدعاء ZwMapViewOfSection بمقبض العملية الحالية. لا يوجد أي فحص للصلاحيات، ولا أي تحقق من العنوان سوى ما يفرضه HalTranslateBusAddress، ولا أي تحكم في الوصول على الرابط الرمزي \\.\PSTRIP64.

النتيجة هي أولية قراءة/كتابة غير مقيدة للذاكرة الفيزيائية من عملية غير مميزة.


الاستغلال

مع توفر قراءة/كتابة فيزيائية عشوائية، يتبع الاستغلال أربع خطوات.

1. فحص بنى EPROCESS

يتم فحص الذاكرة الفيزيائية في أجزاء بحجم 2 ميغابايت. ويُفحص كل جزء بحثًا عن وسم تجمع النواة Proc (0x636F7250)، الذي يحدد تخصيص التجمع الذي يحتوي على بنية _EPROCESS الخاصة بالعملية. ويتم التحقق من النتائج المرشحة بثلاث استدلالات خفيفة قبل الوثوق بمعرّف العملية PID:

  • PriorityClass == 0x2 — جميع العمليات النشطة تعمل بأولوية عادية
  • ProcessLock == 0x0 — حقل القفل يكون مصفّرًا في عملية مستقرة
  • ImageFileName[0] حرف ASCII قابل للطباعة — نادرًا ما تحقق الذاكرة العشوائية هذا الشرط

2. تحديد مؤشري الرمز (Token)

يلزم هدفان:

  • العنوان الفيزيائي لحقل Token الخاص بعمليتنا داخل _EPROCESS
  • قيمة الرمز المخزنة في _EPROCESS لعملية النظام (PID 4)

3. استبدال الرمز الخاص بنا

يتم تعيين صفحة 4 كيلوبايت التي تحتوي على حقل Token الخاص بنا ويُستبدل الحقل بقيمة رمز النظام. من هذه النقطة، تتعامل نواة Windows مع عمليتنا باعتبارها NT AUTHORITY\SYSTEM.

4. إطلاق شل

يتم تشغيل cmd.exe عبر CreateProcessA. ولأن العمليات الفرعية ترث رمز العملية الأم، فإن الشل الناتج يعمل بصلاحيات SYSTEM.


ملاحظة حول MMIO

نافذة العناوين الفيزيائية من 3 جيجابايت إلى 4 جيجابايت محجوزة لـ MMIO على أنظمة x86. محاولة تعيين صفحات في هذا النطاق تجعل برنامج التشغيل يرجع خطأ 74 (فشل HalTranslateBusAddress). يتخطى الفحص هذه النافذة ويستأنف عند 0x100000000 لالتقاط بنى النواة التي يضعها Windows فوق علامة 4 جيجابايت.


متطلب 32-بت

يكتب معالج التعيين في برنامج التشغيل العنوان الافتراضي المرتجع في حقل DWORD (LowPart)، مما يقتطع العنوان الافتراضي 64-بت إلى 32-بت. يتلقى الإصدار المترجم لـ 64-بت مؤشرًا تالفًا ويتعطل فورًا. قم بالترجمة كـ x86.


البرامج المتأثرة

البرنامجالإصدارات
EnTech Taiwan PowerStrip≤ 3.90.736

تجزئة برنامج التشغيل (SHA-256):

root@kitploit:~
ab01485bb7c8bc1a9c86096eeea6d31d8fad557bf4d44072b46373d2203faa6e

إزاحات EPROCESS

تستهدف الإزاحات المضمّنة في الكود Windows 10 22H2 x64. تتطلب الإصدارات الأخرى قيمًا محدّثة — استخدم dt nt!_EPROCESS في WinDbg للتأكد.


البناء

افتح موجه أوامر مطور Visual Studio x86 (Developer Command Prompt) وشغّل:

root@kitploit:~
cl /EHsc /O2 exploit.c /Fe:poc.exe

أو اضبط هدف النظام الأساسي على x86 في Visual Studio وابنِ المشروع في وضع Release. لا يتطلب الملف الثنائي أي تبعيات خارجية تتجاوز Windows SDK.


الاستخدام

حمّل pstrip64.sys أولًا (يلزم امتلاك صلاحيات مسؤول لتحميل برنامج التشغيل، وليس لتشغيل الاستغلال نفسه بعد تحميله)، ثم:

root@kitploit:~
poc.exe

ستُفتح نافذة cmd.exe جديدة تعمل بصلاحيات NT AUTHORITY\SYSTEM.


التخفيف

منع تحميل برنامج التشغيل (مُفضّل)

  • أضف تجزئة برنامج التشغيل أعلاه إلى قائمة الحظر في مؤسستك
  • فعّل قائمة حظر برامج التشغيل الضعيفة من Microsoft عبر WDAC
  • فعّل تكامل الكود المحمي بواسطة Hypervisor (HVCI)

اكتشاف الاستغلال أثناء التنفيذ

  • إطلاق تنبيه عند تثبيت خدمات جديدة في وضع النواة لملفات برامج تشغيل غير معروفة
  • مراقبة العمليات منخفضة/متوسطة التكامل التي تُطلق عمليات فرعية بمستوى SYSTEM
  • الإبلاغ عن أي عملية يتغير رمزها إلى NT AUTHORITY\SYSTEM خارج حدث مصادقة مشروع

إخلاء مسؤولية

يُنشر هذا الكود لأغراض تعليمية وبحثية دفاعية فقط. استخدمه فقط على الأنظمة التي تملكها أو لديك إذن كتابي صريح لاختبارها. المؤلف غير مسؤول عن أي إساءة استخدام.


المراجع

  • قائمة حظر برامج التشغيل الضعيفة من Microsoft
  • نظرة عامة على WDAC
  • التفاصيل الداخلية لبنية EPROCESS في Windows
  • HalTranslateBusAddress — MSDN
  • ZwMapViewOfSection — MSDN
تنزيل الأداة
الحقلالإزاحة
PriorityClass0x5B7
ProcessLock0x438
UniqueProcessId0x440
ImageFileName0x5A8
Token0x4B8