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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
dual-ec-drbg — Educational Proof-of-Concept for the Dual_EC_DRBG backdoor (CVE-2014-8610) - NIST P-256 state recovery attack demonstration | Kitploit
उपकरण/GitHubGitHub/eddieoz/dual-ec-drbg
ExploitationCryptographyCTFPapers & ResearchLearning & EducationLabs & Practice
GitHubeddieoz/dual-ec-drbg

dual-ec-drbg

Educational Proof-of-Concept for the Dual_EC_DRBG backdoor (CVE-2014-8610) - NIST P-256 state recovery attack demonstration

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

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

सभी देखें →

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

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

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

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

Dual_EC_DRBG बैकडोर: शैक्षिक प्रूफ-ऑफ-कॉन्सेप्ट

सुरक्षा पेशेवरों के लिए | केवल शैक्षिक उद्देश्यों के लिए


⚠️ अस्वीकरण

इस रिपॉजिटरी में Dual_EC_DRBG क्रिप्टोग्राफिक बैकडोर (CVE-2014-8610) का एक शैक्षिक प्रदर्शन है, जो स्नोडेन के खुलासों के बाद सामने आई एक सुप्रलेखित कमजोरी है।

यह केवल शैक्षिक उद्देश्यों के लिए है:

  • 10+ वर्ष पुरानी, अप्रचलित कमजोरी का प्रदर्शन करता है
  • सार्वजनिक रूप से ज्ञात मापदंडों और गणितीय संबंधों का उपयोग करता है
  • सुरक्षा प्रशिक्षण और जागरूकता के लिए अभिप्रेत है
  • जिम्मेदार प्रकटीकरण प्रथाओं का पालन करता है

📚 आप क्या सीखेंगे

  1. ऐतिहासिक संदर्भ: कैसे NSA ने कथित तौर पर NIST मानक में बैकडोर लगाया
  2. गणितीय आधार: अण्डाकार वक्र और असतत लघुगणक समस्या
  3. बैकडोर तंत्र: क्यों Q = d·P एक मास्टर कुंजी बनाता है
  4. लाइव आक्रमण डेमो: 32 बाइट्स के देखे गए आउटपुट से स्थिति पुनर्प्राप्ति
  5. शमन उपाय: समान कमजोरियों से कैसे बचें

🚀 त्वरित प्रारंभ

पूर्वापेक्षाएँ

  • Python 3.8+ (हम pyenv का उपयोग करने की सलाह देते हैं)
  • pip

विकल्प 1: लॉन्चर स्क्रिप्ट का उपयोग (अनुशंसित)

root@kitploit:~
cd dual-ec-drbg

# सेटअप और चलाने के लिए एक कमांड
./run.sh

यह स्क्रिप्ट करेगी:

  1. pyenv स्थानीय कॉन्फ़िगरेशन का पता लगाना/बनाना
  2. venv/ में एक वर्चुअल वातावरण बनाना
  3. सभी निर्भरताएँ स्थापित करना
  4. नोटबुक के साथ Jupyter लॉन्च करना

विकल्प 2: pyenv के साथ मैन्युअल सेटअप

root@kitploit:~
cd dual-ec-drbg

# pyenv के साथ स्थानीय Python संस्करण सेट करें
pyenv local 3.12.12

# वर्चुअल वातावरण बनाएँ
python3 -m venv venv
source venv/bin/activate

# निर्भरताएँ स्थापित करें
pip install --upgrade pip
pip install -r requirements.txt

# Jupyter लॉन्च करें
jupyter notebook dual_ec_drbg_backdoor_poc.ipynb

विकल्प 3: सिस्टम Python (अनुशंसित नहीं)

root@kitploit:~
cd dual-ec-drbg
pip install --user -r requirements.txt
jupyter notebook dual_ec_drbg_backdoor_poc.ipynb

निर्भरताएँ

  • ecdsa>=0.18.0 - NIST P-256 वक्र संक्रियाएँ
  • jupyter>=1.0.0 - नोटबुक इंटरफ़ेस
  • ipython>=7.0.0 - इंटरैक्टिव Python

📖 नोटबुक सामग्री


🎯 संक्षेप में आक्रमण

root@kitploit:~
Dual_EC_DRBG स्थिति अद्यतन:    s_{i+1} = φ(s_i · P)
Dual_EC_DRBG आउटपुट:          r_i = φ(s_i · Q)     [काट-छाँट किया गया]

बैकडोर संबंध:        Q = d · P

आक्रमण (d जानने पर):
1. r_i का निरीक्षण करें (30+ बाइट्स आउटपुट)
2. उम्मीदवार R का पुनर्निर्माण करें जहाँ x(R) ≈ r_i
3. गणना करें: s_{i+1} = φ(d⁻¹ · R) = φ(s_i · P)
4. सभी भविष्य के आउटपुट की भविष्यवाणी करें!

समय जटिलता: O(1) - लैपटॉप पर मिलीसेकंड
आवश्यक डेटा: 32 बाइट्स का देखा गया आउटपुट

🧪 प्रदर्शन चलाना

इंटरैक्टिव मोड

  1. नोटबुक खोलें:

    root@kitploit:~
    jupyter notebook dual_ec_drbg_backdoor_poc.ipynb
    
  2. सेल को क्रम से चलाएँ (Shift+Enter)

  3. निरीक्षण करें:

    • ईमानदार और बैकडोर्ड दोनों DRBG सांख्यिकीय रूप से यादृच्छिक आउटपुट उत्पन्न करते हैं
    • केवल बैकडोर्ड संस्करण स्थिति पुनर्प्राप्ति के प्रति संवेदनशील है
    • आक्रमण मिलीसेकंड में सफल होता है

कमांड लाइन (वैकल्पिक)

