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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
stop-zenbleed-win — पावरशेल स्क्रिप्ट जो विंडोज़ पर Zenbleed (CVE-2023-20593) MSR वर्कअराउंड लागू करती है | Kitploit
उपकरण/GitHubGitHub/sbaresearch/stop-zenbleed-win
भेद्यता विश्लेषणशोषणस्क्रिप्टिंग और स्वचालनहार्डवेयर सुरक्षा
GitHubsbaresearch/stop-zenbleed-win

stop-zenbleed-win

पावरशेल स्क्रिप्ट जो विंडोज़ पर Zenbleed (CVE-2023-20593) MSR वर्कअराउंड लागू करती है

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

विंडोज पर Zenbleed (CVE-2023-20593) को रोकना

नई खोजी गई Zenbleed कमजोरी (CVE-2023-20593) AMD के सभी Zen2 प्रोसेसरों को प्रभावित करती है। दुर्भाग्य से, AMD नवंबर या दिसंबर 2023 तक अपने कई प्रोसेसरों के लिए माइक्रोकोड अपडेट प्रदान नहीं करेगा। तब तक सुरक्षित कैसे रहें? सौभाग्य से, एक सॉफ्टवेयर वर्कअराउंड मौजूद है। जबकि लिनक्स पर सॉफ्टवेयर वर्कअराउंड लगाना एक-लाइनर है, विंडोज पर मामले अधिक जटिल हैं।

सॉफ्टवेयर वर्कअराउंड लागू करने के लिए, MSR CPU रजिस्टर में एक निश्चित बिट (चिकन बिट DE_CFG[9]) सेट करना होता है। जैसा कि Travis Ormandy ने बताया लिनक्स पर Zenbleed से बचने के लिए निम्नलिखित कमांड का उपयोग किया जा सकता है:

root@kitploit:~
# wrmsr -a 0xc0011029 $(($(rdmsr -c 0xc0011029) | (1<<9)))

विंडोज के तहत MSR रजिस्टर सेट करना अधिक कठिन है। केवल कर्नेल-स्तरीय ड्राइवरों को MSR रजिस्टर में लिखने की अनुमति है। इसके अलावा, कर्नेल-स्तरीय ड्राइवर लोड करने के लिए, इसे साइन किया जाना आवश्यक है। यही कारण है कि हमने OpenLibSys.org से मौजूदा WinRing0 ड्राइवर का उपयोग करने का निर्णय लिया। हमने एक PowerShell स्क्रिप्ट लिखी है जो WinRing0 को लोड करती है, ड्राइवरों को उपयुक्त MSR राइट अनुरोध भेजती है और तुरंत बाद WinRing0 ड्राइवर को अनलोड कर देती है। वर्तमान में, हमारी PowerShell स्क्रिप्ट केवल तभी काम करती है जब Hyper-V अक्षम हो। हमारी PowerShell स्क्रिप्ट यहाँ होस्ट की गई है: https://github.com/sbaresearch/stop-zenbleed-win

कृपया ध्यान दें कि PowerShell स्क्रिप्ट के साथ कुछ चेतावनियाँ जुड़ी हैं। स्क्रिप्ट का उपयोग करने से पहले कृपया 'caveats' अनुभाग पढ़ें और अपने विशिष्ट वातावरण के लिए जोखिम विश्लेषण करें।

उपयोग

  • प्रशासक अनुमतियों के साथ PowerShell 5.x में Stop-Zenbleed.ps1 चलाएँ।
  • स्क्रिप्ट केवल Zenbleed से प्रभावित AMD Zen2 CPU पर चलने की अपेक्षा करती है। अन्य सिस्टम पर यह अप्रत्याशित समस्याएँ पैदा कर सकती है, कृपया सावधान रहें।

