Uber выложил в открытый доступ систему защиты AI-агентов ADR
Представьте ситуацию: вы разрешаете разработчикам использовать кодинг-помощников вроде Claude Code или Cursor. Агенты свободно ходят в консоль, выполняют команды, читают файлы и дергают внешние API через Model Context Protocol (MCP). Внезапно в один из обрабатываемых файлов попадает незаметный prompt injection. Агент считывает вредоносную инструкцию и тихо отправляет приватные ключи на сторонний сервер.
В Uber столкнулись с этой угрозой напрямую. Чтобы защитить внутренние процессы и клиентских ботов поддержки, инженеры компании создали систему ADR (Agentic AI Detection and Response). Недавно авторы выложили исходный код проекта на GitHub и опубликовали научную статью для конференции MLSys 2026.
Из чего состоит ADR
Uber уже использует ADR у себя в продакшене. Часть компонентов системы осталась во внутренних репозиториях компании (например, движок автоматической блокировки опасных действий Prevention и инструмент автоматического аудита ADR Explorer). Однако основную часть архитектуры выложили под лицензией Apache 2.0.
Открытая часть проекта делится на три блока:
- Observability (Sensor). Собирает и применит единую схему к телеметрии из 7+ популярных инструментов разработки. Работает на macOS, Linux и Windows.
- Benchmark (ADR-Bench). Тестовый стенд для проверки защиты. Состоит из 303 задач, 133 MCP-серверов и покрывает 17 техник атак на автономных агентов.
- Detection (ADR Detector). Двухуровневый модуль поиска угроз в логах работы агентов.
Сбор телеметрии без привязки к конкретному инструменту
Главная проблема при отслеживании AI-агентов заключается в разрозненности логов. Cursor пишет логи в одном формате, Claude Code в другом, а внутренний бот компании в третьем.
Модуль Sensor забирает сырые события из каждого инструмента и приводит их к общему виду. Он фиксирует не просто текст сообщений, а цепочки намерений (intent), вызовы конкретных функций и результаты выполнения команд. Благодаря этому ИБ-отдел получает единый поток событий независимо от того, в какой среде работал инженер.
+-------------------+
| Claude Code / |
| Cursor / Codex |
+---------+---------+
|
v
+-------------------+
| ADR Sensor |
| (Сбор телеметрии) |
+---------+---------+
|
v
+-------------------+
| ADR Detector |
| (Двухуровневый |
| анализ) |
+-------------------+
Двухуровневый анализ сессий
Анализировать абсолютно все действия агентов с помощью тяжелых LLM слишком дорого и долго. Авторы ADR решили эту задачу классическим паттерном из сферы безопасности, разделив детекцию на два этапа.
На первом этапе работает быстрая первичная сортировка (triage) с высоким охватом. Она с минимальной задержкой просматривает поток событий и отсеивает очевидно безопасные действия.
Если сессия кажется подозрительной, ADR передает её на второй этап. Здесь включается специальный агент-аналитик. Он запускает глубокое рассуждение над всей цепочкой действий пользователя и AI-помощника, проверяя контекст вызова MCP-инструментов. Такой подход экономит токены и удерживает время отклика в разумных рамках.
Тестовый стенд ADR-Bench
Оценить качество работы систем детекции на синтетических текстах обычно невозможно. Реальные атаки происходят при вызове инструментов, работе с файловой системой или обращении к API.
Чтобы воссоздать реальные условия, инженеры Uber собрали датасет ADR-Bench. В него входит 133 эмулированных MCP-сервера с заготовленными фейковыми учетными данными и безопасными песочницами. Бенчмарк проверяет, как детекторы справляются с 17 известными техниками атак на AI-агентов.
Датасет содержит только синтетические данные, поэтому его можно свободно использовать для защитных исследований без риска утечки реальных секретов.
Быстрый запуск
Репозиторий написан на Python. Для управления окружением и зависимостями авторы рекомендуют менеджер uv.
Запустить модуль детекции можно буквально в пару команд:
git clone https://github.com/uber/ADR
cd ADR/Detection
uv sync
export ANTHROPIC_API_KEY="your-key"
export OPENAI_API_KEY="your-key"
После этого можно прогнать стандартный тестовый сценарий. Если под рукой нет ключей API или не хочется тратить токены, в проекте предусмотрен легкий локальный режим проверки:
python run_detection.py --detector llamafirewall
Подробные инструкции по воспроизведению графиков и метрик из научной статьи находятся в файле docs/REPRODUCIBILITY.md.
Кому стоит обратить внимание на проект
Репозиторий пока набрал около 650 звёзд, но его практическая ценность видна сразу. В отличие от множества теоретических фреймворков, ADR вырос из реальной потребности крупной компании обезопасить своих сотрудников.
Проект пригодится:
- Специалистам по информационной безопасности, которые ищут способы контролировать использования AI-ассистентов в компании.
- Исследователям, которым нужен готовый бенчмарк для проверки защищенности LLM-агентов.
- Разработчикам собственных агентов, желающим изучить схему сбора и нормализации телеметрии.
Конечно, открытая версия пока не содержит модуля автоматического предотвращения атак (Prevention). Но даже в текущем виде ADR дает отличный фундамент для построения системы мониторинга за AI-инструментами внутри команды.
