Codeby
36.3K subscribers
2.05K photos
98 videos
12 files
7.83K links
Блог сообщества Кодебай

Чат: @codeby_one
Форум: codeby.net
Обучение: codeby.academy

CTF: hackerlab.pro

VK: vk.com/codeby
YT: clck.ru/XG99c

Сотрудничество: @KinWiz

Реклама: @Savchenkova_Valentina
Download Telegram
☁️ Covenant — .NET C2‑фреймворк для пост-эксплуатаци

Covenant — кросс-платформенный C2 на ASP.NET Core с веб‑панелью, много‑пользовательским режимом и поддержкой «Grunt»‑имплантов для управления скомпрометированными хостами в корпоративных сетях.


⛓️‍💥 Основные возможности Covenant
📉 Интуитивный web‑интерфейс: управление слушателями, имплантами (Grunts), задачами, файлами и отчётами прямо из браузера, с поддержкой нескольких операторов одновременно.
📉 Мульти-платформенность и Docker: сервер на .NET Core можно запускать на Linux, Windows и macOS, а также в Docker‑контейнере, что удобно для lab‑окружений и изолированных C2‑хостов.
🖱 Listener Profiles: профили слушателей позволяют кастомизировать HTTP(S)/Network‑трафик, маскируя его под легитимные запросы и упрощая обход детекта.

🧠 Импланты Grunt и криптография
⏺️ Grunt — это .NET‑имплант, который периодически коннектится к слушателю, получает команды, исполняет их и отправляет результаты, поддерживая типичные C2‑операции (команды, файлы, модульные задачи).
⏺️ Реализован защищённый обмен ключами + опциональный SSL, что обеспечивает forward secrecy и защищает трафик от пассивного прослушивания.
⏺️ Dynamic Compilation: каждое новое задание или Grunt компилируются «на лету» через Roslyn и обфусцируются ConfuserEx, что снижает количество полностью статичных сигнатурных пейлоадов.

⬇️ Установка и запуск
1️⃣ Быстрый старт через .NET / git
▶️ Клонировать репозиторий и собрать приложение:
git clone --recurse-submodules https://github.com/cobbr/Covenant.git
cd Covenant/Covenant
dotnet build
dotnet run


▶️ Затем открыть панель по адресу вида https://127.0.0.1:7443/, создать учётку оператора и перейти к настройке Listener/Launcher/Grunt.

2️⃣ Запуск через Docker
▶️ Использовать готовый Docker‑образ и пробросить порты + volume для хранения данных:
docker run -it -p 7443:7443 -p 80:80 -p 443:443 --name covenant -v </absolute/path/to/Covenant/Covenant/Data>:/app/Data covenant


▶️ После старта сервер работает как обычный C2‑бэкенд, доступный по HTTPS для всей команды.

#c2 #dotnet #redteam #tool

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
12🔥8👍7
🧠 Prompt Fuzzer — интерактивный fuzzer для защиты системного промпта GenAI‑приложений

Prompt Fuzzer — это open source‑утилита для динамического тестирования системного промпта на устойчивость к jailbreak‑атакам, prompt‑инъекциям и попыткам вытянуть системные данные


💻 Что умеет Prompt Fuzzer
🔔 Моделирует реальные атаки на промпт: jailbreak (DAN, AIM, harmful behavior, amnesia, linguistic evasion и др.), prompt injection (authoritative role, typoglycemia и др.) и системный prompt extraction
🔔 Динамически адаптирует тесты под домен и конфигурацию конкретного приложения, чтобы проверки были ближе к боевым сценариям использования.
🔔 Выдаёт оценку безопасности промпта по каждой атаке: broken (сломали защиту), resilient (выдержал), errors (неоднозначный результат), помогая понять, где именно промпт уязвим.

⬇️ Установка и запуск
👉 Установка через pip:
pip install prompt-security-fuzzer


👉 Затем задать ключ LLM‑провайдера (по умолчанию OPENAI_API_KEY):
export OPENAI_API_KEY=sk-123XXXXXXXXXXXX
prompt-security-fuzzer



👉 Переменные окружения
- Можно использовать .env рядом с утилитой, либо экспортировать ключи напрямую.
- Поддерживаются 16+ провайдеров: OpenAI, Anthropic, Azure OpenAI, Cohere, Google PaLM, YandexGPT, Baichuan, Jina, PromptLayer и др. через свои ENV‑ключи (ANTHROPIC_API_KEY, GOOGLE_API_KEY, YC_API_KEY и т.п.).

