Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/bedrock-safeguard/gentlemen-decryptor
मेमोरी फोरेंसिकभेद्यता विश्लेषणशोषणरिवर्स इंजीनियरिंगफोरेंसिकमालवेयर विश्लेषणडिजिटल फोरेंसिकक्रिप्टोग्राफीलर्निंग और शिक्षा

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें
घटना प्रतिक्रिया
GitHubbedrock-safeguard/gentlemen-decryptor

gentlemen-decryptor

पहला डिक्रिप्टर द जेंटलमेन रैनसमवेयर के लिए — प्रक्रिया मेमोरी डंप से एन्क्रिप्शन कुंजियाँ पुनर्प्राप्त करता है X25519 एफीमेरल कुंजी निष्कर्षण का उपयोग करके। 35/35 फ़ाइलें डिक्रिप्ट की गईं। शोध बेडरॉक सेफगार्ड इंक द्वारा।

रिपॉजिटरी देखें
307144 महीने पहलेKitploit द्वारा समीक्षित

द जेंटलमेन रैंसमवेयर डिक्रिप्टर

द जेंटलमेन रैंसमवेयर के लिए पहली सार्वजनिक रूप से उपलब्ध डिक्रिप्शन विधि।

द जेंटलमेन (जिसे हस्तालामुएर्ते के नाम से भी जाना जाता है) वर्तमान में वैश्विक स्तर पर सबसे सक्रिय रैंसमवेयर-एज़-ए-सर्विस (RaaS) ऑपरेशन है, जिसमें Q1 2026 तक 320+ पुष्ट पीड़ित हैं। अब तक, हर प्रमुख सुरक्षा विक्रेता — Cybereason, Group-IB, Check Point, ASEC, Trend Micro — ने एन्क्रिप्शन को क्रिप्टोग्राफिक रूप से अटूट बताया था। कोई सार्वजनिक डिक्रिप्टर मौजूद नहीं था।

हमने इसे तोड़ दिया।


यह कैसे काम करता है

द जेंटलमेन XChaCha20 स्ट्रीम एन्क्रिप्शन का उपयोग X25519 ECDH कुंजी विनिमय के साथ करता है। प्रत्येक फ़ाइल को एक ताज़ा एफीमेरल कुंजी जोड़ी से प्राप्त एक अद्वितीय कुंजी से एन्क्रिप्ट किया जाता है। एन्क्रिप्शन गणितीय रूप से सही है — हमने गणित को नहीं तोड़ा।

हमने कार्यान्वयन को तोड़ा।

Go उपयोग के बाद हीप पर क्रिप्टोग्राफ़िक कुंजी सामग्री को शून्य नहीं करता (CWE-244)। एक बार किसी फ़ाइल के लिए एफीमेरल X25519 निजी कुंजी उत्पन्न हो जाने के बाद, यह मिटाए जाने के बजाय प्रक्रिया मेमोरी में रहती है — इसलिए लाइव प्रक्रिया का डंप पहले से एन्क्रिप्ट की गई फ़ाइलों की कुंजियों को पुनर्प्राप्त करता है, अक्सर कई GC-शेष प्रतियों में। प्रक्रिया समाप्त होने पर OS इस मेमोरी को पुनः प्राप्त कर लेता है।

एन्क्रिप्शन के दौरान या अंत के निकट लिए गए लाइव प्रक्रिया के मेमोरी डंप में आमतौर पर उस बिंदु तक संसाधित प्रत्येक फ़ाइल के एफीमेरल कुंजियाँ होती हैं — हमारे 35-फ़ाइल विश्लेषण में, वे सभी थीं।

परिणाम: 35/35 फ़ाइलें 100% सटीकता के साथ डिक्रिप्ट की गईं। सभी 35 कुंजियाँ एक ही मेमोरी डंप से 0.6 सेकंड में पुनर्प्राप्त की गईं।


पीड़ितों के लिए

यदि आप द जेंटलमेन रैंसमवेयर से प्रभावित हुए हैं, तो आप फ़ाइलों को पुनर्प्राप्त करने में सक्षम हो सकते हैं यदि रैंसमवेयर प्रक्रिया का एक मेमोरी इमेज तब कैप्चर किया गया था जब वह चल रही थी। पुनर्प्राप्ति उस इमेज से प्रति-फ़ाइल एफीमेरल निजी कुंजियाँ निकालकर काम करती है, इसलिए यह सर्वोत्तम प्रयास है और आंशिक हो सकता है — केवल वे फ़ाइलें जिनकी कुंजी पहले ही उत्पन्न हो चुकी थी और कैप्चर के समय अभी भी मौजूद थी, पुनर्प्राप्त की जा सकती हैं।

