Делаем USB-Backdoor из Raspberry Pi Zero W и P4wnP1
https://t.me/hacker_placeДоброго времени суток дорогие друзья. В этом посте я хочу показать, как собрать небольшой гаджет, используя Raspberry Pi Zero W. Суть которого будет заключаться в создание USB-Backdoor-а.
Что вам нужно:
- Raspberry Pi Zero W
- Micro-SD карта
- USB-шнурок(USB-MicroUSB)
- Последняя версия Raspbian (достаточно версии Lite)
- Программное обеспечение P4wnP1
Особенности P4wnP1:
- Скрытый канал HID Frontdoor / Backdoor: Удаленный доступ к ОС Microsoft Windows через устройства HID
- Windows 10 Lockpicker: Разблокировка ОС Microsoft Windows со слабыми паролями (полностью автоматизировано).
- Кража учетных данных браузера: Крадет учетные данные из браузера и копирует их на встроенную SD-карту.
- Доступ к SSH по Wi-Fi, поддерживает скрытый ESSID.
- Эмуляция USB-устройства. Работает с поддержкой Windows Plug and Play. Поддерживает следующие типы устройств:HID Клавиатура / Мышь.
- Запоминающее устройство USB: в настоящее время только в демонстрационной конфигурации с 128-мегабайтным диском.
- RNDIS: сеть Microsoft Windows.
- CDC ECM: сеть MacOS / Linux.
- Скрипты полезной нагрузки на основе Bash.
- John the Ripper Jumbo. Готовая версия скомпилирована!
- Интеграция с AutoSSH: для простых обратных туннелей ssh.
- Обратная связь через состояния светодиодов с помощью простой команды bash ( led_blink).
- Расширенные функции HID:Полезные нагрузки клавиатуры, которые могут быть вызваны индикаторами основной клавиатуры (NUMLOCK, CAPSLOCK и SCROLLLOCK).
- Динамическое разветвление полезной нагрузки на основе светодиодных триггеров
- Поддерживает DuckyScripts!
- Поддержка многоязычной раскладки клавиатуры (не нужно беспокоиться о целевом языке при использовании команд HID).
- Загрузка начинается, когда загружается целевой драйвер клавиатуры (нет необходимости в ручных задержках, onKeyboardUpобратный вызов может использоваться в полезных нагрузках).
- Поддерживает MouseScript.
Расширенные возможности сети:
- Фальшивый сетевой интерфейс RNDIS со скоростью до 20 ГБ/с обеспечивает минимальную метрику и выигрывает каждый бой за доминирующую запись «шлюза по умолчанию» в таблицах маршрутизации при проведении сетевых атак.
- Автоматическое обнаружение канала и переключение интерфейса, если полезная нагрузка включает как RNDIS, так и сеть ECM.
- Сервер SSH работает по умолчанию, поэтому P4wnP1 может быть подключен к 172.16.0.1 (при условии, что полезная нагрузка включает RNDIS, CDC ECM или оба) или к 172.24.0.1 через WiFi.
Расширенные функции полезной нагрузки:
- Полезные нагрузки bash на основе обратных вызовов ( template.txt подробности см. в полезной нагрузке).
- onNetworkUp (когда целевой хост активирует сетевое соединение).
- onTargetGotIP (если цель получила IP, доступ к IP можно получить из скрипта полезной нагрузки.
- onKeyboardUp (когда установка драйвера клавиатуры на цели завершена и клавиатура используется).
- onLogin (когда пользователь входит в P4wnP1 через SSH).
Конфигурация может быть выполнена глобально ( setup.cfg) или перезаписана для каждой полезной нагрузки (если тот же параметр определен в скрипте полезной нагрузки).
Настройки включают в себя:
- Конфигурация USB (идентификатор поставщика, идентификатор продукта, типы устройств для включения…).
- Конфиг WiFi (SSID, пароль…).
- HID клавиатура (целевой язык клавиатуры и т. д.).
- Конфигурация сети и DHCP.
- Выбор полезной нагрузки.
В чем преимущества P4wnP1 от Rubber Ducky:
- У вас есть возможность обрабатывать Ducky Script , встроенный в полезную нагрузку(bash).
- У вас также есть возможность запускать собственные полезные нагрузки клавиатуры, когда происходит событие, такое как нажатие клавиши.
- При установке на Raspberry Pi Zero W клавиатурные атаки также могут осуществляться с помощью WiFi, порождая точку доступа.
- Многоязычная поддержка через глобальную переменную полезной нагрузки!
Установка
Шаг 1: Загрузка и установка Raspbian:
Первым шагом является загрузка и установка последней версии Raspbian (lite) и прошивка на SD-карту.
- Сначала скачаем Raspbian Stretch Lite.
Raspbian Stretch Lite - это «облегченная» версия операционной системы для Raspberry Pis. «Lite» означает, что в ОС просто нет рабочего стола с графическим интерфейсом, поэтому мы будем делать все через командную строку.
- Следующим шагом установка Etcher.
Etcher - потрясающий инструмент, созданный Resin.io, который позволяет записывать изображения на SD-карты и USB-накопители. В этом случае мы будем использовать его для прошивки ОС Stretch Light на карту MicroSD.
Откройте Etcher. Выберите ваш образ Stretch Light и и прошейте свою SD-карту
- Извлеките и заново вставьте свою SD-карту. Этот шаг необходим только потому, что Etcher автоматически отключает SD-карту.
Перед тем, как вставить карту microSD в Pi, нам нужно отредактировать несколько файлов.
Шаг 2. Настройка образа.
Сначала мы добавим файл wpa_supplicant.conf, чтобы система могла подключиться к нашей точке доступа Wi-Fi. Создайте файл в текстовом редакторе, я использую Notepad++
Добавьте следующий текст, заменив ssid и psk правильными значениями для вашей точки Wi-Fi:
country=US ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="Ваше имя точки" scan_ssid=1 psk="Ваш пароль от Wi-Fi точки" key_mgmt=WPA-PSK }
Наконец, добавьте пустой файл с именем «ssh» (без расширения файла) в загрузочный раздел, чтобы включить SSH при старте системы
Извлеките SD-карту и вставьте ее в Pi Zero W. Вставьте штекер адаптера питания в разъем питания Pi Zero W и дождитесь загрузки(это займет около минуты).
Теперь нам нужно найти IP-адрес Pi Zero W в нашей сети. Вы можете использовать любой сетевой сканер. И поступаю также, как и при поиске IP уязвимых машин, а именно перехожу в настройки роутера и ищу пункт аренда DHCP.
После получение IP нашей малины мы можем подключиться к ней по SSH. P.S. Логин: pi Пароль: raspberry
Шаг 3. Установка P4wnP1:
Команды для установки P4wnP1:sudo apt-get -y install git cd /home/pi/ git clone –recursive https://github.com/mame82/P4wnP1 cd P4wnP1/ ./install.sh
Шаг 4. Подключение к P4wnP1 после установки:
Мы можем подключиться к P4wnP1 без проводов, используя SSID «P4wnP1» и учетные данные «MaMe82-P4wnP1», или, поскольку гаджет включен в наш USB порт, мы можем просто подключиться через Putty, используя 172.16.0.1 в качестве IP-адреса.
Хорошо! Мы подключились опять к своей малинке Pi после запуска установки P4wnP1, и теперь нам нужно настроить нашу первую полезную нагрузку! Вводим команды:cd P4wnP1/ sudo nano setup.cfg
Мы должны увидеть много разных опций, но сейчас давайте сосредоточимся на нижней части файла setup.cfg.
В нижней части файла вы должны увидеть что-то похожее на это:
PAYLOAD=network_only.txt ... #PAYLOAD=hid_backdoor
Продолжайте, закомментируйте полезную нагрузку network_only.txt и раскомментируйте hid_backdoor.
#PAYLOAD=network_only.txt ... PAYLOAD=hid_backdoor