
CVE-2025-3464: ASUS AsIO3.sys के लिए LPE एक्सप्लॉइट
CVE-2025-3464: ASUS AsIO3.sys के लिए अनप्रिविलेज्ड LPE एक्सप्लॉइट - TOCTOU प्रमाणीकरण बायपास + PreviousMode डिक्रीमेंट
यह एक्सप्लॉइट केवल Windows 11 22H2 या उससे पहले के संस्करणों पर काम करेगा। Microsoft ने PreviousMode गड़बड़ियों को ठीक कर दिया है।
ASUS AsIO3.sys ड्राइवर के लिए स्थानीय विशेषाधिकार वृद्धि एक्सप्लॉइट। NT AUTHORITY\SYSTEM प्राप्त करता है
यह एक्सप्लॉइट एक प्रमाणीकरण बायपास (CVE-2025-3464) को एक डिक्रीमेंट प्रिमिटिव के साथ जोड़कर किसी भी स्थानीय उपयोगकर्ता से SYSTEM तक विशेषाधिकार बढ़ाता है।
| गुण | मान |
|---|---|
| CVE | CVE-2025-3464 |
| प्रकार | स्थानीय विशेषाधिकार वृद्धि |
| ड्राइवर | AsIO3.sys (ASUS) |
| परीक्षित | Windows 11 22H2 (Build 22621) |
AsIO3.sys ड्राइवर कॉल करने वाली प्रक्रियाओं को यह जाँच कर मान्य करता है कि उनका निष्पादन योग्य पथ AsusCertService शामिल करता है और SHA256 हैश सत्यापित करता है। यह जाँच NTFS हार्डलिंक का उपयोग करके Time-of-Check-Time-of-Use (TOCTOU) रेस कंडीशन के प्रति संवेदनशील है।
हमले का प्रवाह:
AsusCertService युक्त पथ पर एक्सप्लॉइट निष्पादन योग्य की ओर इंगित करते हुए हार्डलिंक बनाएँAsusCertService.exe की ओर इंगित करने के लिए बदलेंनोट: ड्राइवर केवल यह जाँचता है कि पथ में सबस्ट्रिंग मिलान के माध्यम से AsusCertService शामिल है या नहीं। कोई भी उपयोगकर्ता-लेखन योग्य पथ काम करता है (जैसे, C:\Users\Public\AsusCertService\), जिससे यह बिना एडमिन विशेषाधिकारों के शोषण योग्य हो जाता है।
ड्राइवर एक IOCTL उजागर करता है जो उपयोगकर्ता-नियंत्रित पॉइंटर पर ObfDereferenceObject को कॉल करता है। यह (ObjectPtr - 0x30) पर 8-बाइट परमाणु डिक्रीमेंट करता है, जो एक मनमाना डिक्रीमेंट प्रिमिटिव प्रदान करता है।
PreviousMode के माध्यम से शोषण:
NtQuerySystemInformation(SystemHandleInformationEx) के माध्यम से KTHREAD पता लीक करेंKTHREAD + 0x232 (PreviousMode फ़ील्ड)NtReadVirtualMemory/NtWriteVirtualMemory कर्नेल मेमोरी तक पहुँच सकते हैं# Compile (Linux cross-compile)
x86_64-w64-mingw32-gcc -O2 -o AsIO3_FullExploit.exe AsIO3_FullExploit.c -lntdll -lshlwapi
# On target (requires AsIO3.sys loaded)
AsIO3_FullExploit.exe
आवश्यक शर्तें:
- AsIO3.sys ड्राइवर लोड हो (ASUS Armoury Crate, AI Suite आदि के साथ आता है)
- AsusCertService.exe सुलभ हो (सामान्य ASUS इंस्टॉलेशन पथ खोजता है)
संरचना ऑफसेट (Windows 11 22H2)
KTHREAD + 0x232 = PreviousMode
KTHREAD + 0x220 = Process (EPROCESS पॉइंटर)
EPROCESS + 0x440 = UniqueProcessId
EPROCESS + 0x448 = ActiveProcessLinks
EPROCESS + 0x4B8 = Token
नोट: ऑफसेट संस्करण-विशिष्ट होते हैं। अपने लक्षित Windows बिल्ड के लिए सत्यापित करें। Windows 23H2 PREVIOUS_MODE_MISMATCH (0x1f9) फेंकता है। इन previous mode चालों के लिए एक शमन।
तकनीकी नोट
- KTHREAD+0x232 पर 8-बाइट डिक्रीमेंट आसन्न फ़ील्ड्स (UserAffinityPrimaryGroup, BasePriority) को प्रभावित करता है
- महत्वपूर्ण: CreateProcess या किसी भी उपयोगकर्ता-मोड एड्रेस स्पेस ऑपरेशन को कॉल करने से पहले PreviousMode को 1 पर पुनर्स्थापित करना अनिवार्य है
- PreviousMode को पुनर्स्थापित न करने पर प्रक्रिया निर्माण के दौरान nt!PspLocateInPEManifest में BSOD होता है
संदर्भ
- https://blog.talosintelligence.com/decrement-by-one-to-rule-them-all/
- ASUS Armoury Crate / AI Suite ड्राइवर घटक
अस्वीकरण
यह कोड केवल अधिकृत सुरक्षा अनुसंधान और शैक्षिक उद्देश्यों के लिए प्रदान किया गया है। केवल उन्हीं सिस्टमों के विरुद्ध उपयोग करें जिनके स्वामी आप हैं या जिनके परीक्षण की आपको स्पष्ट अनुमति है। कंप्यूटर सिस्टम तक अनधिकृत पहुँच अवैध है।