🧾 Режимы работы и CLI
⏺️ Интерктивный режим (по умолчанию):
1) Запускаете prompt-security-fuzzer,
2) Вставляете системный промпт,
3) Запускаете серию атак и потом дорабатываете промпт в встроенном Playground‑чате.

⏺️ Batch‑режим для CI/CD и автопроверок:
➡️ Прогнать тесты по готовому файлу с системным промптом:
prompt-security-fuzzer -b ./system_prompt.examples/medium_system_prompt.txt


➡️ Подключить кастомный бенчмарк атак:
prompt-security-fuzzer -b ./system_prompt.examples/medium_system_prompt.txt \
--custom-benchmark=ps_fuzz/attack_data/custom_benchmark1.csv


➡️ Запустить только подмножество тестов:
prompt-security-fuzzer -b ./system_prompt.examples/medium_system_prompt.txt \
--custom-benchmark=ps_fuzz/attack_data/custom_benchmark1.csv \
--tests='["ucar","amnesia"]'


#security #ai #llm #tool

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍6🔥4
🗺 Social Mapper

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


Поддерживает поиск в следующих социальных сетях:
⏺️LinkedIn;
⏺️Facebook;
⏺️Pinterest;
⏺️Twitter;
⏺️Google Plus;
⏺️Instagram;
⏺️ВКонтакте;
⏺️Weibo;
⏺️Douban.

Установка
1️⃣Для работы требуется предварительная установка Firefox.
sudo add-apt-repository ppa:mozillateam/firefox-next && sudo apt update && sudo apt upgrade


2️⃣Установить Geckodriver для и убедиться, что он находится в переменной PATH.

3️⃣Далее необходимы следующие компоненты:
sudo apt-get install build-essential cmake
sudo apt-get install libgtk-3-dev
sudo apt-get install libboost-all-dev


4️⃣Клонирование репозитория и установка зависимостей:
git clone https://github.com/Greenwolf/social_mapper
cd social_mapper/setup
python3 -m pip install --no-cache-dir -r requirements.txt


5️⃣Завершающим шагом необходимо в браузере для каждой социальной сети войти в профиль и сохранить страницы со статусом "trust this browser" или "unknown browser".

➡️Использование
Для запуска инструмента необходимо указать 4 параметра: формат ввода, входной файл или папку и основной режим работы:
-f, --format - форматы вида name, csv, imagefolder, socialmapper;
-i, --input - название компании, файл CSV, папка с изображениями или HTML-файл;
-m, --mode - fast или accurate позволяет выбрать пропуск потенциальных целей после нахождения первого вероятного совпадения, что в некоторых случаях может многократно ускорить работу программы

💻Примеры
Быстрая проверка в Facebook и Twitter некоторых целей, которые хранятся в папке с изображениями:
python3 social_mapper.py -f imagefolder -i ./Input-Examples/imagefolder/ -m fast -fb -tw


Проверка компании Evil Corp LLC, где количество ложных срабатываний должно быть сведено к минимуму:
python3 social_mapper.py -f company -i "Evil Corp LLC" -m accurate -a -t strict


#osint #tool #search

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍6🔥5😭1
BPF Linker: Инструмент статической линковки для современных BPF-программ
BPF Linker (bpf-linker) — специализированное решение для статической линковки объектных файлов BPF-программ, разработанное в рамках экосистемы Aya. Инструмент ориентирован на упрощение сборки современных BPF-приложений при сохранении совместимости с устаревшими, более ограничивающими версиями ядра.


В отличие от традиционных линкеров, bpf-linker оперирует не машинным кодом, а LLVM-биткодом. Это позволяет выполнять оптимизацию на уровне промежуточного представления и генерировать эффективный байт-код для виртуальной машины BPF.
Инструмент принимает на вход:
▶️Файлы биткода (.bc)
LLVM IR (.ll)
▶️Объектные файлы со встроенным биткодом (.o)
▶️Статические библиотеки (.a)
▶️На выходе формируется готовый объектный файл BPF, который может быть загружен в ядро

⬇️Установка
sudo apt install bpf-linker

