Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
dual-ec-drbg — إثبات مفهوم تعليمي للباب الخلفي Dual_EC_DRBG (CVE-2014-8610) - عرض توضيحي لهجوم استعادة الحالة NIST P-256 | Kitploit
أدوات/GitHubGitHub/eddieoz/dual-ec-drbg
الاستغلالالتشفيرCTFالأوراق والأبحاثالتعلم والتعليممختبرات وتدريب عملي
GitHubeddieoz/dual-ec-drbg

dual-ec-drbg

إثبات مفهوم تعليمي للباب الخلفي Dual_EC_DRBG (CVE-2014-8610) - عرض توضيحي لهجوم استعادة الحالة NIST P-256

عرض المستودع
منذ 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

# One command to setup and run
./run.sh

سينفذ هذا النص ما يلي:

  1. كشف/إنشاء إعداد pyenv المحلي
  2. إنشاء بيئة افتراضية في venv/
  3. تثبيت جميع التبعيات
  4. تشغيل Jupyter مع الدفتر

الخيار 2: إعداد يدوي باستخدام pyenv

root@kitploit:~
cd dual-ec-drbg

# Set local Python version with pyenv
pyenv local 3.12.12

# Create virtual environment
python3 -m venv venv
source venv/bin/activate

# Install dependencies
pip install --upgrade pip
pip install -r requirements.txt

# Launch Jupyter
jupyter notebook dual_ec_drbg_backdoor_poc.ipynb

الخيار 3: بايثون النظام (غير موصى به)

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 - بايثون تفاعلي

📖 محتويات الدفتر


🎯 الهجوم باختصار

root@kitploit:~
Dual_EC_DRBG State Update:    s_{i+1} = φ(s_i · P)
Dual_EC_DRBG Output:          r_i = φ(s_i · Q)     [truncated]

Backdoor Relationship:        Q = d · P

Attack (knowing d):
1. Observe r_i (30+ bytes of output)
2. Reconstruct candidate R where x(R) ≈ r_i  
3. Compute: s_{i+1} = φ(d⁻¹ · R) = φ(s_i · P)
4. Predict ALL future output!

Time Complexity: O(1) - milliseconds on a laptop
Data Required: 32 bytes of observed output

🧪 تشغيل العرض التوضيحي

الوضع التفاعلي

  1. افتح الدفتر:

    root@kitploit:~
    jupyter notebook dual_ec_drbg_backdoor_poc.ipynb
    
  2. شغل الخلايا بالتسلسل (Shift+Enter)

  3. لاحظ:

    • كلا DRBG الأمين والمخترق ينتجان مخرجات عشوائية إحصائيًا
    • فقط النسخة المخترقة معرضة لاستعادة الحالة
    • الهجوم ينجح في ميلي ثانية

سطر الأوامر (اختياري)

استخرج وشغل كود بايثون:

root@kitploit:~
# Extract code cells to a Python script
jupyter nbconvert --to script dual_ec_drbg_backdoor_poc.ipynb

# Run the script
python dual_ec_drbg_backdoor_poc.py

📊 المخرجات المتوقعة

root@kitploit:~
[=== HONEST Dual_EC_DRBG ===]
[+] DRBG initialized
    Mode: HONEST
    P = (6b17d1f2e12c4247..., 4fe342e2fe1a7f9b...)
    Q = (a53a7f9b2e1c4247..., 7fe342e2fe1a7f9b...)

[=== BACKDOORED Dual_EC_DRBG ===]
[+] DRBG initialized
    Mode: BACKDOORED
    P = (6b17d1f2e12c4247..., 4fe342e2fe1a7f9b...)
    Q = (b23d7c9a3f8e5156..., 9ab456d3c7e2f1a8...)
    Secret d = 0x4f3e2d1c0b9a8f7e...

[=== ATTACK EXECUTION ===]
[+] Observed output: a1b2c3d4e5f6...
[+] Found 2 candidate points on curve
...
[OK] PERFECT MATCH - All future output predicted!

🔍 النتائج الرئيسية

لماذا هذا الباب الخلفي خبيث

  1. غير قابل للاكتشاف إحصائيًا: المخرجات تجتاز جميع اختبارات العشوائية
  2. رياضي، ليس كودًا: لا يوجد كود ضار لاكتشافه
  3. هندسة المفتاح الرئيسي: سر واحد (d) يكسر جميع الحالات
  4. احتمالية اكتشاف منخفضة: الباب الخلفي غير قابل للاكتشاف بدون d

التأثير التاريخي


🛡️ التخفيفات

لا تستخدم أبدًا

  • ❌ Dual_EC_DRBG (مهمل منذ 2014)

استخدم بدلاً من ذلك

  • ✅ /dev/urandom أو getrandom() (لينكس)
  • ✅ BCryptGenRandom() (ويندوز)
  • ✅ CryptoKit (أبل)
  • ✅ Hash_DRBG, HMAC_DRBG, CTR_DRBG (مراجعة 1 لـ NIST SP 800-90A)

التدقيق الأمني

  • تدقيق التبعيات لاستخدام Dual_EC
  • التحقق من مصادر RNG في الأنظمة الحرجة
  • المطالبة بتوليد معاملات قابلة للتحقق

📚 المراجع

  1. NIST SP 800-90A Rev 1 - معيار DRBG الحالي (تمت إزالة Dual_EC)
  2. Shumow & Ferguson 2007 - التحذير الأصلي للباب الخلفي
  3. Bernstein et al. - Dual EC: باب خلفي معياري
  4. Checkoway وآخرون - تحليل Juniper
  5. رويترز - NSA و 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. التخفيفالدروس المستفادة وأفضل الممارسات
الحدثالتاريخالتأثير
توحيد NIST2006يصبح Dual_EC رسميًا
الإعداد الافتراضي لـ RSA BSAFE2004-2013دفعة 10 ملايين دولار لاستخدام الإعداد الافتراضي الضعيف
تسريبات سنودن2013الوعي العام
باب Juniper الخلفي2015استغل المهاجمون Dual_EC الضعيف
سحب NIST2014الإهمال الرسمي