BYOB - Создаем собственный ботнет.
Всем привет. Решил написать статью про ботнет)
Разработчик -== malwaredllc
Страница разработчика -== malwaredllc/byob
Введение.
BYOB (Build Your Own Botnet) - это проект с открытым исходным кодом, который предоставляет платформу для исследователей и разработчиков безопасности для создания и управления базовым ботнетом, чтобы углубить свое понимание сложной вредоносной программы, которая заражает миллионы устройств каждый год и порождает современные бот-сети, чтобы улучшить их способность разработать контрмеры против этих угроз.
Он разработан, чтобы позволить разработчикам легко реализовывать свой собственный код и добавлять интересные новые функции без необходимости писать RAT (Remote Administration Tool) или C2 (Command & Control server) с нуля.
Сервер:
- Сервер управления с постоянной базой данных и консолью.
- Консольный интерфейс пользователя: оптимизированный консольный интерфейс для удаленного управления клиентскими хост-компьютерами через обратные TCP-оболочки, которые обеспечивают прямой доступ к клиентским хост-машинам.
- Постоянная база данных SQLite: легкая база данных, в которой хранится идентификационная информация о клиентских машинах-хостах, что позволяет проводить сеансы обратной TCP-оболочки с помощью разрывов произвольной продолжительности и обеспечения долгосрочной разведки.
- Архитектура клиент-сервер: все локальные пакеты / модули python автоматически становятся доступными для удаленного доступа клиентов, не записывая их на диск целевых компьютеров, что позволяет клиентам использовать модули, которые требуют пакетов, не установленных на целевых компьютерах.
Клиент:
- Создает полностью необнаруживаемые клиенты с полезной нагрузкой, удаленным импортом и неограниченными модулями.
- Удаленный импорт: удаленно импортировать сторонние пакеты с сервера, не записывая их на диск или не загружая / не устанавливая их.
- Ничего не записано на диск: клиенты никогда ничего не пишут на диск - даже временные файлы (нулевые системные вызовы ввода-вывода выполняются), потому что удаленный импорт позволяет динамически загружать произвольный код в память и напрямую импортировать в текущий процесс.
- Zero Dependencies : клиент работает только с стандартной библиотекой python, удаленно импортирует любые нестандартные пакеты / модули с сервера и может быть скомпилирован с помощью автономного интерпретатора python в переносимый исполняемый файл, отформатированный для любой платформы / архитектура, позволяющая ему работать на чем угодно, даже если сам Python отсутствует на целевом хосте.
- Добавление новых функций с помощью всего лишь 1 Щелчок: любой скрипт, модуль или пакет python, который вы должны копировать в каталог ./byob/modules/, автоматически становится удаленным и доступным для каждого клиента, когда ваш сервер управления работает.
- Напишите свои собственные модули: базовый шаблон модуля предоставляется в каталоге ./byob/modules/, чтобы написать собственные модули прямолинейным, без проблем процессом.
- Запуск неограниченных модулей. Размер файла: использование удаленного импорта для добавления неограниченных функций без добавления одного байта в размер файла клиента.
- Полностью обновляемый: каждый клиент будет периодически проверять сервер на наличие нового контента, доступного для удаленного импорта, и будет динамически обновлять свои ресурсы в памяти, если что-либо добавлено / удалено.
- Все написано на языке Python и сгенерированные клиенты могут быть необязательно скомпилированы в переносимый исполняемый файл (Windows) или в комплекте с автономным приложением (macOS).
- Обход межсетевых экранов: клиенты подключаются к серверу управления и управления через обратные TCP-соединения, которые обходят большинство брандмауэров, потому что конфигурации фильтра по умолчанию в основном блокируют входящие соединения.
- Counter-Measure Against Antivirus: избегает анализа антивирусом, блокируя процессы с именами известных антивирусных продуктов от нереста.
- Шифрование полезных нагрузок для предотвращения анализа: основная полезная нагрузка клиента зашифровывается случайным 256-битным ключом, который существует исключительно в блоке полезной нагрузки, который создается вместе с ним.
- Предотвращение обратного проектирования: по умолчанию клиенты прекращают выполнение, если обнаружена виртуальная машина или песочница.
11 пост-эксплуатационных модулей, которые удаленно импортируются клиентами:
- Keylogger (byob.modules.keylogger): регистрирует нажатия клавиш пользователя и введенное имя окна.
- Снимок экрана (byob.modules.screenshot): сделайте снимок экрана рабочего стола текущего пользователя.
- Веб-камера (byob.modules.webcam): просмотр прямого потока или захват изображения / видео с веб-камеры.
- Ransom (byob.modules.ransom): шифрует файлы и генерирует случайный кошелек BTC для выплаты выкупа.
- Outlook (byob.modules.outlook): чтение / поиск / отправка писем из локального клиента Outlook.
- Packet Sniffer (byob.modules.packetsniffer): запустить пакетный снифер в сети хоста и загрузить файл .pcap
- Persistence (byob.modules.persistence): установить постоянство на главной машине, используя 5 различных методов.
- Телефон (byob.modules.phone): чтение / поиск / загрузка текстовых сообщений с клиентского смартфона.
- Эскалация привилегий (byob.modules.escalate): попытка обхода UAC для получения несанкционированных прав администратора.
- Port Scanner (byob.modules.portscanner): сканирование локальной сети для других сетевых устройств и открытых портов.
- Управление процессом (byob.modules.process): list / search / kill / мониторинг текущих запущенных процессов на хосте
Установка и запуск:
# git clone https://github.com/malwaredllc/byob.git # cd byob # pip install -r requirements.txt # ./setup.py # Запуск: # ./server.py Пример: server.py [-h] [-v] [--host HOST] [--port PORT] [--database DATABASE] # ./client.py Пример: client.py [-h] [-v] [--name NAME] [--icon ICON] [--pastebin API] [--encrypt] [--obfuscate] [--compress] [--compile] host port [module [module ...]]
Справка: help
command <arg> description bg [id] background a session (default: the current session) broadcast <command> broadcast a task to all active sessions clients show all clients that have joined the server debug <code> run python code directly on server (debugging MUST be enabled) exit quit the server help show usage help for server commands kill <id> end a session options show currently configured settings query <statement> query the SQLite database ransom [id] encrypt client files & ransom encryption key for a Bitcoin payment results [id] display all completed task results for a client (default: all clients) screenshot take a screenshot of the client desktop sessions show active client sessions set <setting> [option=value] change the value of a setting shell <id> interact with a client with a reverse TCP shell through an active session tasks [id] display all incomplete tasks for a client (default: all clients) webcam <mode> capture image/video from the webcam of a client device
Наши услуги: @GOdayBot
Внимание!!! Вся Информация на канале "0-day | Уязвимость 0-го дня" для ознакомления, не несёт в себе призыва к чему-либо, автор не несёт никакой ответственности. 18