Python कोड निकालें और चलाएँ:

root@kitploit:~
# Python स्क्रिप्ट में कोड सेल निकालें
jupyter nbconvert --to script dual_ec_drbg_backdoor_poc.ipynb

# स्क्रिप्ट चलाएँ
python dual_ec_drbg_backdoor_poc.py

📊 अपेक्षित आउटपुट

root@kitploit:~
[=== ईमानदार Dual_EC_DRBG ===]
[+] DRBG प्रारंभ किया गया
    मोड: ईमानदार
    P = (6b17d1f2e12c4247..., 4fe342e2fe1a7f9b...)
    Q = (a53a7f9b2e1c4247..., 7fe342e2fe1a7f9b...)

[=== बैकडोर्ड Dual_EC_DRBG ===]
[+] DRBG प्रारंभ किया गया
    मोड: बैकडोर्ड
    P = (6b17d1f2e12c4247..., 4fe342e2fe1a7f9b...)
    Q = (b23d7c9a3f8e5156..., 9ab456d3c7e2f1a8...)
    गुप्त d = 0x4f3e2d1c0b9a8f7e...

[=== आक्रमण निष्पादन ===]
[+] देखा गया आउटपुट: a1b2c3d4e5f6...
[+] वक्र पर 2 उम्मीदवार बिंदु पाए गए
...
[OK] पूर्ण मिलान - सभी भविष्य के आउटपुट की भविष्यवाणी की गई!

🔍 मुख्य निष्कर्ष

यह बैकडोर क्यों घातक है

  1. सांख्यिकीय रूप से अज्ञेय: आउटपुट सभी यादृच्छिकता परीक्षण पास करता है
  2. गणितीय, कोड नहीं: पता लगाने के लिए कोई दुर्भावनापूर्ण कोड नहीं
  3. मास्टर कुंजी वास्तुकला: एक गुप्त (d) सभी उदाहरणों को तोड़ देता है
  4. कम पता लगाने की संभावना: d के बिना बैकडोर अज्ञेय

ऐतिहासिक प्रभाव


🛡️ शमन उपाय

कभी उपयोग न करें

  • ❌ Dual_EC_DRBG (2014 से अप्रचलित)

इसके बजाय उपयोग करें

  • ✅ /dev/urandom या getrandom() (Linux)
  • ✅ BCryptGenRandom() (Windows)
  • ✅ CryptoKit (Apple)
  • ✅ Hash_DRBG, HMAC_DRBG, CTR_DRBG (NIST SP 800-90A Rev 1)

सुरक्षा ऑडिटिंग

  • Dual_EC उपयोग के लिए निर्भरताओं का ऑडिट करें
  • महत्वपूर्ण प्रणालियों में RNG स्रोतों को सत्यापित करें
  • सत्यापन योग्य पैरामीटर उत्पादन की मांग करें

📚 संदर्भ

  1. NIST SP 800-90A Rev 1 - वर्तमान DRBG मानक (Dual_EC हटा दिया गया)
  2. Shumow & Ferguson 2007 - मूल बैकडोर चेतावनी
  3. Bernstein et al. - Dual EC: A Standardized Back Door
  4. Checkoway et al. - Juniper Analysis
  5. Reuters - NSA and RSA

🤝 योगदान

यह एक शैक्षिक संसाधन है। सुधारों का स्वागत है:

  • अतिरिक्त विज़ुअलाइज़ेशन
  • विस्तारित ऐतिहासिक संदर्भ
  • अधिक आक्रमण प्रकार

📜 लाइसेंस

MIT लाइसेंस - विवरण के लिए LICENSE फ़ाइल देखें।

जिम्मेदारीपूर्वक और नैतिक रूप से उपयोग करें। यह कोड केवल शैक्षिक उद्देश्यों के लिए है।


🎓 प्रशिक्षकों के लिए

यह नोटबुक इसके लिए उपयुक्त है:

  • क्रिप्टोग्राफी पाठ्यक्रम
  • सुरक्षा जागरूकता प्रशिक्षण
  • सम्मेलन प्रस्तुतियाँ
  • CTF चुनौतियाँ

अनुशंसित प्रस्तुति समय: 45-60 मिनट


क्रिप्टोग्राफिक कमजोरियों को समझने और रोकने के लिए शैक्षिक उद्देश्यों के लिए बनाया गया।

टूल डाउनलोड करें
अनुभागविवरण
1. ऐतिहासिक संदर्भ1997-2024 तक की समयरेखा, प्रमुख खिलाड़ी, स्नोडेन खुलासे
2. गणितीय आधारअण्डाकार वक्र, ECDLP, बैकडोर गणित
3. NIST P-256 पैरामीटरवास्तविक FIPS 186-4 वक्र पैरामीटर
4. एल्गोरिदम विनिर्देशNIST SP 800-90 DRBG विनिर्देश
5. कार्यान्वयनईमानदार बनाम बैकडोर्ड DRBG वर्ग
6. आक्रमण कार्यान्वयनगुप्त d के साथ स्थिति पुनर्प्राप्ति आक्रमण
7. लाइव प्रदर्शनJuniper-शैली आक्रमण सिमुलेशन
8. शमन उपायसीखे गए सबक और सर्वोत्तम प्रथाएँ
घटनातिथिप्रभाव
NIST मानकीकरण2006Dual_EC आधिकारिक हो जाता है
RSA BSAFE डिफ़ॉल्ट2004-2013कमजोर डिफ़ॉल्ट का उपयोग करने के लिए $10M भुगतान
स्नोडेन खुलासे2013सार्वजनिक जागरूकता
Juniper बैकडोर2015हमलावरों ने कमजोर Dual_EC का शोषण किया
NIST वापसी2014आधिकारिक अप्रचलन