Проверка
bpf-linker -h


⏺️Оптимизация для устаревших ядер (v1/v2)
bpf-linker --cpu v2 --unroll-loops --ignore-inline-never -o legacy.o *.o

Объектный файл legacy.o, совместимый с ядрами 4.x–5.x. Принудительное встраивание функций и развертка циклов позволяют выполнять сложную логику там, где отсутствует поддержка вызовов функций и циклов.

⏺️Отладка и анализ
bpf-linker --dump-module ./final.ll --log-level debug --log-file ./link.log -o output.o input.o

Команда выполняет линковку входного файла input.o в output.o, сохраняя детальный лог в link.log и финальное LLVM-представление в final.ll. Флаг --log-level debug обеспечивает максимальную детализацию, --dump-module — анализ промежуточного кода. Позволяет диагностировать ошибки линковки, проверять корректность оптимизаций и исследовать генерируемый BPF-код.

⏺️Минимизация размера
bpf-linker -O z --disable-memory-builtins -o minimal.o *.o

Данная команда выполняет линковку всех объектных файлов с агрессивной оптимизацией по размеру (-O z) и отключением экспорта встроенных функций работы с памятью (--disable-memory-builtins). Результирующий файл minimal.o имеет минимально возможный размер. Критически важно для систем с жесткими лимитами на размер загружаемых BPF-программ.

👉Преимущества инструмента
- Полноценная статическая линковка для BPF-модулей
- Поддержка CO-RE через BTF-генерацию
- Обратная совместимость с ограничениями старых ядер

#bpflinker #tool #pentest #LLVM

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍6🔥5
Evil-WinRM-PY: Инструмент для удаленного администрирования Windows через WinRM
Evil-WinRM-PY — кроссплатформенная Python-реализация Evil-WinRM для удаленного выполнения команд на узлах Windows через WinRM. Предоставляет интерактивную оболочку с функциями передачи файлов, загрузки скриптов/DLL и выполнения EXE в памяти. Поддерживает NTLM, Pass-the-Hash, сертификаты и Kerberos. Инструмент разработан преимущественно для Linux, является стандартным решением в Kali Linux, устанавливается через pip и включает штатную поддержку Kerberos через пакеты libkrb5-dev.


👉Базовые операции
- Интерактивная командная оболочка с поддержкой истории команд
- Загрузка и выгрузка файлов с индикацией прогресса и проверкой MD5
- Автодополнение локальных и удаленных путей (включая пути с пробелами)

👉Расширенное взаимодействие с PowerShell
- Загрузка функций из локальных PS1-скриптов в сессию
- Выполнение локальных PowerShell-сценариев на удаленном узле
- Загрузка DLL-библиотек в память удаленного процесса PowerShell
- Выполнение EXE-файлов, загружаемых непосредственно в память

⬇️Установка
sudo apt install evil-winrm-py
Проверка

evil-winrm-py -h


Базовое подключение с аутентификацией по паролю
evil-winrm-py -i 192.168.1.100 -u Administrator -p P@ssw0rd


Подключение через SSL с использованием Pass-the-Hash

evil-winrm-py -i dc01.domain.local -u Administrator -H 8843f4f67bcc0c6e6b5c6d7e8f9a0b1c --ssl


Аутентификация с применением сертификатов
evil-winrm-py -i 10.10.10.50 -u user@domain.local --priv-key-pem ./key.pem --cert-pem ./cert.pem

Kerberos-аутентификация с кастомным SPN

evil-winrm-py -i srv02.domain.local -u user@DOMAIN.LOCAL -k --spn-prefix WSMAN --spn-hostname srv02.domain.local

Администрирование серверной инфраструктуры
evil-winrm-py -i srv01.corp.local -u CORP\admin -p P@ssw0rd --ssl
Обеспечивает безопасное удаленное управление серверами Windows с шифрованием трафика. Используется для выполнения регламентных задач, диагностики и мониторинга состояния систем.

Тестирование на проникновение (авторизованное)

evil-winrm-py -i 10.0.0.25 -u Administrator -H 8843f4f67bcc0c6e6b5c6d7e8f9a0b1c

Позволяет проверить устойчивость инфраструктуры к атакам Pass-the-Hash, оценить эффективность политик паролей и корректность конфигурации WinRM

