
CVE-2018-19323 - GIGABYTE GDrv विशेषाधिकार वृद्धि (privilege escalation) भेद्यता के लिए एक शोषण ढांचा (exploitation framework), जिसमें मल्टी-आर्किटेक्चर समर्थन और फ्रेमवर्क एकीकरण शामिल है।
इस रिपॉजिटरी में CVE-2018-19323 के लिए एक पूर्ण और उन्नत शोषण फ्रेमवर्क शामिल है, जो GIGABYTE gdrv.sys ड्राइवर में एक गंभीर भेद्यता है। यह भेद्यता अविशेषाधिकार प्राप्त उपयोगकर्ताओं को मनमाने मॉडल-विशिष्ट रजिस्टर (MSRs) को पढ़ने और लिखने की अनुमति देती है, जिससे पूर्ण Ring-0 (कर्नेल) समझौता और NT AUTHORITY\SYSTEM तक विशेषाधिकार वृद्धि होती है।
यह फ्रेमवर्क मॉड्यूलर, मजबूत और फीचर-समृद्ध होने के लिए डिज़ाइन किया गया है, जो सुरक्षा अनुसंधान, रेड टीमिंग और भेद्यता विश्लेषण के लिए एक व्यापक उपकरण प्रदान करता है।
IA32_LSTAR MSR के माध्यम से कर्नेल बेस पता लीक करके और टोकन-चोरी करने वाला शेलकोड निष्पादित करके विशेषाधिकार वृद्धि प्राप्त करता है।core, payloads, evasion, monitor, multiarch, framework) में व्यवस्थित किया गया है।.
├── exploit.py # Main exploitation framework and CLI
├── core.py # Core driver interaction and exploit primitives
├── payloads.py # Shellcode generation, custom payloads, and encoding
├── evasion.py # Anti-VM, anti-debugging, and persistence techniques
├── monitor.py # Logging, performance monitoring, and reporting
├── multiarch.py # Multi-architecture support (x86/x64/ARM64)
├── framework.py # Integration with Metasploit, Cobalt Strike, etc.
├── tests.py # Comprehensive unit, integration, and performance tests
└── README.md # This documentation file
gdrv.sys ड्राइवर मौजूद होना आवश्यक है।psutil, cryptography, requests# Install required Python packages
pip install psutil cryptography requests
मुख्य शोषण फ्रेमवर्क को exploit.py के माध्यम से निष्पादित किया जाता है। यह विभिन्न परिचालन मोड के लिए कई कमांड-लाइन विकल्प प्रदान करता है।
# Display help and all available options
python exploit.py --help
# Default stealth mode (recommended)
# Runs all pre-flight evasion checks before exploitation.
python exploit.py
# Aggressive mode
# Skips evasion checks for faster execution in controlled environments.
python exploit.py --aggressive
# Debug mode
# Provides verbose logging for development and analysis.
python exploit.py --debug
# Run the full test suite
# Validates all framework components without executing the exploit.
python exploit.py --test-only
[!WARNING] यह सॉफ़्टवेयर केवल शैक्षिक और अधिकृत सुरक्षा अनुसंधान उद्देश्यों के लिए है। किसी भी सिस्टम पर अनधिकृत उपयोग अवैध है और सख्त वर्जित है। लेखक, kali, इस फ्रेमवर्क के किसी भी नुकसान या दुरुपयोग के लिए जिम्मेदार नहीं है।
gdrv.sys ड्राइवर एक IOCTL 0xC3502580 उजागर करता है जिसे किसी भी यूज़र-मोड एप्लिकेशन द्वारा कॉल किया जा सकता है। यह IOCTL एक संरचना लेता है जिसमें एक ऑपरेशन प्रकार (रीड/राइट), एक MSR रजिस्टर इंडेक्स और एक मान होता है। ड्राइवर कोई एक्सेस कंट्रोल जाँच नहीं करता है, जिससे किसी भी प्रक्रिया को किसी भी MSR को पढ़ने या लिखने की अनुमति मिलती है।
यह एक गंभीर दोष है क्योंकि MSRs मौलिक CPU संचालन को नियंत्रित करते हैं। विशेष रूप से, IA32_LSTAR MSR (पते 0xC0000082 पर) कर्नेल में सिस्टम कॉल हैंडलर का पता संग्रहीत करता है। इस MSR को पढ़कर, हम कर्नेल एड्रेस स्पेस लेआउट रैंडमाइज़ेशन (KASLR) को पराजित कर सकते हैं और कर्नेल का बेस पता निकाल सकते हैं। इसे लिखकर, हम सिस्टम कॉल को अपने स्वयं के शेलकोड पर रीडायरेक्ट कर सकते हैं, जिससे Ring-0 में मनमाना कोड निष्पादन प्राप्त होता है।
\\.\GIO डिवाइस के लिए एक हैंडल खोलता है।IA32_LSTAR MSR को पढ़कर कर्नेल के भीतर एक पॉइंटर प्राप्त करता है, जिससे KASLR बायपास होता है।EPROCESS संरचना को खोजने, SYSTEM प्रक्रिया (PID 4) के EPROCESS का पता लगाने और उसके सुरक्षा टोकन को हमारी प्रक्रिया में कॉपी करने के लिए डिज़ाइन किया गया है।IA32_LSTAR MSR का पता हमारे शेलकोड के पते से अधिलेखित कर दिया जाता है।NT AUTHORITY\SYSTEM विशेषाधिकार होते हैं।IA32_LSTAR मान को बहाल किया जाता है।evasion.py मॉड्यूल में CPU कोर संख्या, डिस्क आकार, हालिया फ़ाइल गतिविधि, स्थापित प्रोग्राम और उन्नत टाइमिंग/हुकिंग डिटेक्शन के लिए जाँच शामिल हैं, जिससे एक अधिक मजबूत पर्यावरणीय फिंगरप्रिंट तैयार होता है।payloads.py मॉड्यूल विभिन्न आर्किटेक्चर के लिए कई प्रकार के पेलोड (रिवर्स शेल, Meterpreter, Cobalt Strike बीकन) को एन्कोडिंग की कई परतों के साथ गतिशील रूप से उत्पन्न करने की अनुमति देता है।multiarch.py मॉड्यूल x86, x64 और ARM64 के बीच अंतर को संभालने के लिए एक व्यापक अमूर्त परत प्रदान करता है, जिसमें पॉइंटर आकार, कॉलिंग कन्वेंशन, कर्नेल संरचनाएं और निर्देश सेट शामिल हैं।framework.py मॉड्यूल Metasploit (.rb), Cobalt Strike (.cna), Empire (.py) और Sliver (.go) के लिए उपयोग-के-लिए-तैयार मॉड्यूल उत्पन्न कर सकता है, जिससे रेड टीम संचालन के लिए एकीकरण प्रक्रिया स्वचालित हो जाती है।फ्रेमवर्क में tests.py में एक व्यापक परीक्षण सुइट शामिल है। सभी घटकों की अखंडता और कार्यक्षमता सुनिश्चित करने के लिए आप सभी परीक्षण चला सकते हैं।
# Run all unit, integration, and performance tests
python tests.py --all
# Run only unit tests
python tests.py --unit
यह प्रोजेक्ट उन्नत शोषण तकनीकों का एक प्रदर्शन है और इसका उपयोग जिम्मेदारी से किया जाना चाहिए।