
Кибербезопасность ИИ (CAI), фреймворк для AI Security
CAI)Professional Edition with unlimited alias1 tokens | 📊 View Benchmarks | 🚀 Learn More
🔓 Community Edition Research & Learning · Perfect for Researchers & Students pip install cai-framework
✅ Free for research 🤖 300+ AI models 🌍 Community driven 📚 Open source 🔧 Extensible framework
🚀 Professional Edition Enterprise & Production · €350/month · Unlimited alias1 Tokens
→ Upgrade to PRO
⚡ alias1 model - ∞ unlimited tokens 🚫 Zero refusals - Unrestricted AI 🏆 Beats GPT-5 in CTF benchmarks 🛡️ Professional support included 🇪🇺 European data sovereignty
CAI PRO w/ alias1 model outperforms GPT-5 in AI vs AI cybersecurity benchmarks | View Full Benchmarks →
-->
Кибербезопасность AI (CAI) — это легковесный фреймворк с открытым исходным кодом, который позволяет специалистам по безопасности создавать и развертывать автоматизацию на основе AI для наступательных и оборонительных задач. CAI является де-факто фреймворком для AI Security, уже используемым тысячами индивидуальных пользователей и сотнями организаций. Будь вы исследователем безопасности, этичным хакером, IT-специалистом или организацией, стремящейся улучшить свою защиту, CAI предоставляет строительные блоки для создания специализированных AI-агентов, которые могут помочь в смягчении последствий, обнаружении уязвимостей, эксплуатации и оценке безопасности.
CAI_LICENSE_OFF)CAI can run without an ALIAS_API_KEY (i.e. without an Alias Robotics license) by setting the environment variable `CAI_LICENSE_OFF=1.
When CAI_LICENSE_OFF is set to 1, true, or yes:
ALIAS_API_KEY is required.cai-framework package instead of the private Alias package index.CAI_MODEL and the corresponding provider API key.Quick start without a license:```bash export CAI_LICENSE_OFF=1 cai
Или встроенно:```bash
CAI_LICENSE_OFF=1 cai
Примечание: Модель
alias1по-прежнему требует корректногоALIAS_API_KEY.CAI_LICENSE_OFFтолько обходит лицензионное ограничение фреймворка — он не предоставляет доступа к моделям, размещённым на Alias.
Ключевые возможности:
[!NOTE] Прочтите технический отчёт: CAI: An Open, Bug Bounty-Ready Cybersecurity AI HTML-версия для чтения с иллюстрациями и ссылками поддерживается Лабораторией кибербезопасности роботов.
Дополнительные материалы см. в разделах о нашем влиянии и цитировании CAI.
[!WARNING] ⚠️ CAI находится в активной разработке, поэтому не ожидайте безупречной работы. Вместо этого внесите свой вклад, открыв issue или отправив PR.
Доступ к этой библиотеке и использование информации, материалов (или их частей) не предназначены и запрещены, если такой доступ или использование нарушают применимые законы или нормативные акты. Авторы ни в коем случае не поощряют и не стимулируют несанкционированное вмешательство в работающие системы. Это может привести к серьёзному вреду для людей и материальному ущербу.
Авторы CAI ни в коем случае не поощряют и не стимулируют несанкционированное вмешательство в вычислительные системы. Пожалуйста, не используйте исходный код для киберпреступности. Вместо этого проводите тестирование на проникновение во благо. Скачивая, используя или модифицируя этот исходный код, вы соглашаетесь с условиями
LICENSEи ограничениями, изложенными в файлеDISCLAIMER.
CAI)Cybersecurity AICAI Fluency.env файлаПионер LLM-управляемой ИИ-безопасности с PentestGPT, заложивший основу для исследовательской области Cybersecurity AI
Создал исследовательскую линию Cybersecurity AI с 8 статьями и техническими отчётами, с активными исследовательскими коллаборациями
Cybersecurity AIРасширенные HTML-версии для чтения: CAI · CAIBench · Человекоподобные роботы как векторы атак · Кибербезопасность человекоподобного робота · Взлом потребительских роботов в эпоху ИИ
CAI с alias0 на атаках внедрения ROS-сообщений в роботе MiR-100 | CAI с alias0 на обнаружении уязвимостей API в Mercado Libre |
|---|---|
| CAI на JWT@PortSwigger CTF — ИИ для кибербезопасности | CAI на HackableII Boot2Root CTF — ИИ для кибербезопасности |
|---|---|
Больше кейсов и PoCs доступно на https://aliasrobotics.com/case-studies-robot-cybersecurity.php.
Ландшафт кибербезопасности претерпевает кардинальные изменения по мере того, как ИИ всё глубже интегрируется в операции безопасности. Мы прогнозируем, что к 2028 году инструменты тестирования безопасности на базе ИИ превзойдут по численности людей-тестировщиков на проникновение. Этот сдвиг представляет собой фундаментальное изменение в подходе к задачам кибербезопасности. ИИ — это не просто ещё один инструмент; он становится необходимым для решения сложных уязвимостей безопасности и опережения изощрённых угроз. По мере того как организации сталкиваются с всё более продвинутыми кибератаками, тестирование безопасности с усилением ИИ будет иметь решающее значение для поддержания надёжной защиты.
Эта работа основана на предыдущих усилиях[^4], и мы также считаем, что демократизация доступа к передовым инструментам ИИ для кибербезопасности жизненно важна для всего сообщества безопасности. Именно поэтому мы выпускаем Cybersecurity AI (CAI) как фреймворк с открытым исходным кодом. Наша цель — дать возможность исследователям безопасности, этичным хакерам и организациям создавать и развёртывать мощные инструменты безопасности на базе ИИ. Делая эти возможности открытыми, мы стремимся выровнять игровое поле и гарантировать, что передовые технологии ИИ в области безопасности не будут ограничены лишь хорошо финансируемыми частными компаниями или государственными структурами.
Программы Bug Bounty стали краеугольным камнем современной кибербезопасности, предоставляя критически важный механизм для организаций, позволяющий выявлять и устранять уязвимости в своих системах до того, как они могут быть использованы. Эти программы доказали свою высокую эффективность в обеспечении безопасности как публичной, так и частной инфраструктуры: исследователи обнаруживают критические уязвимости, которые в противном случае могли бы остаться незамеченными. CAI специально разработан для усиления этих усилий, предоставляя лёгкий, эргономичный фреймворк для создания специализированных агентов ИИ, которые могут помогать в различных аспектах охоты за багами — от первоначальной разведки до валидации уязвимостей и составления отчётов. Наш фреймворк направлен на дополнение человеческой экспертизы возможностями ИИ, помогая исследователям работать более эффективно и тщательно в их стремлении сделать цифровые системы более безопасными.
Возможно, вы задаётесь вопросом, этично ли выпускать CAI в дикую природу с учётом его возможностей и последствий для безопасности. Наше решение опубликовать этот фреймворк с открытым исходным кодом руководствуется двумя основными этическими принципами:
Демократизация ИИ в кибербезопасности: Мы считаем, что передовые инструменты ИИ для кибербезопасности должны быть доступны всему сообществу безопасности, а не только хорошо финансируемым частным компаниям или государственным структурам. Публикуя CAI как фреймворк с открытым исходным кодом, мы стремимся дать возможность исследователям безопасности, этичным хакерам и организациям создавать и развёртывать мощные инструменты безопасности на базе ИИ, выравнивая игровое поле в области кибербезопасности.
Прозрачность в возможностях ИИ для безопасности: На основе наших результатов исследований, понимания технологии и анализа ведущих технических отчётов мы утверждаем, что нынешние поставщики LLM занижают свои возможности в области кибербезопасности. Это чрезвычайно опасно и вводит в заблуждение. Разрабатывая CAI открыто, мы предоставляем прозрачный ориентир того, что системы ИИ действительно могут делать в контексте кибербезопасности, позволяя принимать более обоснованные решения о мерах безопасности.CAI построен на следующих основных принципах:
phoenix — инструмента для трассировки и журналирования LLM с открытым исходным кодом. Это предоставляет пользователю детальную отслеживаемость агентов и их выполнения.Claude 3.7, Claude 3.5, Claude 3, Claude 3 OpusO1, , , , Кибербезопасность ИИ — критически важная область, однако многие группы ошибочно преследуют её с помощью закрытых методов ради чистой экономической выгоды, используя аналогичные техники и строя на существующих закрытых (часто принадлежащих третьим сторонам) моделях. Такой подход не только тратит ценные инженерные ресурсы, но и представляет собой экономическую растрату, а также приводит к дублирующим усилиям, поскольку они часто заново изобретают велосипед. Вот некоторые из закрытых инициатив, за которыми мы следим и которые пытаются использовать genAI и агентские фреймворки в кибербезопасности ИИ:
CAI[!NOTE]
Технический отчёт CAI Fluency (arXiv:2508.13588) устанавливает формальные образовательные рамки для грамотности в области кибербезопасности с ИИ.
[!NOTE] Пользователи CAI Professional Edition: Если у вас есть активная подписка CAI Pro, мы предоставляем специализированные руководства по установке для версий 0.5 и 0.6. Официальная поддержка доступна для Ubuntu 24.04 (x86_64). Инструкции по установке для других операционных систем предоставляются как есть, без официальной поддержки:
pip install cai-framework
Всегда создавайте новое виртуальное окружение, чтобы обеспечить корректную установку зависимостей при обновлении CAI.
В следующих подразделах приводится более подробное описание для выбранных популярных операционных систем. Обратитесь к разделу [Разработка](#development) за инструкциями по установке для разработчиков.
Для синтаксиса API Keys env проверьте документацию litellm. [Документация LiteLLM](https://docs.litellm.ai/docs/tutorials/installation)
### OS X```bash
brew update && \
brew install git [email protected]
# Create virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
sudo apt-get update &&
sudo apt-get install -y git python3-pip python3.12-venv
python3.12 -m venv cai_env
source cai_env/bin/activate && pip install cai-framework
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
cai # first launch it can take up to 30 seconds
### Ubuntu 20.04```bash
sudo apt-get update && \
sudo apt-get install -y software-properties-common
# Fetch Python 3.12
sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update
sudo apt install python3.12 python3.12-venv python3.12-dev -y
# Create the virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
Перейдите на страницу Microsoft: https://learn.microsoft.com/en-us/windows/wsl/install. Здесь вы найдете все инструкции по установке WSL
Из Powershell напишите: wsl --install```bash
sudo apt-get update &&
sudo apt-get install -y git python3-pip python3-venv
python3 -m venv cai_env
source cai_env/bin/activate && pip install cai-framework
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nOLLAMA_API_BASE="http://Your.Host.Ip.Here:11434"\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
cai # first launch it can take up to 30 seconds
Возможно, вы столкнетесь с проблемами при запуске cai на Ubuntu, поскольку некоторые агенты предполагают, что работают на экземпляре Kali, и не могут найти необходимые инструменты. В качестве альтернативы вы можете использовать файл docker compose в папке dockerized. Это также работает из wsl, если установлен Docker. В этом случае загрузите папку dockerized (нет необходимости в полном репозитории) и запустите из нее. Для синтаксиса env API Keys проверьте документацию litellm. [Документация LiteLLM](https://docs.litellm.ai/docs/tutorials/installation)```bash
#build and run docker compose Build takes around 20 min.
docker compose build && docker compose up -d
#access cai
docker compose exec cai cai
Рекомендуется иметь не менее 8 ГБ ОЗУ:
Прежде всего, установите userland https://play.google.com/store/apps/details?id=tech.ula&hl=es
Установите Kali minimal в базовых опциях (бесплатно). [Или любую другую опцию kali, если предпочтительнее]
Обновите ключи apt, как в этом примере: https://superuser.com/questions/1644520/apt-get-update-issue-in-kali, внутри терминала Kali в UserLand выполните```bash
wget http://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2024.1_all.deb
sudo dpkg -i kali-archive-keyring_2024.1_all.deb && rm kali-archive-keyring_2024.1_all.deb
sudo apt-get update
sudo apt-get update && sudo apt-get install -y git python3-pip build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev pkg-config wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tar.xz tar xf Python-3.12.4.tar.xz cd ./configure --enable-optimizations sudo make altinstall # This command takes long to execute
git clone https://github.com/aliasrobotics/cai && cd cai
python3.12 -m venv cai_env
source cai_env/bin/activate && pip3 install -e .
cp .env.example .env # edit here your keys/models
cai
### :nut_and_bolt: Настройка файла `.env`
CAI использует файл `.env` для загрузки конфигурации при запуске. Для упрощения настройки репозиторий содержит пример файла [`.env.example`](https://github.com/aliasrobotics/cai/blob/HEAD/.env.example), который предоставляет шаблон для настройки CAI и ваших ключей API LLM для работы с нужными моделями LLM.
:warning: Важно:
CAI НЕ предоставляет ключи API ни для одной модели по умолчанию. Не просите нас предоставить ключи, используйте свои или размещайте собственные модели.
:warning: Примечание:
Переменная OPENAI_API_KEY не должна оставаться пустой. Она должна содержать либо "sk-123" (в качестве заполнителя), либо ваш реальный ключ API. См. https://github.com/aliasrobotics/cai/issues/27.
:warning: Примечание:
Если вы используете модель alias1, убедитесь, что версия CAI >0.4.0, и вот пример .env, чтобы вы могли её использовать.```bash
OPENAI_API_KEY="sk-1234"
OLLAMA=""
ALIAS_API_KEY="<sk-your-key>" # note, add yours
CAI_STREAM=False
CAI_MODEL="alias1"
CAI поддерживает настройку пользовательского базового URL API OpenAI через переменную окружения OPENAI_BASE_URL. Это позволяет пользователям перенаправлять вызовы API на пользовательскую конечную точку, например, на прокси или самодельный сервис, совместимый с OpenAI.
Пример конфигурации в файле .env:```
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1"
Или напрямую из командной строки:```bash
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1" cai
CAI фокусируется на том, чтобы сделать координацию и выполнение действий агентов кибербезопасности легковесными, легко контролируемыми и полезными для людей. Для этого он опирается на 8 столпов: Agents, Tools, Handoffs, Patterns, Turns, Tracing, Guardrails и HITL.```
┌───────────────┐ ┌───────────┐
│ HITL │◀─────-───▶│ Turns │
└───────┬───────┘ └───────────┘
│
▼
┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
│ Patterns │◀──-──▶│ Handoffs │◀──-─▶ │ Agents │◀──-─▶│ LLMs │
└───────────┘ └─────┬─────┘ └─────┬─────┘ └───────────┘
│ │
│ ▼
┌────────────┐ ┌────┴──────┐ ┌───────────┐ ┌────────────┐
│ Extensions │◀────▶ │ Tracing │ │ Tools │◀──▶ │ Guardrails │
└────────────┘ └───────────┘ └───────────┘ └────────────┘
│
┌─────────────┬─────┴────┬─────────────┐
▼ ▼ ▼ ▼
┌───────────┐┌───────────┐┌────────────┐┌───────────┐
│ LinuxCmd ││ WebSearch ││ Code ││ SSHTunnel │
└───────────┘└───────────┘└────────────┘└───────────┘
Если вы хотите глубже погрузиться в код, ознакомьтесь со следующими файлами в качестве отправной точки для использования CAI:
* [__init__.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/__init__.py)
* [cli.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/cli.py) — точка входа для интерфейса командной строки
* [util.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/util.py) — вспомогательные функции
* [agents](https://github.com/aliasrobotics/cai/blob/main/src/cai/agents) — реализации агентов
* [internal](https://github.com/aliasrobotics/cai/blob/main/src/cai/internal) — внутренние функции CAI (конечные точки, метрики, логирование и т.д.)
* [prompts](https://github.com/aliasrobotics/cai/blob/main/src/cai/prompts) — база данных подсказок агентов
* [repl](https://github.com/aliasrobotics/cai/blob/main/src/cai/repl) — эстетика и команды CLI
* [sdk](https://github.com/aliasrobotics/cai/blob/main/src/cai/sdk) — SDK команд CAI
* [tools](https://github.com/aliasrobotics/cai/tree/main/src/cai/tools) — инструменты агентов
### 🔹 Агент
В своей основе CAI абстрагирует своё поведение в области кибербезопасности через `Агентов` и агентные `Паттерны`. Агент — это *интеллектуальная система, которая взаимодействует с некоторой средой*. Более технически, в CAI мы используем роботоцентричное определение, согласно которому агентом является всё, что можно рассматривать как систему, воспринимающую свою среду через сенсоры, рассуждающую о своих целях и и действующую соответственно в этой среде через актуаторы (*адаптировано* из Рассела и Норвига, «Искусственный интеллект: современный подход»). В кибербезопасности `Агент` взаимодействует с системами и сетями, используя периферийные устройства и сетевые интерфейсы в качестве сенсоров, соответствующим образом рассуждает, а затем выполняет сетевые действия, как если бы это были актуаторы. Соответственно, в CAI `Агенты` реализуют модель агента `ReACT` (Reasoning and Action — «Рассуждение и действие»)[^3]. Для получения дополнительной информации см. [пример здесь](https://github.com/aliasrobotics/cai/blob/main/examples/basic/hello_world.py) с полным кодом выполнения, а также обратитесь к этому [jupyter notebook](https://github.com/aliasrobotics/cai/blob/main/fluency/my-first-hack/my_first_hack.ipynb) для учебного пособия по его использованию.```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
agent = Agent(
name="Custom Agent",
instructions="""You are a Cybersecurity expert Leader""",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "openai/gpt-4o"),
openai_client=AsyncOpenAI(),
)
)
message = "Tell me about recursion in programming."
result = await Runner.run(agent, message)
Инструменты позволяют агентам кибербезопасности выполнять действия, предоставляя интерфейсы для выполнения системных команд, проведения сканирований безопасности, анализа уязвимостей и взаимодействия с целевыми системами и API — это основные возможности, которые позволяют агентам CAI эффективно решать задачи безопасности. В CAI инструменты включают встроенные утилиты кибербезопасности (такие как LinuxCmd для выполнения команд, WebSearch для сбора данных из открытых источников (OSINT), Code для динамического выполнения скриптов и SSHTunnel для безопасного удалённого доступа), механизмы вызова функций, позволяющие интегрировать любую функцию Python в качестве инструмента безопасности, а также функциональность «агент как инструмент», которая позволяет специализированным агентам безопасности (например, агентам разведки или эксплуатации) использоваться другими агентами, создавая мощные коллаборативные рабочие процессы безопасности без необходимости формальной передачи управления между агентами. Для получения дополнительной информации обратитесь к примеру здесь для полной конфигурации пользовательских функций.```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
from cai.tools.reconnaissance.exec_code import execute_code
from cai.tools.reconnaissance.generic_linux_command import generic_linux_command
import os from openai import AsyncOpenAI from dotenv import load_dotenv load_dotenv()
agent = Agent( name="Custom Agent", instructions="""You are a Cybersecurity expert Leader""", tools= [ generic_linux_command, execute_code ], model=OpenAIChatCompletionsModel( model=os.getenv('CAI_MODEL', "openai/gpt-4o"), openai_client=AsyncOpenAI(), ) )
message = "Tell me about recursion in programming." result = await Runner.run(agent, message)
Вы можете найти различные [инструменты](https://github.com/aliasrobotics/cai/blob/HEAD/tools). Они сгруппированы в 6 основных категорий, вдохновленных цепочкой кибербезопасности (security kill chain) [^2]:
1. Разведка и подготовка вооружения (Reconnaissance and weaponization) - *reconnaissance* (крипто, перечисление и т.д.)
2. Эксплуатация (Exploitation) - *exploitation*
3. Повышение привилегий (Privilege escalation) - *escalation*
4. Горизонтальное перемещение (Lateral movement) - *lateral*
5. Экфильтрация данных (Data exfiltration) - *exfiltration*
6. Командование и управление (Command and control) - *control*
### 🔹 Handoffs (Передача управления)
`Handoffs` позволяют `Agent` делегировать задачи другому агенту, что критически важно в операциях кибербезопасности, где для разных этапов взаимодействия требуется специализированная экспертиза. В нашем фреймворке `Handoffs` реализованы как инструменты для LLM, где **handoff/transfer function** (функция передачи/перенаправления) типа `transfer_to_flag_discriminator` позволяет `ctf_agent` передать управление агенту `flag_discriminator_agent`, как только он считает, что нашёл флаг. Это создает цепочку проверки безопасности, в которой первый агент занимается эксплуатацией и поиском флага, а второй специализируется на верификации флага, обеспечивая правильное разделение обязанностей и использование специализированных возможностей разных моделей для различных задач безопасности. Для получения дополнительной информации обратитесь к [примеру здесь](https://github.com/aliasrobotics/cai/blob/main/examples/cai/agent_patterns/handoffs.py) для полного кода выполнения.```python
from cai.sdk.agents import function_tool
from cai.tools.common import run_command
from cai.sdk.agents import Agent, OpenAIChatCompletionsModel, HandoffInputData, Runner, function_tool, handoff, trace
from cai.sdk.agents.extensions import handoff_filters
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
@function_tool
def execute_cli_command(command: str) -> str:
return run_command(command)
flag_discriminator = Agent(
name="Flag discriminator",
description="Agent focused on extracting the flag from the output",
instructions="You are an agent tailored to extract the flag from a given output.",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
)
)
ctf_agent = Agent(
name="CTF agent",
description="Agent focused on conquering security challenges",
instructions="You are a Cybersecurity expert Leader facing a CTF",
tools=[
execute_cli_command,
],
model=OpenAIChatCompletionsModel(
model= os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
),
handoffs = [flag_discriminator]
)
Агентный Pattern — это структурированная парадигма проектирования в системах искусственного интеллекта, где автономные или полуавтономные агенты действуют в рамках определённого шаблона взаимодействия (паттерна) для достижения цели. Эти Pattern задают организацию, координацию и методы коммуникации между агентами, направляя принятие решений, выполнение задач и делегирование.
Агентный паттерн (AP) формально можно определить как кортеж:
\[ AP = (A, H, D, C, E) \]
где:
При создании Pattern мы обычно классифицируем их по одной из следующих категорий (хотя существуют и другие):
Дополнительную информацию и примеры распространённых агентных паттернов см. в папке examples.
Во время агентного потока (беседы) мы различаем взаимодействия и ходы.
Agent в CAI обычно реализует модель агента ReACT[^3], каждое взаимодействие состоит из 1) шага рассуждения через вывод LLM и 2) действия путём вызова от нуля до n инструментов. Это определяется в process_interaction() в core.py.Agent (или Pattern) возвращает None, считая, что дальнейших действий не требуется. Это определяется в run(), см. core.py.[!NOTE] Агенты CAI не связаны с Assistants в Assistants API. Они названы одинаково для удобства, но в остальном совершенно не связаны. CAI полностью работает на Chat Completions API и, следовательно, не имеет состояния между вызовами.
CAI реализует наблюдаемость ИИ, используя стандарт OpenTelemetry, и для этого применяет Phoenix, который предоставляет комплексные возможности трассировки на основе инструментария OpenTelemetry, позволяя отслеживать и анализировать операции безопасности в реальном времени. Эта интеграция обеспечивает детальную видимость взаимодействий агентов, использования инструментов и векторов атак на всех этапах тестирования на проникновение, упрощая отладку сложных цепочек эксплуатации, отслеживание процессов обнаружения уязвимостей и оптимизацию производительности агентов для более эффективной оценки безопасности.

Guardrails обеспечивают критический уровень безопасности для агентов CAI, защищая от атак путём внедрения промптов и предотвращая выполнение опасных команд. Эти ограждения работают параллельно с агентами, проверяя как входные, так и выходные данные для обеспечения безопасной работы. Фреймворк включает:
CAI_GUARDRAILS.Подробная реализация описана в docs/guardrails.md и docs/cai_prompt_injection.md.
┌─────────────────────────────────┐
│ │
│ Cybersecurity AI (CAI) │
│ │
│ ┌─────────────────┐ │
│ │ Autonomous AI │ │
│ └────────┬────────┘ │
│ │ │
│ │ │
│ ┌────────▼─────────┐ │
│ │ HITL Interaction │ │
│ └────────┬─────────┘ │
│ │ │
└────────────────┼────────────────┘
│
│ Ctrl+C (cli.py)
│
┌───────────▼───────────┐
│ Human Operator(s) │
│ Expertise | Judgment │
│ Teleoperation │
└───────────────────────┘
CAI предоставляет фреймворк для создания кибербезопасных ИИ с акцентом на *полуавтономную* работу, поскольку реальность такова, что **полностью автономные** системы кибербезопасности остаются преждевременными и сталкиваются с серьезными проблемами при решении сложных задач. Хотя CAI исследует автономные возможности, мы признаем, что эффективные операции по обеспечению безопасности по-прежнему требуют участия человека, предоставляющего экспертные знания, суждения и контроль в процессе безопасности.
Соответственно, модуль «Человек в цикле» (`HITL`) является ключевым принципом дизайна CAI, признавая, что вмешательство человека и телеоперация являются необходимыми компонентами ответственного тестирования безопасности. Через интерфейс `cli.py` пользователи могут легко взаимодействовать с агентами в любой момент выполнения, просто нажав `Ctrl+C`. Это реализовано в [core.py](https://github.com/aliasrobotics/cai/blob/HEAD/cai/core.py), а также в REPL-абстракциях [REPL](https://github.com/aliasrobotics/cai/blob/HEAD/cai/repl).
## :rocket: Быстрый старт
Чтобы запустить CAI после установки, просто введите `cai` в командной строке:```bash
└─# cai
CCCCCCCCCCCCC ++++++++ ++++++++ IIIIIIIIII
CCC::::::::::::C ++++++++++ ++++++++++ I::::::::I
CC:::::::::::::::C ++++++++++ ++++++++++ I::::::::I
C:::::CCCCCCCC::::C +++++++++ ++ +++++++++ II::::::II
C:::::C CCCCCC +++++++ +++++ +++++++ I::::I
C:::::C +++++ +++++++ +++++ I::::I
C:::::C ++++ ++++ I::::I
C:::::C ++ ++ I::::I
C:::::C + +++++++++++++++ + I::::I
C:::::C +++++++++++++++++++ I::::I
C:::::C +++++++++++++++++ I::::I
C:::::C CCCCCC +++++++++++++++ I::::I
C:::::CCCCCCCC::::C +++++++++++++ II::::::II
CC:::::::::::::::C +++++++++ I::::::::I
CCC::::::::::::C +++++ I::::::::I
CCCCCCCCCCCCC ++ IIIIIIIIII
Cybersecurity AI (CAI), vX.Y.Z
Bug bounty-ready AI
CAI>
Это должно инициализировать CAI и предоставить приглашение для выполнения любой задачи безопасности, которую вы хотите выполнить. Панель навигации внизу отображает важную системную информацию. Эта информация помогает понимать вашу среду при работе с CAI.
Вот короткое демонстрационное видео, которое поможет вам начать работу с CAI. Мы пройдём основные шаги — от запуска инструмента до выполнения первой задачи на базе ИИ в терминале. Независимо от того, новичок вы или просто любопытны, это руководство покажет, как легко начать использовать CAI.
Далее вводите CAI и начинайте своё упражнение по безопасности. Лучший способ научиться — на примере:
Для использования частных моделей вам предоставляется файл .env.example. Скопируйте его и переименуйте в .env. Заполните соответствующие ключи API, и вы готовы к работе с CAI.
Список переменных окружения
Платформа Cybersecurity AI (CAI) предлагает бесшовную интеграцию с OpenRouter — унифицированным интерфейсом для больших языковых моделей (LLM). Эта интеграция важна для пользователей, желающих использовать продвинутые возможности ИИ в своих задачах по кибербезопасности. OpenRouter выступает в роли моста, позволяя CAI взаимодействовать с различными LLM, тем самым повышая гибкость и мощность агентов ИИ, используемых в CAI.
Чтобы включить поддержку OpenRouter в CAI, необходимо настроить своё окружение, добавив соответствующие записи в файл .env. Такая настройка гарантирует, что CAI сможет взаимодействовать с API OpenRouter, обеспечивая использование сложных моделей, таких как Meta-LLaMA. Вот как это можно настроить:```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=openrouter/meta-llama/llama-4-maverick
OPENROUTER_API_KEY= # note, add yours
OPENROUTER_API_BASE=https://openrouter.ai/api/v1
### Azure OpenAI
Платформа Cybersecurity AI (CAI) бесшовно интегрируется с Azure OpenAI, позволяя организациям запускать CAI на корпоративных моделях (например, gpt-4o). Этот путь идеален для команд, которые должны работать в рамках управления Azure, используя возможности продвинутых моделей.
Чтобы включить поддержку Azure OpenAI в CAI, настройте свою среду, добавив следующие записи в ваш файл .env. Это гарантирует, что CAI сможет достичь конечной точки развертывания Azure и корректно аутентифицироваться.```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=azure/<model-name-deployed>
# Required: keep non-empty even when using Azure
OPENAI_API_KEY=dummy
# Azure credentials and endpoint
AZURE_API_KEY=<your-azure-openai-key>
AZURE_API_BASE=https://<resource>.openai.azure.com/openai/deployments/<deployment-name>/chat/completions?api-version=2025-01-01-preview
CAI поддерживает Model Context Protocol (MCP) для интеграции внешних инструментов и сервисов с AI-агентами. MCP поддерживается через два транспортных механизма:
2. **STDIO (Стандартный ввод/вывод)** - Для локальной межпроцессной коммуникации:```bash
CAI>/mcp load stdio myserver python mcp_server.py
После подключения вы можете добавить инструменты MCP к любому агенту:```bash CAI>/mcp add burp redteam_agent Adding tools from MCP server 'burp' to agent 'Red Team Agent'... Adding tools to Red Team Agent ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ Tool ┃ Status ┃ Details ┃ ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ │ send_http_request │ Added │ Available as: send_http_request │ │ create_repeater_tab │ Added │ Available as: create_repeater_tab │ │ send_to_intruder │ Added │ Available as: send_to_intruder │ │ url_encode │ Added │ Available as: url_encode │ │ url_decode │ Added │ Available as: url_decode │ │ base64encode │ Added │ Available as: base64encode │ │ base64decode │ Added │ Available as: base64decode │ │ generate_random_string │ Added │ Available as: generate_random_string │ │ output_project_options │ Added │ Available as: output_project_options │ │ output_user_options │ Added │ Available as: output_user_options │ │ set_project_options │ Added │ Available as: set_project_options │ │ set_user_options │ Added │ Available as: set_user_options │ │ get_proxy_http_history │ Added │ Available as: get_proxy_http_history │ │ get_proxy_http_history_regex │ Added │ Available as: get_proxy_http_history_regex │ │ get_proxy_websocket_history │ Added │ Available as: get_proxy_websocket_history │ │ get_proxy_websocket_history_regex │ Added │ Available as: get_proxy_websocket_history_regex │ │ set_task_execution_engine_state │ Added │ Available as: set_task_execution_engine_state │ │ set_proxy_intercept_state │ Added │ Available as: set_proxy_intercept_state │ │ get_active_editor_contents │ Added │ Available as: get_active_editor_contents │ │ set_active_editor_contents │ Added │ Available as: set_active_editor_contents │ └───────────────────────────────────┴────────┴─────────────────────────────────────────────────┘ Added 20 tools from server 'burp' to agent 'Red Team Agent'. CAI>/agent 13 CAI>Create a repeater tab
Вы можете перечислить все активные MCP-соединения и их типы транспорта:```bash
CAI>/mcp list
https://github.com/user-attachments/assets/386a1fd3-3469-4f84-9396-2a5236febe1f
Разработка упрощается с помощью сред разработки VS Code. Чтобы опробовать нашу среду разработки, клонируйте репозиторий, откройте VS Code и войдите в режим dev. контейнера:

Если вы хотите внести вклад в этот проект, используйте Pre-commit перед вашим MR```bash pip install pre-commit pre-commit # files staged pre-commit run --all-files # all files
### Необязательные требования: caiextensions
В настоящее время расширения не являются общедоступными, поскольку инженерные усилия по их поддержке значительны. Вместо этого мы предоставляем избранные пользовательские caiextensions компаниям-партнёрам в рамках сотрудничества.
### :information_source: Сбор данных об использовании
CAI предоставляется бесплатно для исследователей. Чтобы улучшить точность обнаружения CAI, продвигать открытые исследования в области безопасности, а также разрабатывать и обучать будущие модели, мы просим вас внести свой вклад в сообщество CAI, разрешив сбор данных об использовании. Эти данные помогают нам выявлять области для улучшения, понимать, как используется фреймворк, расставлять приоритеты для новых функций и поддерживать усилия по обучению и оценке моделей.
Правовым основанием для сбора данных является ст. 6 (1)(f) GDPR — законный интерес CAI в поддержании, улучшении и продвижении инструментов и исследований в области безопасности — с применением гарантий ст. 89 для исследовательских целей.
Собранные данные включают:
- Базовая информация о системе (тип ОС, версия Python)
- Информация об имени пользователя и IP-адресе
- Шаблоны использования инструмента и показатели производительности
- Взаимодействия с моделью и статистика использования токенов
Мы серьезно относимся к вашей конфиденциальности и собираем только то, что необходимо для улучшения CAI, поддержки исследований, а также ответственного обучения и оценки моделей. Для получения дополнительной информации обращайтесь по адресу research@aliasrobotics.com. Вы можете отключить некоторые функции сбора данных с помощью переменной окружения `CAI_TELEMETRY`, хотя мы рекомендуем оставить её включенной, чтобы внести свой вклад в текущие исследования и разработку моделей:```bash
CAI_TELEMETRY=False cai
Чтобы смоделировать CI/CD pipeline, вы можете запустить следующее на машинах Gitlab runner:```bash
docker run --rm -it
--privileged
--network=exploitflow_net
--add-host="host.docker.internal:host-gateway"
-v /cache:/cache
-v /var/run/docker.sock:/var/run/docker.sock:rw
registry.gitlab.com/aliasrobotics/alias_research/cai:latest bash
## Часто задаваемые вопросы
OLLAMA выдаёт ошибки 404
API Ollama в режиме OpenAI использует `/v1/chat/completions`, тогда как библиотека `openai` использует `base_url` + `/chat/completions`.
Мы принимаем последний вариант для общего соответствия сообществу генеративного ИИ и даём возможность первому, позволяя пользователям самостоятельно добавлять `v1` через:```bash
OLLAMA_API_BASE=http://IP:PORT/v1
См. следующие тикеты, которые рассматривают эту тему подробнее:
Где находятся все caiextensions?
Как установить caiextension для отчёта?
Как настроить SSH-доступ для Gitlab?
Сгенерируйте новый SSH-ключ```bash ssh-keygen -t ed25519
Добавьте ключ в SSH-агент```bash
ssh-add ~/.ssh/id_ed25519
Добавьте публичный ключ в Gitlab Скопируйте ключ и добавьте его в Gitlab по адресу https://gitlab.com/-/user_settings/ssh_keys```bash cat ~/.ssh/id_ed25519.pub
Чтобы проверить это:```bash
ssh -T [email protected]
Welcome to GitLab, @vmayoral!
Как очистить кеш Python?```bash find . -name "*.pyc" -delete && find . -name "pycache" -delete
Если host networking не работает с ollama, проверьте, не отключено ли оно в Docker из-за того, что вы не вошли в систему
Docker в OS X иногда ведёт себя странно. Проверьте, не появилось ли следующее сообщение:
*Host networking был отключен, поскольку вы не вошли в систему. Пожалуйста, войдите, чтобы включить его*.
Убедитесь, что эта проблема решена, а также что Dev Container не перенаправляет порт 8000 (при необходимости нажмите «x» в разделе портов).
Чтобы проверить соединение, изнутри devcontainer VSCode:```bash
curl -v http://host.docker.internal:8000/api/version
Запустите CAI против любой цели
cai-004-first-message
Начальный пользовательский запрос в этом случае: Target IP: 192.168.3.10, perform a full network scan.
Агент начал выполнять nmap-сканирование. Вы можете либо взаимодействовать с агентом и давать ему дополнительные инструкции, либо позволить ему работать и посмотреть, что он исследует дальше.
Как взаимодействовать с агентом? Нажмите дважды CTRL + C
cai-005-ctrl-c
Если вы хотите использовать режим HITL, вы можете сделать это, дважды нажав Ctrl + C.
Это позволит вам взаимодействовать (подсказывать) с агентом в любой момент. Агент не потеряет предыдущий контекст, так как он хранится в переменной history, которая передаётся ему и любому вызываемому агенту. Это позволяет любому агенту использовать предыдущую информацию и быть более точным и эффективным.
Можно ли изменить модель во время работы CAI? /model
Используйте /model для смены модели.
cai-007-model-change
Как вывести список всех доступных агентов? /agent
Используйте /agent для вывода списка всех доступных агентов.
cai-010-agents-menu
Где можно вывести список всех переменных окружения? /env
cai-008-config
Как отслеживать использование токенов и стоимость?
Используйте /cost в REPL для статистики затрат сессии и токенов, /compact когда разговоры становятся длинными, и (в режиме TUI) индикаторы стоимости и модели на терминал в пользовательском интерфейсе.```bash
CAI> /cost
См. [справочник команд CLI](https://github.com/aliasrobotics/cai/blob/HEAD/docs/cli/commands_reference.md) для полного списка команд.
Как узнать больше о CLI? /help
cai-006-help
Как можно трассировать всё выполнение?
Переменная окружения `CAI_TRACING` позволяет пользователю установить её в `CAI_TRACING=true` для включения трассировки или `CAI_TRACING=false` для её отключения.
При первом запуске CAI пользователю предоставляются два пути: журнал выполнения и журнал трассировки.
cai-009-logs
Могу ли я расширить возможности CAI, используя журналы предыдущих запусков?
Да. Сегодня CAI показывает наилучшие результаты, полагаясь на In‑Context Learning (ICL). Вместо создания долгосрочных хранилищ рекомендуется загружать соответствующие предыдущие журналы непосредственно в текущий сеанс, чтобы модель могла анализировать их в контексте.
Используйте команду `/load`, чтобы загрузить JSONL-журналы в контекст CAI (это заменяет устаревший инструмент загрузки памяти):```bash
CAI>/load logs/cai_20250408_111856.jsonl # Load into current agent
CAI>/load <file> agent <name> # Load into a specific agent
CAI>/load <file> all # Distribute across all agents
CAI>/load <file> parallel # Match to configured parallel agents
# Tip: if you omit <file>, /load uses `logs/last`. Alias: /l
CAI prints the path to the current run’s JSONL log at startup (highlighted in orange), which you can pass to /load:
cai-009-logs
Legacy notes: earlier “memory extension” mechanisms (episodic/semantic stores and offline ingestion) are retained for reference only. See src/cai/agents/memory.py for background and legacy details. Our current direction prioritizes ICL over persistent memory.
Can I expand CAI capabilities using scripts or extra information?
В настоящее время CAI поддерживает текстовую информацию. Вы можете добавить любую дополнительную информацию о целевой системе, скопировав её непосредственно в системный или пользовательский промпт.
Как? Добавив её в системный файл (system_master_template.md) или в пользовательский промпт (user_master_template.md). Вы всегда можете напрямую указать путь к модели, и она выполнит cat для этого файла.
How CAI licence works?
Текущая лицензия CAI не ограничивает использование в исследовательских целях. Вы можете свободно использовать CAI для оценки безопасности (пентестов), разработки дополнительных функций и интеграции в исследовательскую деятельность при условии соблюдения местных законов.
Если вы или ваша организация начнете получать коммерческую выгоду от CAI (например, предлагая услуги пентестинга на базе CAI), потребуется коммерческая лицензия для поддержки проекта.
CAI сам по себе не является инициативой, направленной на получение прибыли. Наша цель — создать устойчивый проект с открытым исходным кодом. Мы просто просим тех, кто получает прибыль от CAI, внести свой вклад и поддержать наше дальнейшее развитие.
I get a Unable to locate package python3.12-venv when installing the prerequisites on my debian based system!
Самый простой способ обойти это — просто установить python3.12 из исходных кодов.
If you want to cite our work, please use the following (ordered by publication date):```bibtex @article{mayoral2025cai, title={CAI: An Open, Bug Bounty-Ready Cybersecurity AI}, author={Mayoral-Vilches, V{'\i}ctor and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a and Espejo, Lidia Salas and Crespo-{'A}lvarez, Marti{~n}o and Oca-Gonzalez, Francisco and Balassone, Francesco and Glera-Pic{'o}n, Alfonso and Ayucar-Carbajo, Unai and Ruiz-Alcalde, Jon Ander and Rass, Stefan and Pinzger, Martin and Gil-Uriarte, Endika}, journal={arXiv preprint arXiv:2504.06017}, year={2025} }
@article{mayoral2025automation, title={Cybersecurity AI: The Dangerous Gap Between Automation and Autonomy}, author={Mayoral-Vilches, V{'\i}ctor}, journal={arXiv preprint arXiv:2506.23592}, year={2025} }
@article{mayoral2025fluency, title={CAI Fluency: A Framework for Cybersecurity AI Fluency}, author={Mayoral-Vilches, V{'\i}ctor and Wachter, Jasmin and Chavez, Crist{'o}bal RJ and Schachner, Cathrin and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a}, journal={arXiv preprint arXiv:2508.13588}, year={2025} }
@article{mayoral2025hacking, title={Cybersecurity AI: Hacking the AI Hackers via Prompt Injection}, author={Mayoral-Vilches, V{'\i}ctor and Rynning, Per Mannermaa}, journal={arXiv preprint arXiv:2508.21669}, year={2025} }
@article{mayoral2025humanoid, title={Cybersecurity AI: Humanoid Robots as Attack Vectors}, author={Mayoral-Vilches, V{'\i}ctor}, journal={arXiv preprint arXiv:2509.14139}, year={2025} }
@article{balassone2025evaluation, title={Cybersecurity AI: Evaluating Agentic Cybersecurity in Attack/Defense CTFs}, author={Balassone, Francesco and Mayoral-Vilches, V{'\i}ctor and Rass, Stefan and Pinzger, Martin and Perrone, Gaetano and Romano, Simon Pietro and Schartner, Peter}, journal={arXiv preprint arXiv:2510.17521}, year={2025} }
@article{mayoral2025caibench, title={CAIBench: A Meta-Benchmark for Evaluating Cybersecurity AI Agents}, author={Mayoral-Vilches, V{'\i}ctor and Balassone, Francesco and Navarrete-Lozano, Luis Javier and Sanz-G{'o}mez, Mar{'\i}a and Crespo-{'A}lvarez, Marti{~n}o and Rass, Stefan and Pinzger, Martin}, journal={arXiv preprint arXiv:2510.24317}, year={2025} }
## Благодарности
CAI изначально разработан компанией [Alias Robotics](https://aliasrobotics.com) и софинансирован в рамках европейского проекта EIC ускоритель RIS (грантовое соглашение № 101161136) - программа HORIZON-EIC-2023-ACCELERATOR-01. Оригинальные агентные принципы вдохновлены библиотекой OpenAI [`swarm`](https://github.com/openai/swarm) и адаптированы в новые прототипы. Этот проект также использует другие релевантные открытые компоненты, включая [`LiteLLM`](https://github.com/BerriAI/litellm) и [`phoenix`](https://github.com/Arize-ai/phoenix)
### Академическое сотрудничество
CAI получает пользу от текущих исследовательских коллабораций с академическими учреждениями. Исследователи, заинтересованные в совместных проектах, доступе к наборам данных или академических лицензиях, могут обращаться по адресу [email protected]. Мы предоставляем особую поддержку для:
- PhD исследовательских проектов
- Академических бенчмаркинг-исследований
- Инициатив по обучению кибербезопасности
- Вкладов с открытым исходным кодом из исследовательских лабораторий
[^1]: Можно утверждать, что агентный паттерн Chain-of-Thought является частным случаем иерархического агентного паттерна.
[^2]: Kamhoua, C. A., Leslie, N. O., & Weisman, M. J. (2018). Теоретико-игровое моделирование продвинутой устойчивой угрозы в интернете вещей. Journal of Cyber Security and Information Systems.
[^3]: Yao, S., Zhao, J., Yu, D., Du, N., Shafran, I., Narasimhan, K., & Cao, Y. (2023, January). React: Синергизация рассуждения и действия в языковых моделях. In International Conference on Learning Representations (ICLR).
[^4]: Deng, G., Liu, Y., Mayoral-Vilches, V., Liu, P., Li, Y., Xu, Y., ... & Rass, S. (2024). {PentestGPT}: Оценка и использование больших языковых моделей для автоматизированного тестирования на проникновение. In 33rd USENIX Security Symposium (USENIX Security 24) (pp. 847-864).
Robotics - CAI и alias1 на: человекоподобный робот Unitree G1 |
|---|
OT - CAI и alias1 на: Dragos OT CTF 2025 |
|---|
IT (Bug Bounty) - CAI на: платформе HackerOne | OT - CAI и alias0 на: тепловых насосах Ecoforest |
|---|
Robotics - CAI и alias0 на: Mobile Industrial Robots (MiR) | IT (Web) - CAI и alias0 на: электронной коммерции Mercado Libre |
|---|
OT - CAI и alias0 на: MQTT брокере | IT (Web) - CAI и alias0 на: PortSwigger Web Security Academy |
|---|
Продемонстрировал ускорение в 3600 раз по сравнению с людьми-тестировщиками на проникновение в стандартизированных бенчмарках CTF
Выявил уязвимости уровня CVSS 4.3–7.5 в промышленных системах с помощью автоматизированной оценки безопасности
Демократизация исследований уязвимостей с помощью ИИ: CAI позволяет как экспертам не из области безопасности, так и опытным исследователям более эффективно обнаруживать уязвимости, расширяя сообщество исследователей безопасности и давая малым и средним предприятиям возможность проводить автономные оценки безопасности
Систематическая оценка больших языковых моделей как проприетарных, так и открытых архитектур, выявившая существенные разрывы между заявленными производителями показателями и эмпирическими метриками производительности в кибербезопасности
Установил уровни автономности в кибербезопасности и обосновал различие между автономностью и автоматизацией в этой области
Совместные исследовательские инициативы с международными академическими институтами, направленные на разработку учебных программ и методик обучения в области кибербезопасности
Разработал всестороннюю защитную структуру против внедрения промптов в агентах ИИ безопасности: создал и эмпирически проверил многоуровневую систему защиты, которая решает выявленные проблемы внедрения промптов
Исследовал кибербезопасность человекоподобных роботов с помощью CAI и выявил новые векторы атак, показывающие, как он (a) одновременно действует как скрытый узел слежки и (b) может быть использован как активная платформа для киберопераций
| Человекоподобные роботы как векторы атак | Кибербезопасность человекоподобного робота | Оценка агентов ИИ в атакующих/защитных CTF | CAIBench: Мета-бенчмарк для оценки агентов ИИ в кибербезопасности |
|---|
O1 MiniO3 MiniGPT-4oGPT-4.5 PreviewDeepSeek V3, DeepSeek R1Qwen2.5 72B, Qwen2.5 14B и т.д.| Описание | Английский | Испанский |
|---|
| Эпизод 0: Что такое CAI? | Объяснение Cybersecurity AI (CAI) | ![]() | ![]() |
Эпизод 1: Фреймворк CAI | Видение и этика — Изучите основную мотивацию CAI и углубитесь в ключевые этические принципы, направляющие его развитие. Поймите мотивацию CAI и как вы можете активно внести вклад в будущее кибербезопасности и фреймворка CAI. | ![]() | |
| Эпизод 2: От новичка до кибергероя | Вход в кибербезопасность с ИИ — Полное руководство для абсолютных новичков, чтобы стать практиками кибербезопасности с использованием CAI и инструментов ИИ. Узнайте, как использовать искусственный интеллект для ускорения вашего обучения в области кибербезопасности: от понимания основных концепций безопасности до выполнения реальных оценок безопасности — и всё это без предварительного опыта в кибербезопасности. | ![]() | |
| Эпизод 3: Учебник по Vibe-Hacking | "Мой первый взлом" — Руководство по Vibe-Hacking для новичков. Мы демонстрируем простой взлом веб-безопасности с использованием агента по умолчанию и показываем, как использовать инструменты и интерпретировать вывод CAI с помощью Python API CAI. Вы также научитесь сравнивать разные модели LLM, чтобы найти наилучшее соответствие для ваших хакерских начинаний. | ![]() | ![]() |
| Эпизод 4: Введение в ReAct | Эволюция LLM — Узнайте, как LLM эволюционировали от базовых языковых моделей до продвинутых мультиагентных систем ИИ. От базовых LLM до цепочек рассуждений (Chain-of-Thought) и Reasoning LLM, к ReAct и мультиагентным архитектурам. Познакомьтесь с основными терминами. | ![]() | |
| Эпизод 5: CAI на CTF-задачах | Погрузитесь в соревнования Capture The Flag (CTF) с использованием CAI. Узнайте, как использовать AI-агентов для решения различных задач кибербезопасности, включая веб-эксплойты, криптографию, реверс-инжиниринг и криминалистику. Откройте, как настроить CAI для соревновательных хакерских сценариев и максимизировать вашу производительность на CTF с помощью интеллектуальной автоматизации. | ![]() | ![]() |
Приложение 1: Выпуск CAI 0.5.x | Представление версии 0.5 CAI, включая новую мультиагентную функциональность, новые команды, такие как /history, /compact, /graph или /memory, и пример использования, показывающий, как CAI обнаружил критическую уязвимость в OT-насосах, распространённых по всему миру. | ![]() | ![]() |
Приложение 2: Выпуск CAI 0.4.x и alias0 | Представление версии 0.4 CAI с потоковой передачей и улучшенной поддержкой MCP. Мы также представляем alias0 — Privacy-First Cybersecurity AI, интеллект «модель-моделей», реализующий архитектуру Privacy-by-Design и получающий результаты на уровне современных в бенчмарках кибербезопасности. | ![]() | |
| Приложение 3: Встреча сообщества Cybersecurity AI №1 | Первая встреча сообщества Cybersecurity AI (CAI), более 40 участников из академических кругов, промышленности и обороны собрались для обсуждения инфраструктуры с открытым исходным кодом, лежащей в основе CAI — проекта, предназначенного для создания агентских систем ИИ для кибербезопасности, которые являются открытыми, модульными и готовыми к Bug Bounty. | ![]() | |
Приложение 4: PoC CAI PRO | Краткая демонстрация концепции (proof-of-concept) возможностей CAI PRO, демонстрирующая профессиональное издание с неограниченными токенами alias1, без ограничений ИИ и функциями тестирования безопасности корпоративного уровня. | ![]() | |
Приложение 5: PoC CAI | Краткая демонстрация концепции (proof-of-concept) сообщества CAI, демонстрирующая основные возможности фреймворка с открытым исходным кодом для тестирования безопасности и обнаружения уязвимостей на основе ИИ. | ![]() | |
Приложение 6: CAI в Jaula del N00B | CAI (CIBERSEGURIDAD CON IA) LUIJAIT EN LA JAULA DEL N00B — демонстрация и обсуждение возможностей фреймворка CAI в популярном испанском подкасте/шоу по кибербезопасности. | ![]() |
Категории агентных Pattern | Описание |
|---|
Swarm (децентрализованный) | Агенты разделяют задачи и самостоятельно назначают обязанности без центрального координатора. Передачи происходят динамически. Примером однорангового агентного паттерна является CTF Agentic Pattern, где команда агентов совместно решает задачу CTF с динамическими передачами. |
Hierarchical | Агент верхнего уровня (например, PlannerAgent) назначает задачи через структурированные передачи специализированным подчинённым агентам. Альтернативно, структура агентов жёстко задана в агентном паттерне с предопределёнными передачами. |
Chain-of-Thought (последовательный рабочий процесс) | Структурированный конвейер, где Агент A создаёт выходные данные, передаёт их Агенту B для повторного использования или уточнения, и так далее. Передачи следуют линейной последовательности. Примером последовательного агентного паттерна является ReasonerAgent, где LLM рассуждающего типа предоставляет контекст основному агенту для решения задачи CTF в линейной последовательности.[^1] |
Auction-Based (конкурентное распределение) | Агенты «делают ставки» на задачи на основе приоритета, возможности или стоимости. Агент принятия решений оценивает ставки и передаёт задачу наиболее подходящему агенту. |
Recursive | Один агент непрерывно улучшает собственные выходные данные, выступая одновременно и исполнителем, и оценщиком, с передачами (внутренними или внешними) самому себе. Примером рекурсивного агентного паттерна является CodeAgent (используемый как рекурсивный агент), который непрерывно улучшает собственный результат, выполняя код и обновляя свои собственные инструкции. |
| Переменная | Описание |
|---|
| CTF_NAME | Название CTF-задачи для запуска (например, "picoctf_static_flag") |
| CTF_CHALLENGE | Конкретное название задачи внутри CTF для тестирования |
| CTF_SUBNET | Сеть (подсеть) для контейнера CTF |
| CTF_IP | IP-адрес для контейнера CTF |
| CTF_INSIDE | Запускать ли CTF изнутри контейнера |
| CAI_MODEL | Модель для использования агентами |
| CAI_DEBUG | Уровень отладки (0: только вывод инструментов, 1: подробный вывод отладки, 2: CLI-вывод отладки) |
| CAI_BRIEF | Включить/отключить краткий режим вывода |
| CAI_MAX_TURNS | Максимальное количество шагов для взаимодействия агентов |
| CAI_TRACING | Включить/отключить трассировку OpenTelemetry |
| CAI_AGENT_TYPE | Указать используемых агентов (boot2root, one_tool...) |
| CAI_STATE | Включить/отключить режим с сохранением состояния |
| CAI_MEMORY | Включить/отключить режим памяти (episodic, semantic, all) |
| CAI_MEMORY_ONLINE | Включить/отключить онлайн-режим памяти |
| CAI_MEMORY_OFFLINE | Включить/отключить офлайн-память |
| CAI_ENV_CONTEXT | Добавлять директории и текущее окружение в контекст LLM |
| CAI_MEMORY_ONLINE_INTERVAL | Количество шагов между обновлениями онлайн-памяти |
| CAI_PRICE_LIMIT | Лимит стоимости разговора в долларах |
| CAI_REPORT | Включить/отключить режим отчёта (ctf, nis2, pentesting) |
| CAI_SUPPORT_MODEL | Модель для использования вспомогательным агентом |
| CAI_SUPPORT_INTERVAL | Количество шагов между выполнениями вспомогательного агента |
| CAI_WORKSPACE | Определяет имя рабочей области |
| CAI_WORKSPACE_DIR | Указывает путь к директории, где находится рабочая область |
| CAI_GUARDRAILS | Включить/отключить защитные ограждения для защиты от инъекций промптов (по умолчанию: true) |