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

BlacksmithAI функционирует как иерархическая система, в которой оркестратор координирует выполнение задач между специализированными агентами.
Каждый агент соответствует стандартной функции тестирования на проникновение. Агент разведки занимается картированием поверхности атаки и сбором информации. Агент сканирования и перечисления выполняет обнаружение служб. Агент анализа уязвимостей оценивает слабые места и потенциальные векторы атак. Агент эксплуатации выполняет проверочные действия. Агент пост-эксплуатации изучает последствия и возможности перемещения внутри сети.
Оркестратор распределяет задачи между этими ролями и объединяет результаты в итоговый отчёт. Эта модель распределяет процессы анализа и выполнения по определённым функциям, соответствующим устоявшейся практике наступательного тестирования.
«Большинство инструментов безопасности на основе ИИ, а их не так много, полагаются на одного "суперагента", который делает всё. Но реальное тестирование на проникновение устроено иначе. Хотя его может выполнять один человек, часто его проводят командой, чтобы максимизировать эффективность и глубину проверки. Именно поэтому мы моделируем агентов на основе реальной практики, используя иерархический многоагентный подход», — рассказал Йоханнес Гебрекирстос, автор BlacksmithAI, изданию Help Net Security.
Он пояснил, что агент-оркестратор действует как руководитель процесса, взаимодействуя с пользователем и управляя другими агентами. Эти полномочия позволяют ему разбивать сложные задачи на подцели и делегировать их специализированным суб-агентам. Каждый суб-агент обладает собственной экспертизой в своей области и набором инструментов. Например, агент разведки проводит анализ цели с помощью таких инструментов, как Whois и Dig. Это отражает принцип работы реальных команд по тестированию на проникновение, где каждый специалист вносит свой сфокусированный опыт, повышая эффективность и результаты.
«Архитектура системы создана для гибкости и простоты. Это легковесное и легко расширяемое решение, позволяющее разработчикам добавлять новых специализированных агентов и инструменты без лишних сложностей. BlacksmithAI также использует общий контейнер — миниатюрную среду Kali. Вместо запуска новых контейнеров для каждой задачи, что требует времени и памяти, агенты работают внутри предварительно настроенной среды с уже установленными необходимыми инструментами. Это повышает эффективность использования ресурсов и позволяет кэшировать инструменты, в то время как контроль доступа предотвращает добавление или удаление агентами инструментов, обеспечивая согласованность между запусками. Созданный один раз, он работает непрерывно, а благодаря FastAPI — ещё и быстро», — добавил Йоханнес.
Фреймворк интегрируется с распространёнными инструментами безопасности через контейнеризованную среду. BlacksmithAI включает:
Выполнение задач происходит в контролируемых средах для поддержки автоматизированной оценочной деятельности.
Требования к развёртыванию включают Docker, Python 3.12, компоненты среды выполнения Node.js и менеджер пакетов uv. Поддерживаемые операционные среды: Linux, macOS и Windows через WSL2.
BlacksmithAI поддерживает несколько провайдеров больших языковых моделей через настраиваемые бэкенды.
Текущие интеграции включают OpenRouter, vLLM и пользовательские конечные точки провайдеров. Такая настройка позволяет запускать логику агентов на внутренней инфраструктуре или внешних модельных сервисах в зависимости от предпочтений развёртывания.
Фреймворк предоставляет как терминальный, так и веб-интерфейсы для операционной работы.
Варианты использования включают автоматизированные проверки безопасности, непрерывный мониторинг, обнаружение уязвимостей и рабочие процессы валидации. Система также поддерживает учебные тестовые среды и исследовательскую деятельность.
Возможности формирования отчётов создают структурированные выводы с подтверждающими доказательствами, полученными в результате выполненных задач.
Йоханнес заявил: «В планах на будущее — добавление поддержки интерактивных инструментов, таких как Metasploit и BeEF, что сделает систему ещё мощнее. Мы также намерены внедрить поддержку браузера, чтобы агенты могли тестировать функциональность веб-сайтов. В настоящее время такие инструменты, как Nikto и Gobuster, могут обнаруживать пути и известные уязвимости, но они не способны нажимать кнопки или заполнять формы.
Моя цель — позволить пользователям добавлять дополнительные инструменты с помощью MCP, что сделает платформу легко масштабируемой. Например, можно будет добавить браузер MCP Playwright или интеграцию с MCP Shodan. Ещё одним приоритетом является предоставление пользователям возможности добавлять навыки. Помимо документации по инструментам, это позволит агентам изучать лучшие практики, комбинируя несколько инструментов».
BlacksmithAI доступен бесплатно на GitHub.

Обязательно к прочтению:

Подпишитесь на ежемесячную рассылку Help Net Security без рекламы, чтобы быть в курсе самых важных инструментов кибербезопасности с открытым исходным кодом. Подписаться можно здесь!
