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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
sagemcom-fast-3890-exploit — إكسبلويت لمودم الكابل Sagemcom F@ST 3890 يقوم بتنفيذ ثغرة Cable Haunt لتحقيق تنفيذ كود عن بُعد عبر تجاوز سعة المخزن المؤقت القائم على WebSocket وسلسلة ROP. | Kitploit
أدوات/GitHubGitHub/lyrebirds/sagemcom-fast-3890-exploit
أمان الأنظمة المدمجةالاستغلالالهندسة العكسيةاستغلال تطبيقات الويبأمان الأجهزة وإنترنت الأشياءتطوير الحمولاتاستغلال الملفات الثنائية
GitHublyrebirds/sagemcom-fast-3890-exploit

الأكثر شعبية

عرض الكل →

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

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

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

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

sagemcom-fast-3890-exploit

إكسبلويت لمودم الكابل Sagemcom F@ST 3890 يقوم بتنفيذ ثغرة Cable Haunt لتحقيق تنفيذ كود عن بُعد عبر تجاوز سعة المخزن المؤقت القائم على WebSocket وسلسلة ROP.

عرض المستودع
22348منذ 6 سنواتتمت المراجعة من قبل Kitploit

استغلال Sagemcom Fast 3890

يستخدم هذا الاستغلال ثغرة Cable Haunt لفتح قشرة (shell) على مودم الكابل Sagemcom F@ST 3890 (50.10.19*) من خلال الوصول إلى الشبكة المحلية. يجب أن يكون إصدار البرنامج الثابت 50.10.21 أو أحدث آمنًا ضد Cable Haunt. صُمم هذا الإثبات المفاهيمي خصيصًا ليعمل محليًا فقط للحد من احتمالية الاستخدام لأغراض خبيثة. يوجد إثبات مفاهيمي آخر ينشئ قشرة عكسية لاتصال خارجي لجهاز Technicolor TC7230 متاح هنا.

يمكن العثور على قائمة بأجهزة المودم المعروفة بأنها معرضة للخطر على https://cablehaunt.com/#faq-am-i-affected.

كيف يعمل

يقدم الخادم exploit.py موقع ويب، وعند زيارته، يرسل طلب WebSocket خبيثًا إلى مودم الكابل. يُحدث هذا الطلب تجاوزًا لعنوان الإرجاع والسجلات المرافقة له في محلل الطيف (Spectrum Analyzer) الخاص بمودم الكابل، ويستخدم سلسلة ROP لبدء الاستماع لاتصال TCP على المنفذ 1337. سلسلة ROP مُنشأة ومعلَّق عليها في static/exploitSagemcom.js. بعد ذلك يرسل الخادم exploit.py ملف exploit.raw عبر اتصال TCP هذا، والذي سيقوم المودم بتنفيذه. ملف exploit.raw هو reverseshell.c مُجمَّع لبنية MIPS (انظر أدناه كيف ذلك). Reverseshell.c هي قشرة مكتوبة خصيصًا لهذا المودم. تستمع القشرة للأوامر التي سيتم تشغيلها في قشرة eCos على مودم الكابل وتعيد توجيه STDOUT إلى اتصال TCP.

يمكنك العثور على فيديو يشرح الاستغلال هنا: https://www.youtube.com/watch?v=5FM9mS5ck3Y

تشغيل الاستغلال

ملاحظة: نظام Windows 10 غير مدعوم حاليًا، يجب عليك استخدام نظام تشغيل مبني على Linux

قم بتثبيت pwntools و flask لبايثون 3 ثم شغّل python exploit.py. الآن اذهب إلى http://127.0.0.1:8080 في متصفحك لاستغلال المودم. لن يعمل Firefox لهذا الغرض، لأن إصدار WebSocket المستخدم غير متوافق.

الآن يجب أن تظهر قشرة تفاعلية في طرفيتك التي تشغّل سكربت بايثون. إذا خرجت من القشرة، يجب إعادة تشغيل المودم لبدء قشرة جديدة.

بناء حمولة خاصة بك

إذا كنت تريد تجميع حمولة خاصة بك، يمكنك الحصول على سلسلة الأدوات من aeolus وتشغيل الأمر التالي:

root@kitploit:~
/<toolchain Path>/gnutools/mipsisa32-elf/bin/mipsisa32-elf-gcc -O3 -c ./reverseshell.c -o ./reverseshell.o && /<toolchain Path>/toolchains/gnutools/mipsisa32-elf/bin/mipsisa32-elf-objcopy -O binary reverseshell.o exploit.raw

استغلال أجهزة مودم أخرى

يمكنك بناء واستغلال أي مودم معرض لثغرة Cable Haunt باستخدام هذه التقنية. نوصي بقراءة التقرير الفني قبل محاولة كتابة سلسلة ROP خاصة بك. اذهب إلى Cable Haunt للحصول على قائمة بأجهزة مودم الكابل المعروفة بأنها معرضة للخطر.

بناء سلسلة ROP

أولاً، ستحتاج إلى البرنامج الثابت لمودم الكابل الذي تنوي استغلاله. بعد ذلك، قم بهندسة عكسية للبرنامج الثابت للعثور على عناوين الدوال ذات الصلة لبناء الاستغلال مثل socket() و bind() و accept() و listen() و recv() و connect() لقشرة. ثم يمكن استخدام Ropper للعثور على الأدوات (gadgets) باستخدام الأمر التالي:

root@kitploit:~
python Ropper.py --type all --all --badbytes 00c0c1f5f6f7f8f9fafbfcfdfeff2c -r -a MIPSBE -I 0x80004000 --console -f <firmware path>

الأدوات غير القابلة للوصول

لا يمكن الوصول إلى جميع الأدوات، لأن الأدوات هي مجرد عناوين تُرسل كبايتات خام ولا يمكن إرسال جميع البايتات كطلب WebSocket بإطارات نصية. على سبيل المثال، لا يمكن إدراج العنوان 0x8080a864 مباشرة في إطار نص WebSocket، لأنه ليس حرف UTF-8 صالحًا. ومع ذلك يمكن إدراج العنوان 0xf28080a864، لأن 0xf2 تعني بدء رمز UTF-8 جديد مع 0x8080a864 كبايتات لاحقة. لا يمكن أن تكون البايتات التالية موجودة في أي عنوان مستخدم بسبب مواصفات utf-8: 0x00, 0xc0,0xc1,0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0x2c. توجد قيود أخرى أيضًا سيتم شرحها قريبًا بمزيد من التفصيل في تقريرنا. في الوقت الحالي، يمكنك قراءة واستخدام utf8TestScript.py لاختبار ما إذا كان العنوان قابلًا للوصول.

حمولة مخصصة

يمكنك استخدام العملية الموصوفة أعلاه لتجميع حمولة خاصة بك لمودم كابل جديد، لكن تذكر أن الحمولة يجب ألا تعود (return)! إذا عادت، ستبحث العملية عن عنوان إرجاع على المكدس المحطم وتتعطل.

استخراج البرنامج الثابت من أجهزة مودم الكابل

بالنسبة لمعظم أجهزة المودم، ستحتاج إلى طريقة للوصول إلى قشرة eCos لاستخراج البرنامج الثابت أو استخراجه مباشرة من شريحة الفلاش. عادةً ما تكون هذه البرامج الثابتة معبأة بتنسيق يسمى ProgramStore إذا كانت وحدة التحكم التسلسلية لا تعمل، فجرّب تشغيل: (قد تعمل فقط إذا كان كابل الكواكس مفصولًا أو غير مخصص)

root@kitploit:~
snmpset -v2c -c private 192.168.0.1 1.3.6.1.4.1.4413.2.2.2.1.9.1.2.1.0 i 2
snmpset -v2c -c private 192.168.0.1 1.3.6.1.4.1.4413.2.2.2.1.9.1.2.1.0 i 0
snmpset -v2c -c private 192.168.0.1 1.3.6.1.4.1.4413.2.2.2.1.9.1.2.1.0 i 2

بعد ذلك يجب أن تكون القشرة قابلة للوصول، ويمكن أن تسهّل bcm2-utils عملية استخراجها باستخدام هذه القشرة. عند إجراء الهندسة العكسية للبرنامج الثابت المستخرج، يكون عنوان التحميل/الأساس (على حد ما رأينا) دائمًا 0x80004000.

تنزيل الأداة