व्यवहार में इसका क्या अर्थ है:

  • प्रत्येक फ़ाइल की कुंजी उस फ़ाइल के एन्क्रिप्ट होने के क्षण बनाई जाती है। हमले की शुरुआत में लिया गया कैप्चर केवल उस बिंदु तक संसाधित फ़ाइलों की कुंजियाँ रखता है; निष्पादन के अंत के निकट लिया गया कैप्चर सबसे व्यापक कवरेज देता है।
  • कुंजियाँ चल रही प्रक्रिया की मेमोरी में रहती हैं। प्रक्रिया चलने के दौरान Go इस कुंजी सामग्री को शून्य नहीं करता (CWE-244), इसलिए लाइव प्रक्रिया का डंप आमतौर पर पहले से एन्क्रिप्ट की गई फ़ाइलों की कुंजियाँ देता है — अक्सर वे सभी।
  • प्रक्रिया समाप्त होने के तुरंत बाद कुंजियाँ खो जाती हैं। एक बार रैंसमवेयर प्रक्रिया समाप्त होने के बाद, ऑपरेटिंग सिस्टम अपनी मेमोरी पुनः प्राप्त कर लेता है और कुंजियाँ जल्दी गायब हो जाती हैं। मेमोरी इमेज केवल तभी मदद करता है यदि वह प्रक्रिया को जीवित दर्शाता है — एक नियमित डिस्क इमेज, या मशीन के रीबूट होने के बाद लिया गया RAM कैप्चर, लगभग निश्चित रूप से उन्हें नहीं रखेगा।
  • कोई मास्टर या स्केलेटन कुंजी नहीं है। ऑपरेटर की निजी कुंजी कभी भी पीड़ित सिस्टम पर मौजूद नहीं होती। पुनर्प्राप्ति पूरी तरह से आपके मेमोरी इमेज में प्रति-फ़ाइल कुंजियों के भौतिक रूप से मौजूद होने पर निर्भर करती है; ऐसे इमेज के बिना, यह उपकरण उन फ़ाइलों को पुनर्प्राप्त नहीं कर सकता।

एक उपयोगी मेमोरी इमेज कहाँ मौजूद हो सकता है — प्रत्येक केवल तभी मदद करता है यदि उसने प्रक्रिया को चलते समय कैप्चर किया हो:

  1. EDR/XDR समाधान — CrowdStrike, SentinelOne, Carbon Black, Microsoft Defender for Endpoint, और अन्य जब खतरे का पता लगाते हैं तो प्रक्रिया मेमोरी कैप्चर कर सकते हैं। घटना से मेमोरी कैप्चर या फोरेंसिक स्नैपशॉट के लिए अपने EDR कंसोल की जाँच करें।
  2. घटना प्रतिक्रिया — यदि आपकी IR टीम ने रैंसमवेयर प्रक्रिया को समाप्त करने से पहले कैप्चर करने के लिए procdump, टास्क मैनेजर → "Create dump file", या किसी अन्य फोरेंसिक टूल का उपयोग किया।
  3. Windows त्रुटि रिपोर्टिंग — यदि रैंसमवेयर क्रैश हो गया, तो एक प्रक्रिया डंप C:\ProgramData\Microsoft\Windows\WER\ में मौजूद हो सकता है।
  4. कर्नेल क्रैश डंप — C:\Windows\Minidump\ और C:\Windows\MEMORY.DMP, यदि प्रक्रिया चलने के दौरान बगचेक हुआ (केवल पूर्ण मेमोरी डंप में प्रक्रिया मेमोरी शामिल होती है; मिनीडंप में आमतौर पर नहीं होती)।
  5. पूर्ण RAM कैप्चर — सिस्टम RAM का एक फोरेंसिक इमेज जब मशीन अभी भी चल रही थी (WinPmem, Magnet RAM Capture, FTK Imager)।
  6. हाइबरनेशन फ़ाइल — C:\hiberfil.sys, यदि सिस्टम रैंसमवेयर प्रक्रिया सक्रिय होने के दौरान हाइबरनेट हुआ (यह उस क्षण एक RAM स्नैपशॉट को फ्रीज़ करता है)।

निश्चित नहीं हैं कि आपकी घटना के लिए इनमें से कोई मौजूद है? हमसे [email protected] पर संपर्क करें और हम आपको जाँचने में मदद कर सकते हैं।

पुनर्प्राप्ति चरण

# 1. Install dependencies
pip install cryptography

# 2. Extract ephemeral public keys from your encrypted files
python extract_keys_from_files.py --input-dir /path/to/encrypted/files --output keys.json

