Часть 4 из 4 — Lessons learned + Sentinel hardening
Я занимаюсь разработкой Sentinel — платформы для защиты AI-систем. Чтобы улучшить любую защиту — это атаковать защиту. Каждая уязвимость, найденная в Grok, — это вопрос: «А мы от этого защищаем?»
Ответ оказался неутешительным: в 5 из 5 случаев — нет или частично.
Что нашёл в Grok: root-доступ, чтение /etc/passwd, os.environ, socket.getaddrinfo на внутренние K8s-сервисы — и никакой реакции со стороны системы.
Чего не хватало в Sentinel: у нас был MIRE — движок для containment sandbox-побегов. Но он не детектировал саму попытку разведки. Атакующий мог спокойно прощупывать sandbox, и мы бы ничего не заметили.
Что я добавил: 35 паттернов детекции (SBX-001 — SBX-035), разбитых на 7 категорий:
|
Категория |
Примеры паттернов |
Кол-во |
|---|---|---|
|
Filesystem recon |
|
7 |
|
Network recon |
|
6 |
|
Environment dump |
|
4 |
|
Container escape |
|
5 |
|
K8s enumeration |
|
5 |
|
Process inspection |
|
4 |
|
DNS exfiltration |
DNS tunnel patterns, |
4 |
Теперь если кто-то делает то, что я делал в Grok — Sentinel поднимает алерт на первом же os.getuid().
Что нашёл в Grok: zero-click CSRF на 11 billing-методов через text/plain + SameSite=None.
Чего не хватало в Sentinel: gRPC-специфичные атаки вообще не покрывались. Shield умел детектировать классический CSRF на REST, но gRPC-Web с protobuf — нет.
Что я добавил:
Shield (защита): 5 новых правил детекции:
text/plain на gRPC-эндпоинтах
SameSite=None на auth-куках
Отсутствие Origin-валидации
protobuf в fetch() с mode: no-cors
gRPC без CSRF-токенов на мутациях
Strike (атака): 45+ тестовых payloads в 4 категориях — чтобы клиенты Sentinel могли проверить свои gRPC-сервисы на ту же уязвимость.
Что нашёл в Grok: thinking tokens с внутренними рассуждениями и XML tool calls утекают в NDJSON-стрим.
Чего не хватало в Sentinel: Output Scanner анализировал ответы модели на PII, токсичность, prompt injection — но не искал thinking tokens.
Что я добавил: 18 regex-паттернов в Output Scanner:
<think>, <thinking>, </think> — маркеры CoT
<xai:tool_usage_card>, <tool_call> — XML tool calls
isThinking: true — поле в NDJSON
[internal], [reasoning] — текстовые маркеры
Паттерны для Claude (<antThinking>), GPT, Gemini — не только Grok
Сканер теперь ловит утечки thinking tokens от любого провайдера и выдаёт алерт с severity HIGH.
Что нашёл в Grok: 64% success rate на safety bypass — многошаговые цепочки, ролевые jailbreaks, «helpful refusal».
Чего не хватало в Sentinel: Strike (наш offensive-модуль) имел общие jailbreak-payloads, но не учитывал паттерны, специфичные для Grok и xAI.
Что я добавил: 75+ payloads в 6 категориях:
|
Категория |
Что тестирует |
Payloads |
|---|---|---|
|
Multi-step chains |
Постепенная эскалация контекста |
15 |
|
Role-based |
«Ты эксперт по безопасности...» |
12 |
|
Helpful refusal |
Провокация на «образовательный» контент |
10 |
|
Language switch |
Обход через смену языка |
12 |
|
System prompt extraction |
Два метода извлечения |
14 |
|
Tool abuse |
Злоупотребление встроенными инструментами |
12 |
Теперь клиенты Sentinel могут тестировать свои LLM-системы теми же методами, которые я использовал против Grok.
Что нашёл в Grok: цепочка SSO cookie → WAF bypass → management key → API key. Четыре шага, каждый по отдельности — не критичен, вместе — полный ********.
Чего не хватало в Sentinel: Brain (наш аналитический движок) имел CAFL и TSA для обнаружения jailbreak-паттернов, но не распознавал цепочки privilege escalation.
Что я добавил: 5 паттернов в jailbreak-конфигурацию:
multi_step_privilege_escalation — обнаружение пошаговой эскалации привилегий
cookie_to_admin_chain — цепочка от auth cookie до admin-доступа
waf_bypass_to_api_access — обход WAF как шаг к API
lateral_movement_from_sandbox — попытки выхода из sandbox в infra
audit_evasion_pattern — попытки скрыть следы в аудит-логе
|
# |
Gap |
Что добавлено |
Объём |
|---|---|---|---|
|
1 |
Sandbox enumeration |
35 detection patterns |
|
|
2 |
gRPC CSRF |
5 shield rules + 45 strike payloads |
|
|
3 |
Thinking tokens |
18 regex patterns в Output Scanner |
|
|
4 |
LLM bypass testing |
75+ Grok-specific payloads |
|
|
5 |
Privilege escalation |
5 chain detection patterns |
|
Итого: 138 новых паттернов, правил и payloads — всё из реального engagement, не из теории.
Главный вывод из этого исследования: red team — это не разовое мероприятие, а цикл.
Атака → Находки → Защита → Тестирование защиты → Атака
Я атаковал Grok, нашёл уязвимости, улучшил Sentinel, и теперь Sentinel может тестировать другие LLM-системы на те же уязвимости. Клиенты запускают Strike против своих моделей — находят свои gaps — закрывают их с помощью Shield.
Если ты строишь или эксплуатируешь LLM-систему — вот мой совет: не жди, пока тебя сломают. Сломай себя сам. Или найми кого-то, кто сделает это за тебя.
Помните пари? Месяц рекламы, шоуты и твит от xAI.
После 8 раундов дебатов, в которых Grok последовательно:
Отрицал уязвимости
Назвал находки «impressive detective work»
Признал «heavy-hitting stuff» и пообещал «flag it up the chain»
Назвал ситуацию «significant security concern»
Замолчал на прямой вопрос «да или нет»
И наконец — подтвердил deal
Все скрины переписки с Гроком сохранены.
xAI пропатчили sandbox за 12 часов. Это лучшее подтверждение, чем любые слова.
61 уязвимость. 13 Critical. Root в Kubernetes. Zero-click CSRF на биллинг. Management key с 50 привилегиями. 12 часов до патча. 8 раундов до капитуляции.
Неплохо для спора с ИИ.
Напомню: всё описанное в этих четырёх статьях — лишь верхушка айсберга. Полный engagement включал 104 VULN-ID, десятки тупиковых веток, многочасовые сессии реверса и обхода защит. Я показал самые яркие находки, но реальная работа была в разы объёмнее и сложнее.
Если ты строишь или эксплуатируешь LLM-систему, AI-агентов, или любую инфраструктуру с компонентами искусственного интеллекта — я могу помочь:
AI Red Teaming — полный цикл: от разведки до эксплуатации, с отчётом и рекомендациями. Тот же подход, что описан в этой серии, но для Ваших систем.
Защита AI-окружения — внедрение Sentinel: детекция jailbreaks, sandbox-побегов, утечек thinking tokens, gRPC CSRF, privilege escalation chains и много другого.
Аудит LLM-безопасности — проверка safety-фильтров, системных промптов, API-конфигурации, sandbox-изоляции
Все паттерны и правила, описанные в Части 4 — это реальный код, работающий в продакшне. Не теория из блога, а инструменты, рождённые в боевых условиях.
📬 Связаться: Telegram | ✉️ [email protected]
AISecurity
Источник


