Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
socbench — Открытая платформа и эталон для ИИ в операциях по кибербезопасности. | Kitploit
Инструменты/GitHubGitHub/deeptempo/socbench
Сетевая безопасностьРазведка угрозМашинное ОбучениеОбучение и ОбразованиеБезопасность ИИ
GitHubdeeptempo/socbench

socbench

Открытая платформа и эталон для ИИ в операциях по кибербезопасности.

Репозиторий
566415 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Сайт
Поделиться

socbench

Бенчмарк для проверки передовых рассуждающих LLM как агентов SOC на сырых данных NetFlow.

socbench тестирует передовые рассуждающие модели в качестве агентов SOC: каждая модель выполняет ограниченный многошаговый цикл агента над детерминированным, предварительно проиндексированным корпусом NetFlow, используя инструменты только для чтения, ограниченные по персоне, фиксированные долларовые лимиты на расследование и строгий контракт на вывод в формате JSON. Четыре персоны (SOC Analyst, Threat Analyst, Adversary Hunter, Detection Engineer) и три провайдера (OpenAI, Anthropic, Google) используют одни и те же единицы оценки, скоринговые объективы и поверхность для абляции, так что основные числа и дельты tools_off / playbooks_off напрямую сравнимы.

Репозиторий ориентирован на локальное использование. Ноутбука, трёх ключей API и образца parquet, добавленного в репозиторий, достаточно, чтобы воспроизвести smoke-тест в рамках бюджета в 10 долларов.

Статус