# 3. Search the memory dump for matching private keys
python recover_keys.py --dump process_memory.dmp --pubkeys keys.json --output recovered_keys.json

# 4. Decrypt your files
python decrypt.py --keys recovered_keys.json --input-dir /path/to/encrypted/files --output-dir /path/to/recovered

⚠️ आंशिक-एन्क्रिप्शन मोड (--fast / --superfast / --ultrafast)

द जेंटलमेन लॉकर स्पीड फ़्लैग का समर्थन करता है जो 1 MB से बड़ी फ़ाइलों पर आंशिक एन्क्रिप्शन करते हैं। --superfast के तहत, एक बड़ी फ़ाइल में केवल ~3% बाइट्स एन्क्रिप्ट किए जाते हैं; शेष ~97% मूल डिस्क स्थिति पर प्लेनटेक्स्ट के रूप में छोड़ दिया जाता है। यह प्रकाशित RE (ASEC, Trend Micro, Cybereason) में सत्यापित है।

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

इस कारण से, decrypt.py डिफ़ॉल्ट रूप से 1 MB से बड़ी फ़ाइलों को संसाधित करने से इनकार करता है। यदि आपने सत्यापित किया है कि लॉकर पूर्ण-एन्क्रिप्शन मोड में चला (केवल छोटी फ़ाइलें, या स्पीड फ़्लैग के बिना बिल्ड), तो ओवरराइड करने के लिए --force-large पास करें।

आंशिक-एन्क्रिप्शन पीड़ितों के लिए, इसके बजाय अनएन्क्रिप्टेड क्षेत्रों पर प्रारूप-जागरूक पुनर्प्राप्ति उपकरण का उपयोग करें:

  • CyberArk White Phoenix — Office दस्तावेज़, PDFs (https://github.com/cyberark/White-Phoenix)
  • PhotoRec — सामान्य मीडिया फ़ाइल कार्विंग
  • प्रारूप-विशिष्ट कार्वर — आपके फ़ाइल प्रकारों के अनुरूप (SQLite, QuickBooks, आदि)

Bedrock Safeguard सक्रिय रूप से आंशिक-एन्क्रिप्शन मोड की चंक-ऑफ़सेट ज्यामिति का रिवर्स-इंजीनियरिंग कर रहा है। जब वह कार्य पूरा हो जाएगा, तो इस डिक्रिप्टर को आंशिक रूप से एन्क्रिप्टेड सेगमेंट को सुरक्षित रूप से संभालने के लिए अपडेट किया जाएगा।


तकनीकी विश्लेषण

एन्क्रिप्शन योजना

Per-file encryption:
  1. Generate 32 random bytes              -> ephemeral private key (crypto/rand.Read)
  2. X25519(ephemeral_priv, operator_pub)  -> shared_secret (32 bytes)
  3. XChaCha20(plaintext, shared_secret)   -> ciphertext
  4. Append to file: --eph--<base64(ephemeral_PUBLIC_key)>--marker--GENTLEMEN

एफीमेरल निजी कुंजी महत्वपूर्ण गुप्त है। यह केवल प्रक्रिया मेमोरी में मौजूद होती है और कभी डिस्क पर नहीं लिखी जाती। लेकिन Go का goroutine स्टैक आवंटक चर दायरे से बाहर जाने पर मेमोरी को शून्य नहीं करता (CWE-244), जिससे कुंजी सामग्री मेमोरी फोरेंसिक के माध्यम से सुलभ रहती है।

कमजोरी वर्गीकरण

IDDescription
CWE-244रिलीज़ से पहले हीप मेमोरी का अनुचित सफ़ाई
CWE-316मेमोरी में संवेदनशील जानकारी का स्पष्ट पाठ भंडारण

कुंजी पुनर्प्राप्ति विधि

  1. सक्रिय एन्क्रिप्शन के दौरान एक पूर्ण प्रक्रिया मेमोरी डंप कैप्चर करें
  2. 8-बाइट संरेखित ऑफ़सेट पर 32-बाइट मानों के लिए स्कैन करें
  3. प्रत्येक उम्मीदवार के लिए, public = X25519(candidate, basepoint) की गणना करें
  4. एन्क्रिप्टेड फ़ाइल फ़ुटर से निकाले गए एफीमेरल सार्वजनिक कुंजियों से तुलना करें
  5. मिलान मिला = उस फ़ाइल के लिए निजी कुंजी पुनर्प्राप्त
  6. डिक्रिप्शन कुंजी व्युत्पन्न करें: shared_secret = X25519(ephemeral_private, operator_public)
  7. shared_secret को कुंजी के रूप में उपयोग करके XChaCha20 से डिक्रिप्ट करें

टूल डाउनलोड करें