
शैक्षिक प्रयोगशाला जो CVE-2021-36934 (HiveNightmare) का प्रदर्शन करती है - Windows LPE shadow copy ACL गलत कॉन्फ़िगरेशन के माध्यम से
नियंत्रित लैब वातावरण में HiveNightmare भेद्यता को पुन: उत्पन्न और विश्लेषण करें।
CVE-2021-36934, जिसे "SeriousSAM" या "HiveNightmare" के नाम से भी जाना जाता है, एक स्थानीय विशेषाधिकार वृद्धि (LPE) भेद्यता है जो विंडोज 10 के संस्करण 1809 से आगे, विंडोज 11 के प्रारंभिक संस्करणों, साथ ही विंडोज सर्वर 2019 और 2022 को प्रभावित करती है। यह एक मानक उपयोगकर्ता को संवेदनशील डेटा वाली संरक्षित सिस्टम फ़ाइलों, जैसे स्थानीय पासवर्ड हैश, को डुप्लिकेट और एक्सेस करने की अनुमति देता है। मुख्य समस्या गलत तरीके से कॉन्फ़िगर की गई एक्सेस कंट्रोल लिस्ट (ACL) में है, जो संवेदनशील सिस्टम फ़ाइलों (विशेष रूप से SAM, SYSTEM और SECURITY हाइव्स) पर सभी उपयोगकर्ताओं को पढ़ने की अनुमति प्रदान करती है। जबकि सामान्य संचालन के दौरान ये फ़ाइलें लॉक रहती हैं, उनकी बैकअप प्रतियां (शैडो कॉपी/रिस्टोर पॉइंट के माध्यम से) समान गलत कॉन्फ़िगर की गई अनुमतियाँ प्राप्त कर लेती हैं और सिस्टम के किसी भी उपयोगकर्ता के लिए सुलभ और शोषणीय हो जाती हैं।
भेद्यता का शोषण करने के लिए दो पूर्वापेक्षाएँ आवश्यक हैं: (1) सिस्टम प्रोटेक्शन सक्षम होना और (2) एक मौजूदा रिस्टोर पॉइंट। ये तत्व अक्सर विंडोज 10/11 मशीनों पर डिफ़ॉल्ट रूप से मौजूद होते हैं। कार्यान्वयन शैडो कॉपी (रिस्टोर पॉइंट) से SAM, SYSTEM और SECURITY फ़ाइलों की प्रतियां निकालने पर निर्भर करता है। ये फ़ाइलें, जो सामान्यतः सिस्टम निष्पादन के दौरान लॉक रहती हैं, अपने स्नैपशॉट प्रतियों के माध्यम से सुलभ हो जाती हैं, जो मूल फ़ाइलों के समान ACL प्राप्त करती हैं।
एक गैर-विशेषाधिकार प्राप्त उपयोगकर्ता खाते से, सार्वजनिक स्क्रिप्ट के माध्यम से शोषण प्राप्त किया जा सकता है, जिसमें सबसे प्रसिद्ध hivenightmare.exe है, जो C में लिखा गया है। तीन पुनर्प्राप्त फ़ाइलों की पूरक भूमिकाएँ हैं। SAM में स्थानीय खाता पासवर्ड के हैश (एन्क्रिप्टेड) होते हैं, SECURITY अतिरिक्त LSA रहस्य (कैश्ड क्रेडेंशियल्स, सेवा पासवर्ड, भी एन्क्रिप्टेड) संग्रहीत करता है, और SYSTEM डिक्रिप्शन कुंजी (BootKey) प्रदान करता है। सख्त स्थानीय विशेषाधिकार वृद्धि के लिए, NTLM हैश निकालने के लिए केवल SAM और SYSTEM आवश्यक हैं। एक बार ये फ़ाइलें प्राप्त हो जाने पर, secretsdump.py या mimikatz जैसे उपकरण हैश को डिक्रिप्ट कर सकते हैं और pass-the-hash हमले कर सकते हैं, या psexec.py के माध्यम से पूर्ण व्यवस्थापक पहुँच प्राप्त कर सकते हैं।
शोषण कार्यान्वयन शैडो कॉपी/रिस्टोर पॉइंट से विंडोज हाइव्स (SAM, SYSTEM, SECURITY) निकालने पर निर्भर करता है, फिर secretsdump.py और psexec.py के माध्यम से निकाले गए हैश का उपयोग करके SYSTEM एक्सेस प्राप्त करता है।
परीक्षित प्लेटफ़ॉर्म: Windows 10, build 1903 (दिसंबर 2020 अपडेट)।
1. संदर्भ: Windows संस्करण हम एक Windows 10 संस्करण (1903, दिसंबर 2020 अपडेट) का उपयोग कर रहे हैं जिसमें अध्ययन के तहत भेद्यता मौजूद है।
2. संवेदनशील फ़ाइलों पर अनुमतियाँ हम देखते हैं कि SAM, SYSTEM और SECURITY हाइव्स पर NTFS अनुमतियाँ स्थानीय उपयोगकर्ताओं को पढ़ने की पहुँच प्रदान करती हैं, जो यहाँ config फ़ोल्डर से विरासत में मिली है।
3. रिस्टोर पॉइंट के बिना स्थानीय उपयोगकर्ता से hivenightmare चलाना जब रिस्टोर पॉइंट/शैडो कॉपी के बिना किसी स्थानीय खाते से hivenightmare.exe लॉन्च किया जाता है, तो उपकरण विफल हो जाता है क्योंकि यह शोषण करने के लिए कोई रिस्टोर पॉइंट नहीं ढूँढ पाता।
4. सिस्टम प्रोटेक्शन सक्षम करना और रिस्टोर पॉइंट बनाना
हाइव निष्कर्षण के लिए आवश्यक शर्तें बनाने के लिए, हम सिस्टम प्रोटेक्शन सक्षम करते हैं, फिर मैन्युअल रूप से एक रिस्टोर पॉइंट बनाते हैं। एक बार रिस्टोर पॉइंट मौजूद होने पर, hivenightmare संवेदनशील फ़ाइलों की प्रतियों तक पहुँचने में सक्षम होगा।

