
Windows 11 के लिए LPE प्रूफ-ऑफ-कॉन्सेप्ट जो TrustedInstaller के Component Based Servicing (CBS) सत्र COM ऑब्जेक्ट और junctions का दुरुपयोग करके मनमानी फ़ाइल लेखन (arbitrary file write) करता है।
अनगेटेड CBS COM विधि के माध्यम से स्थानीय विशेषाधिकार वृद्धि - Windows 11 पर मध्यम-IL से SYSTEM तक मनमानी फ़ाइल लेखन
| तिथि | घटना |
|---|---|
| 22 जुलाई, 2026 | MSRC को भेद्यता की सूचना दी गई |
| 8 सितंबर, 2026 | Microsoft ने Windows Update सर्विसिंग स्टैक को पैच किया (सितंबर पैच मंगलवार) |
| 29 अक्टूबर, 2026 | MSRC ने प्रतिक्रिया दी (नीचे देखें) |
कंपोनेंट बेस्ड सर्विसिंग (CBS) सत्र COM ऑब्जेक्ट TrustedInstaller.exe के अंदर SYSTEM के रूप में चलता है और किसी भी इंटरैक्टिव उपयोगकर्ता द्वारा सक्रिय किया जा सकता है। सत्र इंटरफ़ेस पर लगभग हर विधि आगे बढ़ने से पहले EnsureCallerIsAdministrator को कॉल करती है, सिवाय CreateExternalTransformerExecutor के, जो बिना किसी प्राधिकरण जाँच के निम्न-स्तरीय CSI स्टोर ट्रांसफ़ॉर्मर एक्ज़ीक्यूटर लौटाता था।
उस एक्ज़ीक्यूटर का Initialize() बिना किसी प्रतिरूपण के SYSTEM के रूप में चलता है। एक मध्यम-अखंडता वाला कॉलर TrustedInstaller को NTFS जंक्शन और ऑब्जेक्ट-मैनेजर सिंबॉलिक लिंक का शोषण करके हमलावर-नियंत्रित पथ पर एक रजिस्ट्री हाइव लॉग फ़ाइल बनाने के लिए प्रेरित कर सकता है, जिनमें से किसी को भी बनाने के लिए किसी विशेष विशेषाधिकार की आवश्यकता नहीं होती।
CreateExternalTransformerExecutor को कॉल करेंपरिणाम: एक सामान्य उपयोगकर्ता खाते से, SYSTEM के रूप में किसी भी मौजूदा निर्देशिका में मनमानी फ़ाइल लेखन। कोई व्यवस्थापक अधिकार नहीं, कोई विशेष विशेषाधिकार नहीं, कोई उपयोगकर्ता इंटरैक्शन आवश्यक नहीं।
MSRC ने मेरी रिपोर्ट को निम्न गंभीरता / गहन रक्षा के रूप में मूल्यांकित किया, यह कहते हुए कि "मूल्यांकित प्रमाण-अवधारणाओं ने अनधिकृत स्थानों पर फ़ाइल लेखन प्रदर्शित नहीं किया।" मामला तत्काल सर्विसिंग की सीमा से नीचे होने के कारण बंद कर दिया गया और कोई अतिरिक्त CVE जारी नहीं किया गया, कोई बाउंटी प्रदान नहीं की गई, और MSRC इस मुद्दे को आगे ट्रैक नहीं करेगा, जो समझ में आता है यदि यह एक डुप्लिकेट है।
PoC एक मध्यम-IL, गैर-व्यवस्थापक प्रक्रिया से C:\Windows\System32 में हमलावर-नियंत्रित सामग्री लिखता है और इसने हर उस अनपैच्ड बिल्ड पर विश्वसनीय रूप से ऐसा किया जिस पर इसका परीक्षण किया गया।
MSRC के मूल्यांकन का सबसे संभावित स्पष्टीकरण समय है क्योंकि रिपोर्ट जुलाई में प्रस्तुत की गई थी, सर्विसिंग स्टैक फ़िक्स सितंबर में जारी हुआ, और MSRC की प्रतिक्रिया अक्टूबर में आई, जिस समय तक PoC किसी भी अद्यतित सिस्टम पर वास्तव में E_ACCESSDENIED के साथ विफल हो जाता।
मुझे MSRC के विशेष उल्लेख पृष्ठ में जोड़ा गया, तो कम से कम वह तो है :)
मुझे संदेह है कि यहाँ रिपोर्ट की गई भेद्यता CVE-2026-81963 ("Windows Update Stack Elevation of Privilege Vulnerability") में शामिल है, जिसे उल्लिखित अपडेट में ठीक किया गया था और जो उसी भेद्यता वर्ग (CWE-59 / CWE-284, CBS servicing stack में लिंक-फॉलोइंग + अनुचित एक्सेस नियंत्रण) का वर्णन करता है। उस CVE का श्रेय Romain Deperne (Airbus Helicopters) और Microsoft Threat Intelligence Center (MSTIC) को दिया गया था, और पैच से पहले इसे जंगल में सक्रिय रूप से शोषित होने की पुष्टि की गई थी। लेकिन: मेरे पास कोई आधिकारिक पुष्टि नहीं है कि मेरी रिपोर्ट उसी मुद्दे को कवर करती है।
दोनों PoC को एक सामान्य, गैर-प्रशासक उपयोगकर्ता (मध्यम अखंडता) के रूप में चलाया जाना चाहिए और इनमें समान आधारभूत एक्सप्लॉइट होता है। यदि आप इन्हें एलिवेटेड रूप में चलाते हैं, तो एक्सप्लॉइट तुच्छ रूप से सफल हो जाता है क्योंकि आपके पास पहले से ही एडमिन है, जो पूरे उद्देश्य को विफल कर देता है।
PoC_Fun/UI के साथ पूर्ण प्रूफ-ऑफ-कॉन्सेप्ट। एक vibecoded ग्राफ़िकल हार्नेस जो एक्सप्लॉइट तकनीक को एक इंटरैक्टिव इंटरफ़ेस में लपेटता है। डेमो के लिए और उन सभी के लिए अच्छा है जिन्हें उबाऊ केवल-टर्मिनल PoC पसंद नहीं हैं (MAKE POCS FUN AGAIN!)
शीर्षकों और बैनर में उपयोग किया गया मोनोस्पेस गॉथिक पिक्सेल आर्ट फ़ॉन्ट मेरे कमीशन पर nico_n_art द्वारा बनाया गया था।
बिल्ड:
$ cd PoC_Fun
$ dotnet clean -c Release && dotnet publish -c Release
$ .\bin\Release\net8.0-windows\win-x64\publish\TrustedHive.exe
उपयोग: बस रिलीज़ पर डबल क्लिक करें और UI आपको मार्गदर्शन करेगा या सहायता मेनू खोलने के लिए "?" का उपयोग करें।
PoC_Boring/एक्सप्लॉइट के लिए स्टैंडअलोन C फ़ाइल। कोई UI नहीं और ole32.lib तथा advapi32.lib के अलावा कोई निर्भरता नहीं। MSVC (cl /O2 ...) से बिल्ड करें, इसे एक इनपुट फ़ाइल और एक आउटपुट पथ पर इंगित करें, और यह काम कर देता है।
बिल्ड:
$ cd PoC_Boring
$ cl /nologo /W3 /O2 TrustedHive_PoC.c ole32.lib advapi32.lib /link
$ .\TrustedHive_PoC.exe
उपयोग:
$ .\TrustedHive_BoringPoC.exe <input_file> <output_path> [/keep]
<input_file> : file whose bytes are written to the target
<output_path> : destination (its parent directory must exist),
e.g. C:\Windows\System32\poc.dll
/keep : keep the Hidden+System attributes the Configuration Manager
stamps on the created hive-log file (default: clear them)
EvaluateApplicability के माध्यम से dpx.dll साइडलोडिंग)