चेतावनियाँ

  • आपको Hyper-V को अक्षम करना होगा। अन्यथा विंडोज OS स्वयं CPU रिंग 1 में चलता है और कर्नेल-स्तरीय ड्राइवर MSR तक लेखन पहुँच प्राप्त नहीं कर सकता। दुर्भाग्य से Hyper-V को अक्षम करने का अर्थ है Credential Guard और Device Guard को अक्षम करना, दो अन्यथा अनुशंसित सुरक्षा उपाय। हमारे दृष्टिकोण में, JavaScript के माध्यम से संभावित सूचना चोरी के हमले से बचना (Zenbleed का JavaScript के माध्यम से शोषण कम से कम tom's Hardware द्वारा संभव माना जाता है: https://www.tomshardware.com/news/zenbleed-bug-allows-data-theft-from-amds-zen-2-processors-patches-released) Zenbleed भेद्यता (CVE-2023-20593) को रोककर, दो गहराई-में-रक्षा उपायों को अक्षम करने के जोखिम से अधिक महत्वपूर्ण है।
  • WinRing0 कर्नेल-स्तरीय ड्राइवर CVE-2020–14979, एक स्थानीय विशेषाधिकार वृद्धि भेद्यता से ग्रस्त है। देखें https://posts.specterops.io/cve-2020-14979-local-privilege-escalation-in-evga-precisionx1-cf63c6b95896 और https://github.com/openhardwaremonitor/openhardwaremonitor/issues/1557। WinRing0 एक ओपन-सोर्स कर्नेल-स्तरीय ड्राइवर है जिसका उपयोग OpenHardwareMonitor लाइब्रेरी जैसे अन्य ओपन-सोर्स प्रोग्रामों द्वारा भी किया जाता है। समस्या यह है कि ड्राइवर एक एक्सेस कंट्रोल लिस्ट के बिना एक डिवाइस ऑब्जेक्ट बनाता है और इस तरह सभी स्थानीय विंडोज उपयोगकर्ताओं को ड्राइवर के साथ संवाद करने की अनुमति देता है। चूंकि ड्राइवर प्रत्यक्ष हार्डवेयर एक्सेस की अनुमति देता है, NT AUTHORITY\SYSTEM अधिकारों के लिए विशेषाधिकार वृद्धि संभव है। एक वास्तविक समाधान के लिए WinRing0 ड्राइवर में बदलाव और इस प्रकार एक नए हस्ताक्षर की आवश्यकता होगी, जो जटिल है। OpenHardwareMonitor लाइब्रेरी, एक वर्कअराउंड के रूप में, ड्राइवर लोड करने के तुरंत बाद एक्सेस अधिकारों को ठीक करती है (https://github.com/openhardwaremonitor/openhardwaremonitor/commit/0e435cafc61fe84d429e8a9500d666e34e3de67b)। हमारी PowerShell स्क्रिप्ट चिकन बिट सेट करने के तुरंत बाद ड्राइवर को अनलोड करके CVE-2020–14979 के आसपास काम करती है। हालांकि, स्क्रिप्ट के प्रत्येक निष्पादन पर अवसर की एक छोटी समय खिड़की मौजूद होती है। चूंकि चिकन बिट सेट करना स्थायी नहीं है, स्क्रिप्ट को प्रत्येक रीबूट पर निष्पादित करना होता है। हमारे जोखिम विश्लेषण में, Zenbleed (जो दूरस्थ रूप से हो सकता है) के विरुद्ध सुरक्षा के लाभ फिर से स्थानीय विशेषाधिकार वृद्धि के जोखिमों से अधिक हैं। इसके अलावा, हम उपयोगकर्ता प्रक्रियाओं द्वारा शोषण की संभावना को सीमित करने के लिए बूट प्रक्रिया में जितनी जल्दी हो सके स्क्रिप्ट चलाने की सलाह देते हैं। PowerShell स्क्रिप्ट को तैनात करने से पहले कृपया अपने विशिष्ट वातावरण के लिए जोखिम विश्लेषण करें।

मुझे कैसे पता चलेगा कि यह काम करता है?

root@kitploit:~
PS C:\stop-zenbleed-win> powershell -ExecutionPolicy RemoteSigned .\Stop-Zenbleed.ps1
[>] Installing driver...
[SC] CreateService SUCCESS

[>] Starting driver...

SERVICE_NAME: WinRing0_1_2_0
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0
        PID                : 0
        FLAGS              :

[>] Opening driver...
[+] Driver access OK, handle: 2456

[>] Try 1 to apply fix on processor 1
[+] Fix is applied on processor 1 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 2 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 3
[+] Fix is applied on processor 3 (MSR 0xC0011029=0x3004310E08202)
[+] Fix is applied on processor 4 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 5
[+] Fix is applied on processor 5 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 6 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 7
[+] Fix is applied on processor 7 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 8 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 9
[+] Fix is applied on processor 9 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 10 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 11
[+] Fix is applied on processor 11 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 12 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 13
[+] Fix is applied on processor 13 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 14 (MSR 0xC0011029=0x300C310E08203)
[>] Try 1 to apply fix on processor 15
[+] Fix is applied on processor 15 (MSR 0xC0011029=0x300C310E08202)
[+] Fix is applied on processor 16 (MSR 0xC0011029=0x300C310E08203)

[>] Closing driver...

[>] Stopping driver...

SERVICE_NAME: WinRing0_1_2_0
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

[>] Uninstalling driver...
[SC] DeleteService SUCCESS

हमारी PowerShell स्क्रिप्ट को निष्पादित करने के बाद, POC शोषण को कोई और आउटपुट उत्पन्न नहीं करना चाहिए।

कॉपीराइट

  • Stop-Zenbleed.ps1 GNU GPL v3.0 लाइसेंस के तहत प्रदान किया गया है: LICENSE
  • WinRing0 © 2007-2009 OpenLibSys.org है और निम्नलिखित शर्तों के तहत प्रदान किया गया है: WinRing0/LICENSE
टूल डाउनलोड करें
  • यह सॉफ्टवेयर वर्कअराउंड AMD द्वारा अपने CPU में बग को ठीक करने तक एक अस्थायी कार्यसमाधान के रूप में अभिप्रेत है।