5. संवेदनशील हाइव्स निकालना रिस्टोर पॉइंट बनाने के बाद, hivenightmare.exe फिर से लॉन्च किया जाता है और सफलतापूर्वक शैडो कॉपी से SAM, SYSTEM और SECURITY फ़ाइलें निकालता है। कई अन्य स्क्रिप्ट हैं (C#, Go, PowerShell,...)। उपयोग की गई तकनीक के बावजूद, सभी स्क्रिप्ट एक ही पथ को लक्षित करती हैं:
\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy[i]\Windows\System32\config\[SENSITIVE FILE]
6. Kali पर विश्लेषण: secretsdump.py के साथ हैश पुनर्प्राप्त करना निकाली गई फ़ाइलें Kali मशीन पर स्थानांतरित की जाती हैं। हम खातों को सूचीबद्ध करने और सादे टेक्स्ट में हैश पुनर्प्राप्त करने के लिए secretsdump.py (Impacket) का उपयोग करते हैं।
7. विशेषाधिकार वृद्धि: psexec.py के माध्यम से हैश पुन: उपयोग निकाले गए हैश के साथ, हम psexec.py का उपयोग करके प्रमाणित करते हैं और SYSTEM विशेषाधिकारों के साथ एक सत्र खोलते हैं, जिससे मशीन पर पूर्ण नियंत्रण प्राप्त होता है।
माइक्रोसॉफ्ट का आधिकारिक फिक्स (KB5004605, जुलाई 2021) प्रभावित फ़ाइलों पर उपयुक्त ACL पुनर्स्थापित करता है। हालांकि, कई पूरक उपाय अनुशंसित हैं। पहला, C:\Windows\System32\config पर अनुमतियों की मैन्युअल रूप से जाँच करें ताकि यह सुनिश्चित हो सके कि केवल SYSTEM और प्रशासकों के पास पूर्ण पहुँच है। दूसरा, पैच लागू करने से पहले बनाई गई पुरानी शैडो कॉपी हटाएं, क्योंकि वे भेद्य अनुमतियाँ बनाए रखती हैं। परिचालन कारणों (डेटा हानि का जोखिम, उपयोगकर्ता पर प्रभाव) के लिए, वितरित पैच में पुराने रिस्टोर पॉइंट का स्वचालित विलोपन शामिल नहीं किया गया था। अंत में, सिस्टम इवेंट लॉग के माध्यम से शैडो कॉपी तक असामान्य पहुँच की निगरानी करें।
यहाँ हम दर्शाते हैं कि मैन्युअल ACL सुधार और पिछली शैडो कॉपी को हटाकर भेद्यता को कैसे कम किया जाए।
1. मैन्युअल ACL सुधार यह कमांड C:\Windows\System32\config फ़ोल्डर पर विरासत को तोड़ता है।
2. ACL सुधार के बाद सत्यापन सुधार से पहले बनाए गए रिस्टोर पॉइंट का अस्तित्व अभी भी संबद्ध शैडो कॉपी से हाइव्स निकालने की अनुमति देता है।
3. शैडो कॉपी विलोपन
4. अंतिम सत्यापन पुरानी शैडो कॉपी हटाने के बाद, हाइव निष्कर्षण विफल हो जाता है और स्थानीय खाते से भेद्यता अब शोषणीय नहीं है।
CVE-2021-36934 दर्शाता है कि कैसे एक साधारण ACL गलत कॉन्फ़िगरेशन विंडोज सिस्टम सुरक्षा को पूरी तरह से समझौता कर सकता है। भेद्यता एक सुरक्षा सुविधा (रिस्टोर पॉइंट) का शोषण करती है जो हमले के वेक्टर में बदल जाती है, जिससे एक गैर-विशेषाधिकार प्राप्त और संभावित दुर्भावनापूर्ण उपयोगकर्ता को पूर्ण प्रशासक पहुँच प्राप्त हो सकती है। निष्कर्ष में, CVE-2021-36934 सिस्टम अनुमतियों की नियमित ऑडिट और संवेदनशील फ़ाइलों तक पहुँच की निगरानी की आवश्यकता पर प्रकाश डालता है, यहाँ तक कि उनकी बैकअप प्रतियों में भी।
केवल शैक्षिक उद्देश्यों के लिए। प्राधिकरण के बिना सिस्टम पर उपयोग न करें।