Альфа. Полный конвейер работает от начала до конца. Охваченные этапы разработки:

  • Шаг 1: скелет пакета, контракты, конфигурации, схема
  • Шаг 2: построитель индекса (socbench build-index) с детерминированными индексами по содержимому
  • Шаг 3: слой инструментов только для чтения с белым списком персон и построителем образцов
  • Шаг 4: персоны, плейбуки, композиция промптов + проверка запрещённых токенов
  • Шаг 5: адаптеры провайдеров (OpenAI / Anthropic / Gemini + всегда включённый mock) и многошаговый цикл агента с бюджетными лимитами и сводками стоимости/задержки
  • Шаг 6: скоринг (F1 на поток / на пару / на хост), стратифицированная выборка, агрегация абляций
  • Шаг 7: блокноты быстрого старта и исследования результатов; инструкции по воспроизведению в REPRODUCE.md
  • Вы можете запустить полный smoke-тест уже сегодня без ключей API с помощью mock-провайдера (см. Quickstart, шаг 3, или notebooks/quickstart.ipynb).

    Установка

    socbench распространяется как стандартный проект PEP 621 / hatchling. Любой из путей установки подходит.

    С помощью uv (рекомендуется для разработки)

    root@kitploit:~
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    git clone https://github.com/DeepTempo/socbench.git
    cd socbench
    
    uv venv --python 3.11
    source .venv/bin/activate
    uv pip install -e ".[dev,providers]"
    

    С помощью обычного pip

    root@kitploit:~
    git clone https://github.com/DeepTempo/socbench.git
    cd socbench
    
    python3.11 -m venv .venv
    source .venv/bin/activate
    pip install -e ".[dev,providers]"
    

    В любом случае, socbench --help теперь должен показывать список доступных подкоманд.

    Конфигурация

    ПоверхностьПо умолчаниюРасположение
    Параметры бенчмарка по умолчанию (семплирование, бюджеты агентов, провайдеры, матрица персона × инструменты)benchmark_config.yamlconfig/
    Каноническая схема NetFlow + псевдонимы нормализацииschema.jsonconfig/
    Снимок цен провайдеров (USD за 1M токенов)pricing.yamlconfig/
    Ключи API провайдеровпеременные окружения OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_API_KEYshell env

    config/benchmark_config.yaml содержит безопасные настройки по умолчанию: smoke cost_budget_usd: 10, полный cost_budget_usd: 900, фиксированный cost_usd_cap_per_rendering: 0.50. Пути внутри него, указывающие на соседние файлы конфигурации (schema_path, pricing_path), разрешаются относительно каталога самого YAML, поэтому переименование или перемещение config/ не требует изменений в коде.

    Быстрый старт

    1. Построение индекса по содержимому из набора данных parquet

    root@kitploit:~
    socbench build-index \
      --config config/benchmark_config.yaml \
      --dataset sample
    

    Это нормализует parquet в соответствии с config/schema.json, глобально сортирует по ts_start с детерминированным разрешением конфликтов, присваивает стабильные flow_id, извлекает оценочные единицы pair_timeline / host_egress, вычисляет сводки и записывает в indexes/<dataset_hash>/.

    Повторный запуск команды на тех же данных не даёт эффекта. Укажите --rebuild, чтобы принудительно перестроить.

    2. Исследование инструментального слоя

    root@kitploit:~
    socbench tools-smoke \
      --dataset-hash <dataset_hash> \
      --persona soc_analyst
    

    Это вызывает каждый инструмент из списка разрешённых для персоны против построенного индекса и выводит сводку без вызовов модели.

    3. Запуск бенчмарка

    root@kitploit:~
    # Free, deterministic, no API keys (the mock provider):
    socbench run --dataset-hash <dataset_hash> --providers mock --personas all
    
    # Real models (after `pip install -e ".[providers]"` + exporting API keys):
    socbench run --dataset-hash <dataset_hash> --providers all --personas all
    

    Выбор единиц по умолчанию осуществляет стратифицированную выборку, детерминированную в (dataset_hash, sample_seed, mode). Каждый рендеринг (unit × persona × provider) выполняет ограниченный многошаговый цикл агента; результаты сохраняются в runs/<run_id>/ с summary.json (сводки по скорингу, стоимости и кешу), eval_units_summary.jsonl, predictions_raw.jsonl, renderings.jsonl, tool_calls.jsonl и prompts_used/.

    4. Запуск абляций и агрегация дельт

    root@kitploit:~
    socbench run --dataset-hash <dataset_hash> --ablation tools_off --providers mock --personas all
    socbench aggregate --dataset-hash <dataset_hash>
    # → ablations/<dataset_hash>/<seed>/ablation_summary.json  (tools_off → main deltas)
    

    5. Исследование

    notebooks/quickstart.ipynb выполняет весь цикл (он синтезирует образец набора данных, поэтому ему не нужны прикреплённые данные) и строит графики F1 по персонам. notebooks/results_explorer.ipynb загружает любой runs/<run_id>/ и разрезает результаты по страту, персоне и провайдеру. Установите с помощью pip install -e ".[notebooks]".

    Расширение бенчмарка

    Каждый интерфейс, предназначенный для развития, — это реестр или ключ YAML:

    • Новый инструмент: поместите новый файл в src/socbench/tools/catalog/<name>.py с подклассом Tool, зарегистрируйте его в src/socbench/tools/catalog/__init__.py, добавив в ALL_TOOLS, затем добавьте его имя в соответствующие списки tools: персоны в config/benchmark_config.yaml. tools_manifest_sha изменяется автоматически. Имя файла, имя в YAML и запись в матрице соответствуют 1:1 по замыслу.
    • Новый тип оценочной единицы: добавьте назначитель в src/socbench/index.py и соответствующий Literal к EvalUnitType в src/socbench/models.py.
    • Новый адаптер провайдера: реализуйте ABC Adapter в новом файле src/socbench/providers/<name>_adapter.py, зарегистрируйте его в фабрике build_adapter в providers/base.py и добавьте запись в раздел providers: в config/benchmark_config.yaml. Цены указываются в config/pricing.yaml. Импорты SDK остаются ленивыми, чтобы зависимость была опциональной.
    • Новая персона: добавьте блок в раздел agent.personas: в config/benchmark_config.yaml с её бюджетом и белым списком tools:.
    • Новый скоринговый объектив: добавьте объектив в score_unit в src/socbench/scoring.py и соответствующее поле в EvalUnitSummary в models.py.
    • Новая абляция: расширьте обработку Ablation в prompts.py / agent.py и список тегов в aggregate.py.

    Методология

    Полная методология (оценочные единицы, матрица персона × инструменты, цикл агента, скоринг, модель стоимости, политика восстановления, семплирование, абляции, артефакты запуска) реализована в модульных файлах на уровне src/socbench/ (каждый файл содержит сфокусированную документацию модуля).

    Лицензия

    Apache-2.0. См. LICENSE.

    Скачать инструмент