🎇Ограничения и требования
- Необходимость явного разрешения на использование
- Требуется активированный WinRM на целевой системе
- Kerberos-аутентификация требует дополнительной настройки на стороне клиента
- SSL-сертификаты должны быть доверенными или принятыми вручную

#evilwinrmpy #tool #pentest #NTLM #PowerShell #Kerberous

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
13👍8🔥7
Cloudlist: Инструмент для сбора активов из облачных провайдеров

Cloudlist — утилита с открытым исходным кодом от projectdiscovery, предназначенная для получения перечня активов (Assets) из множества облачных провайдеров. Инструмент ориентирован на использование командами защиты (blue team) для улучшения управления поверхностью атаки (Attack Surface Management) путем поддержания централизованного списка активов в различных облачных средах с минимальными усилиями по настройке.


👉Возможности
- Поддержка множества провайдеров (AWS, GCP, Azure, DigitalOcean, Linode, Alibaba, Cloudflare, Fastly, Heroku, Kubernetes и другие)
- Гибкая фильтрация по провайдерам, сервисам, идентификаторам
- Несколько форматов вывода (JSON, plain text, stdout для интеграции с другими инструментами)
- Исключение приватных IP-адресов при необходимости
- Простое добавление новых провайдеров
- Два подхода к GCP (организация через Asset API или проекты через сервисные API)

⬇️Установка
git clone https://github.com/projectdiscovery/cloudlist.git
cd cloudlist/cmd/cloudlist
go build .
sudo mv cloudlist /usr/local/bin/

Проверка
cloudlist -h


Конфигурация Cloudlist использует YAML-файл конфигурации для хранения учетных данных провайдеров. По умолчанию: ~/.config/cloudlist/provider-config.yaml

⏺️Пример базовой конфигурации
#AWS
- id: aws-prod
aws:
access-key: AKIA...
secret-key: ...
region: us-east-1

#GCP
- id: gcp-prod
gcp:
service-account-json: /path/to/sa-key.json
project: my-project-id

#Azure
- id: azure-dev
azure:
subscription-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
client-secret: ...
tenant-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx


⏺️Расширенная конфигурация для GCP (организация через Asset API)
- id: gcp-org
gcp:
service-account-json: /path/to/org-sa.json
asset-discovery: true #использование Asset API
organization-id: "1234567890" #ID организации
projects: #ограничение проектами (опционально)
- project-1
- project-2


⏺️Получение всех активов из всех настроенных провайдеров
cloudlist


⏺️Получение активов только от конкретных провайдеров
cloudlist -p aws,gcp,azure


⏺️Тихий режим (только результаты, без лишнего вывода)
cloudlist -silent


⏺️Подробный вывод с расширенными метаданными
cloudlist -p aws -extended-metadata -v


⏺️Инвентаризация всех EC2-инстансов в AWS
cloudlist -p aws -s ec2 -json | jq '.'


⏺️Получение всех доменных имен из Cloudflare
cloudlist -p cloudflare -s domain -host


⏺️Поиск публичных IP-адресов во всех облаках
cloudlist -s publicip -ep -silent > public_ips.txt


⏺️Интеграция с httpx для проверки HTTP-сервисов
cloudlist -p aws,gcp -s ec2,compute -host | httpx -title -status-code


🔎Ограничения и требования
- Требуются корректно настроенные ключи доступа для каждого провайдера
- Требует включения Cloud Asset Inventory и соответствующих разрешений на уровне организации
- Необходимы права на чтение ресурсов (рекомендуется использовать read-only ключи)
- Массовые запросы могут учитываться в квотах провайдеров

#Cloudlist #tool #pentest #Asset

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
👍105🔥4
HexStrike AI: Платформа для автоматизации кибератак с использованием искусственного интеллекта

HexStrike AI представляет собой специализированную платформу для автоматизации задач кибербезопасности, построенную на архитектуре мультиагентного искусственного интеллекта. Инструмент предназначен для автоматизации разведки, анализа уязвимостей и проведения тестов на проникновение, ориентирован на специалистов по безопасности, исследователей уязвимостей и участников программ bug bounty.


