Skip to main content

Cyberstrike is now open source! AI-powered penetration testing for security professionals. Star on GitHub

Агент Triage

Агент triage независимо проверяет черновики уязвимостей, воспроизводя их HTTP-доказательства. Он никогда не доверяет описанию отчитывающегося агента — он воспроизводит каждый запрос и самостоятельно проверяет тело ответа.

Обзор

СвойствоЗначение
ID агентаtriage
Режимsubagent
Доступ к инструментамОграниченный (read, grep, http_replay, triage_vulnerability, web_get_session_context)
ПодходКонсервативный — оставляет непроверяемые находки как черновики

Протокол проверки

Для каждого черновика находки агент triage:

  1. Читает приложенные HTTP-доказательства (захваченный запрос/ответ)
  2. Использует http_replay для независимого воспроизведения запроса
  3. Анализирует ответ воспроизведения на наличие фактических доказательств
  4. Принимает решение о судьбе находки:
ВердиктКогда
Проверено (Triaged)Воспроизведение подтверждает уязвимость
Отклонено (Rejected)Воспроизведение показывает ложное срабатывание
Дубликат (Duplicate)Находка дублирует другую подтверждённую находку
Черновик (Draft) (без изменений)Невозможно проверить — оставлено для ручного рассмотрения

Что считается доказательством

Агент triage применяет строгие стандарты доказательств:

  • Статус 200 сам по себе не является доказательством — тело ответа должно содержать целевые данные
  • deleted:0, пустые массивы, общие сообщения об успехе — не являются доказательством
  • Для находок cross-tenant/IDOR ответ должен содержать данные другого арендатора
  • Для находок по авторизации воспроизведение в режиме compare должно показать пересечение границы привилегий

Пример

Draft: IDOR in GET /api/users/42 — claimed to return user data for another tenant
Triage:
1. Replay GET /api/users/42 with original auth → 200, body: {"id": 42, "name": "Other User"}
2. Replay GET /api/users/42 with attacker auth → 200, body: {"id": 42, "name": "Other User"}
3. Both return the same user data → CONFIRMED cross-tenant access
4. → triage_vulnerability(id, status: "triaged")

Info

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