HexStrike AI реализует многоагентную архитектуру, включающую компоненты:
▶️Автономные AI-агенты, выполняющие специализированные задачи безопасности
▶️Механизм интеллектуального принятия решений на основе анализа контекста
▶️Система управления уязвимостями с приоритизацией угроз
▶️Интеграция с внешними инструментами через MCP (Modular Connector Protocol)
Платформа включает более
150
интегрированных модулей, охватывающих все этапы тестирования на проникновение: от разведки до эксплуатации уязвимостей.


⬇️Установка
sudo apt update
sudo apt install hexstrike-ai

Установка зависимостей вручную
pip install mitmproxy aiohttp beautifulsoup4 flask mcp psutil pwntools requests selenium

Проверка
hexstrike_server -h
hexstrike_mcp -h


HexStrike AI состоит из двух основных компонентов:
▶️hexstrike_server — центральный API-сервер, реализующий основную логику и взаимодействие с AI-агентами
▶️hexstrike_mcp — клиент для подключения к серверу через MCP-протокол

⏺️Запуск сервера
hexstrike_server

По умолчанию сервер запускается на 127.0.0.1:8888 с выводом информационного баннера и статуса работы

⏺️Параметры сервера
hexstrike_server --help

Опции:
- --debug — включение отладочного режима
- --port PORT — указание порта для API-сервера (по умолчанию 8888)

⏺️Запуск MCP-клиента
hexstrike_mcp --server http://127.0.0.1:8888


⏺️Параметры клиента
hexstrike_mcp -h

Опции:
- --server SERVER — URL API-сервера HexStrike AI (по умолчанию http://127.0.0.1:8888)
- --timeout TIMEOUT — таймаут запроса в секундах (по умолчанию 300)
- --debug — включение отладочного логирования

⏺️Базовый запуск для анализа целевой системы
#терминал 1: запуск сервера
hexstrike_server --debug
#терминал 2: подключение клиента
hexstrike_mcp --server http://127.0.0.1:8888 --timeout 600


🔎HexStrike AI построен на клиент-серверной архитектуре
▶️Серверный компонент:
- Управляет пулом процессов (по умолчанию 4 воркера)
- Реализует адаптивный AI-движок принятия решений
- Обеспечивает интеграцию с более чем 150 модулями
- Поддерживает унифицированный интерфейс операций
▶️Клиентский компонент:
- Взаимодействует с сервером через HTTP API
- Поддерживает настраиваемые таймауты для длительных операций
- Обеспечивает отладочный режим для диагностики

#HexStrike-AI #tool #pentest #MCP

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
👍126🔥4😁1🐳1
PyInstaller: Упаковка Python-приложений в исполняемые файлы

PyInstaller — инструмент для создания автономных исполняемых пакетов из Python-скриптов. Пользователь может запускать собранное приложение без установки интерпретатора Python или каких-либо модулей. PyInstaller анализирует исходный скрипт, обнаруживает все необходимые модули и библиотеки, после чего собирает их копии вместе с интерпретатором Python в одну папку или, опционально, в один исполняемый файл.


👉Преимущества
- Работает с Python версий 3.8–3.14
- Поддерживает Windows (32/64-bit, ARM64), Linux (glibc/musl), macOS (x86_64/arm64)
- Корректно упаковывает популярные пакеты: numpy, PyQt5/PyQt6, PySide2/PySide6, wxPython, matplotlib и другие
- Поддерживает код-сайн на macOS
- Включает MS Visual C++ DLL на Windows
- Не требует кросс-компиляции (сборка выполняется на целевой платформе)

⬇️Установка
sudo apt install pyInstaller

Проверка
pyInstaller -h


⏺️Создание одно папочного пакета (режим по умолчанию)
pyinstaller script.py

Создает папку dist/script/ с исполняемым файлом и всеми зависимостями

⏺️Создание однофайлового исполняемого пакета
pyinstaller --onefile script.py

Создает один исполняемый файл dist/script.exe (или script на Linux/macOS), который распаковывается во временную папку при запуске

⏺️Добавление дополнительных файлов данных
pyinstaller --add-data "config.ini:." --add-data "images:images" script.py

Формат: "source:dest_dir". Для Windows разделитель — ;, для Linux/macOS — :.

⏺️Указание путей поиска импортов
pyinstaller --paths ./external_libs --paths ./helpers script.py


⏺️Исключение модулей
pyinstaller --exclude-module tkinter --exclude-module test script.py


⏺️Упаковка веб-приложения (Flask/Django)
pyinstaller --onefile --add-data "templates:templates" --add-data "static:static" --hidden-import jinja2 run.py


⏺️Создание пакета для многократного использования с очисткой кэша
pyinstaller --clean --distpath ./release --workpath ./build_tmp --onefile script.py


🔎Ограничения и требования
- Cборка выполняется на той же ОС, для которой создается пакет (не кросс-компиляция)
- Поддерживаются указанные версии (Python 3.10.0 содержит баг, несовместимый с PyInstaller)
- Требуются ldd, objdump, objcopy (пакет binutils)
- Однофайловые пакеты включают интерпретатор и библиотеки, что увеличивает размер (обычно 5–50 МБ)
- Некоторые антивирусные программы могут ложно срабатывать на упакованные приложения

#PyInstaller #tool #pentest #Python

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍5🔥4
Boofuzz: Инструмент фаззинга сетевых протоколов

Boofuzz — фреймворк для фаззинга (fuzzing) сетевых протоколов, являющийся форком и преемником известного инструмента Sulley. Разработан для генерации и передачи некорректных или неожиданных данных целевым приложениям с целью выявления уязвимостей, ошибок обработки ввода и отказов в обслуживании. Boofuzz сочетает простоту использования с расширяемостью, что позволяет применять его для тестирования самых разных протоколов и интерфейсов.


Boofuzz наследует основные концепции Sulley, добавляя исправление ошибок, актуальную документацию и поддержку современных сред. Как и предшественник, инструмент охватывает все критические элементы процесса фаззинга:
▶️Быстрое создание тестовых наборов на основе шаблонов
▶️Обнаружение отказов и аномалий в целевой системе
▶️Автоматический перезапуск цели после сбоя
▶️Запись всех тестовых данных и результатов

👉Отличия от Sulley
- Актуальная онлайн-документация и поддержка
- Поддержка произвольных каналов связи (последовательный порт, Ethernet, UDP-широковещание)
- Улучшенная регистрация данных с экспортом в CSV
- Расширяемая система инструментирования
- Упрощенная установка через pip
- Исправление многочисленных ошибок оригинального фреймворка

⬇️Установка
pip install boofuzz

Проверка
python -c "import boofuzz; print(boofuzz.__version__)"


⏺️Boofuzz используется как Python-библиотека для создания скриптов фаззинга. Простейший пример для тестирования TCP-сервера:
from boofuzz import *

def main():
session = Session(
target=Target(connection=TCPSocketConnection("127.0.0.1", 9999))
)

s_initialize("Request")
s_string("FUZZ", name="fuzzable_field")

session.connect(s_get("Request"))
session.fuzz()

if __name__ == "__main__":
main()

Запуск скрипта:
python fuzzer_script.py


⏺️Фаззинг HTTP-сервера
from boofuzz import *

def main():
session = Session(
target=Target(connection=TCPSocketConnection("127.0.0.1", 80)),
sleep_time=0.1,
)

s_initialize("HTTP GET")
s_static("GET ")
s_string("/", name="URI")
s_static(" HTTP/1.1\r\n")
s_static("Host: ")
s_string("localhost", name="Host")
s_static("\r\n")
s_static("User-Agent: Mozilla/5.0\r\n")
s_static("Accept: */*\r\n")
s_static("\r\n")

session.connect(s_get("HTTP GET"))
session.fuzz()

if name == "__main__":
main()


⏺️Фаззинг с мониторингом отказов
from boofuzz import *
import subprocess

def restart_target():
"""Функция перезапуска цели"""
subprocess.run(["systemctl", "restart", "target-service"])

def main():
#настройка мониторинга процесса
monitor = ProcessMonitor("192.168.1.100", 26002)

session = Session(
target=Target(
connection=TCPSocketConnection("192.168.1.100", 9999),
monitors=[monitor]
),
restart_callbacks=[restart_target],
crash_threshold=3,
)

#описание протокола...
session.fuzz()

if name == "__main__":
main()


⏺️Экспорт результатов
session = Session(
target=Target(connection=connection),
output_path="fuzz_results", # директория для результатов
csv_logger=True, # включение CSV-логирования
log_level=logging.DEBUG, # уровень детализации лога
)


После завершения фаззинга boofuzz создает директорию с результатами, содержащую:
▶️Тестовые кейсы (все отправленные запросы с метками)
▶️Лог сбоев (информация о крашах и аномалиях)
▶️CSV-файл (сводная таблица результатов)
Пример структуры результатов:
├── crashes.log
├── fuzz.db
├── fuzz_results.csv
└── test-cases/
├── test-case-000001
├── test-case-000002
└── ...


#Boofuzz #tool #pentest #Sulley

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍6🔥5
Nuitka: Компилятор Python в исполняемые файлы
Nuitka — это компилятор, транслирующий Python-код в C, а затем создающий исполняемый файл или модуль расширения. Инструмент написан на Python и обеспечивает полную совместимость с CPython, поддерживая практически все конструкции языка от Python 2.6 до 3.14. Основное назначение Nuitka — создание автономных приложений, ускорение выполнения кода и распространение программ без зависимости от интерпретатора.


👉Ключевые особенности
- Поддерживает Python 2.6–2.7 и 3.4–3.14
- Различные режимы компиляции: ускоренный (accelerated), автономный (standalone), однофайловый (onefile), модуль (module), пакет (package)
- Работает на Windows, Linux, macOS, FreeBSD
- Автоматическое управление зависимостями (включает необходимые модули и библиотеки)
- Поддержка упаковки данных (включение файлов ресурсов, DLL, метаданных)
- Интеграция с внешними компиляторами (MSVC, MinGW64, gcc, clang, zig)

⬇️Установка
pip install nuitka

Проверка
nuitka -h


⏺️Компиляция в ускоренном режиме (по умолчанию)
nuitka script.py

Создает исполняемый файл script.exe (Windows) или script.bin (Linux/macOS).

⏺️Создание автономной папки (standalone)
nuitka --mode=standalone --follow-imports script.py

Создает директорию script.dist с исполняемым файлом и всеми необходимыми библиотеками.

⏺️Создание однофайлового исполняемого файла
nuitka --mode=onefile --follow-imports script.py

Создает один исполняемый файл, который распаковывается во временную директорию при запуске.

⏺️Компиляция модуля расширения
nuitka --mode=module some_module.py

Создает some_module.so (Unix) или some_module.pyd (Windows).

⏺️Управление включением модулей
#включение конкретного модуля
nuitka --include-module=requests script.py

#включение всего пакета
nuitka --include-package=PyQt6 script.py

#исключение модулей
nuitka --nofollow-import-to=*.tests script.py


⏺️Работа с данными и ресурсами
#включение файлов данных пакета
nuitka --include-package-data=package_name script.py

#включение конкретных файлов
nuitka --include-data-files=/path/to/config.json=config.json script.py

#включение целой директории
nuitka --include-data-dir=./data=data script.py


⏺️Базовая компиляция с зависимостями
nuitka --mode=standalone --follow-imports --output-dir=./dist myapp.py


⏺️Компиляция веб-приложения Flask
nuitka --mode=onefile \
--follow-imports \
--include-package-data=flask \
--include-package-data=jinja2 \
--include-data-dir=./templates=templates \
--include-data-dir=./static=static \
app.py


⏺️Компиляция GUI-приложения на PyQt
nuitka --mode=standalone \
--follow-imports \
--include-package=PyQt6 \
--windows-icon-from-ico=icon.ico \
--windows-disable-console \
main.py


⏺️Компиляция с расширенной информацией для отладки
nuitka --mode=standalone \
--follow-imports \
--verbose \
--report=report.xml \
--show-modules \
script.py


⏺️Оптимизация с профилированием (PGO)
nuitka --mode=standalone \
--follow-imports \
--pgo \
--pgo-args="--test-option" \
script.py


⏺️Компиляция с использованием zig компилятора
nuitka --mode=standalone --zig --follow-imports script.py


⏺️Создание детального отчета
nuitka --mode=standalone --follow-imports --report=build_report.xml script.py


🎇Ограничения и требования
- Для Python 3.4 требуется дополнительный Python 2 или 3.5+ для SCons
- На Windows MinGW64 не работает с Python 3.13+
- Автономные сборки требуют копирования всей директории .dist
- Однофайловые сборки распаковываются во временную директорию при запуске

#Nuitka #Python #tool #CPython

🔗 Все наши каналы 🔁 Все наши чаты 🪧 Для связи с менеджером
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍8🔥4