Token导航 LogoToken导航TokenDH.com
soctalk (Gbrigandi) logo
安全风控stdio官方级别未说明来源级核验

soctalk (Gbrigandi)

MCP Server

基于LLM的安全运营中心代理,可自主分类、调查和升级安全警报,适用于单租户和多租户部署。

工具数

4

提示词数

0

GitHub Stars

40

资源数

0
多租户Python安全

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

soctalk

提供方

soctalk

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

SocTalk

基于LLM的SOC代理,能够自主地对安全警报进行分类、调查和升级。

SocTalk Dashboard

通过MCP服务器和实时仪表板与Wazuh SIEM、Cortex、TheBive和MISP集成。

SocTalk可以作为单主机SOC工具运行,也可以作为MSP和MSSP的多租户平台运行。

单主机路径使用Docker Compose。一个SocTalk实例,一个Wazuh,一个仪表板。安装程序位于下面的“快速入门:单租户撰写”下。

多租户平台是面向MSSP的SocTalk形式。共享控制平面在Postgres中保存租户范围的状态,并在其自己的Kubernetes命名空间中为每个租户的SOC堆栈提供资源。现场设计和安装指南 docs/multi-tenant/;下面的“多租户部署”总结了形状。

多租户部署

MSSP Dashboard

多租户SocTalk是一个MSSP部署的控制平面。它在k3s或k8s上为每个客户租户提供和运行专用的OSS SOC堆栈。租户州位于Postgres,处于行级安全之下。每个租户的SOC堆栈都在自己的Kubernetes命名空间中运行,具有自己的LLM凭据和品牌。

两张海图。 soctalk-system 是控制平面。 soctalk-tenant 是控制器渲染和应用的每个客户的SOC堆栈。

完整的设计和操作材料寿命 docs/multi-tenant/,包括安全模型、图表审核、RLS卫生、入口、大小以及安装、runbook和升级指南。

快速入门:单租户组合

单一主机路径。将其用于评估、实验室工作或作为单个团队的SOC工具运行SocTalk。

Docker Compose

cp .env.example .env
docker compose up -d --build postgres api frontend

打开:

  • 仪表板:http://localhost:5173
  • API(OpenAPI):http://localhost:8000/docs
  • 健康:http://localhost:8000/health

启动编排器(用于端到端流):

docker compose up -d --build orchestrator
docker compose logs -f orchestrator

编排器映像将MCP服务器二进制文件捆绑在 /opt/mcp-servers/*.

本地开发

后端:

python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

cp .env.example .env
docker compose up -d postgres
alembic upgrade head

uvicorn soctalk.api.app:app --host 0.0.0.0 --port 8000 --env-file .env --reload

前端:

cd frontend
pnpm install
pnpm dev

开发人员助手在本地运行所有内容:

./scripts/run-dev.sh start

特性

  • 主管+专业人员 用于跨Wazuh、Cortex、MISP、TheWive进行路由/丰富
  • 两级法学硕士 (快速路由器+推理判断)与Anthropic或OpenAI兼容的提供商
  • Wazuh连续投票 具有相关性和优先级
  • 循环中的人类 批准(仪表板/Slack/CLI)
  • 活动来源+CQRS 用于可审计性和回放
  • 实时仪表盘 (SvelteKit+SSE)
  • 可配置的集成 通过设置UI(机密仅限于环境)

建筑

SocTalk分为三部分: 编排器 (LangGraph工作流),一个 API 它流式传输事件并公开REST,以及 仪表板 用于调查和人工审查。

高水位流量

  1. 摄入: 轮询Wazuh警报并关联到调查中。
  2. 调查: 主管将工作分配给MCP支持的工人(Wazuh/Cortex/MISP/TheHive)。
  3. 决定: 推理法学硕士产生判决;阈值选择自动关闭还是升级。
  4. 批准: 通过仪表板中断/恢复、Slack HIL或CLI回退进行人工审查。
  5. 法案: 在TheSive中创建案例/事件,并通过Slack webhook进行通知。
  6. 持久+流: 事件将转到Postgres(启用时);API通过SSE将更新流式传输到UI。

积木

  • LangGraph工作流程: 编码分类→ 富集→ 裁决→ 人工审核→ 回应。
  • MCP服务器(集成): mcp-server-wazuh, mcp-server-cortex, mcp-server-misp, mcp-server-thehive.
  • 集成解决方案: Wazuh(SIEM)、Cortex(分析)、MISP(威胁情报)、TheBive(案例/IR)。
  • 模拟代理: 容器化的Wazuh代理,执行MITRE ATT&CK风格的技术来生成逼真的警报。
  • 编排器(soctalk CLI): 运行轮询/相关性和LangGraph。
  • 持久性(Postgres): 事件存储+时间线、指标和仪表板的预测。
  • API(FastAPI)+仪表板(SvelteKit): REST、SSE事件流、指标、审核队列、设置。
  • 设置+秘密: 在UI中可编辑并存储在DB中的非秘密预选项;秘密留在env中。

工作流程图

SocTalk Workflow

配置

复制 .env.example.env 并设置您需要的内容。

法学硕士提供者(互斥)

  • SOCTALK_LLM_PROVIDER=anthropic + ANTHROPIC_API_KEY
  • SOCTALK_LLM_PROVIDER=openai + OPENAI_API_KEY (兼容OpenAI)
  • 可选: ANTHROPIC_BASE_URL, OPENAI_BASE_URL/OPENAI_API_BASE, OPENAI_ORGANIZATION
  • 型号/参数: SOCTALK_FAST_MODEL, SOCTALK_REASONING_MODEL, SOCTALK_LLM_TEMPERATURE, SOCTALK_LLM_MAX_TOKENS

集成(MCP)

  • 切换: WAZUH_ENABLED, CORTEX_ENABLED, THEHIVE_ENABLED, MISP_ENABLED
  • URL/非机密(用户界面可编辑): WAZUH_URL, CORTEX_URL/CORTEX_ENDPOINT, THEHIVE_URL, THEHIVE_ORGANISATION, MISP_URL, *_VERIFY_SSL
  • 机密(仅限于环境): WAZUH_API_USER/WAZUH_API_PASSWORD, CORTEX_API_KEY, THEHIVE_API_KEY/THEHIVE_API_TOKEN, MISP_API_KEY

通知

  • SLACK_ENABLED, SLACK_CHANNEL, SLACK_NOTIFY_ON_ESCALATION, SLACK_NOTIFY_ON_VERDICT
  • 机密(仅限env): SLACK_WEBHOOK_URL

MCP服务器二进制文件

编排器需要MCP服务器二进制文件与外部工具通信。

Docker(自动)

编排器映像在构建时从GitHub版本下载预构建的二进制文件,并将其安装到 /opt/mcp-servers/*.

本地开发

从源代码构建或手动下载二进制文件,然后在中设置路径 .env.

*从源代码构建(需要Rust):*

git clone https://github.com/gbrigandi/mcp-server-wazuh && cd mcp-server-wazuh && cargo build --release

*设置构建路径:*

WAZUH_MCP_SERVER_PATH=../mcp-server-wazuh/target/release/mcp-server-wazuh
CORTEX_MCP_SERVER_PATH=../mcp-server-cortex/target/release/mcp-server-cortex
THEHIVE_MCP_SERVER_PATH=../mcp-server-thehive/target/release/mcp-server-thehive
MISP_MCP_SERVER_PATH=../mcp-server-misp/target/release/mcp-server-misp

或者,设置 MCP_SERVERS_BASE_PATH 到一个包含所有四个二进制文件的目录。

轮询+阈值

  • SOCTALK_POLLING_INTERVAL, SOCTALK_MAX_ALERTS_PER_POLL, SOCTALK_BATCH_SIZE, SOCTALK_CORRELATION_WINDOW
  • SOCTALK_AUTO_CLOSE_THRESHOLD, SOCTALK_ESCALATION_THRESHOLD, SOCTALK_CRITICAL_SEVERITY

数据库/持久性

  • 启用: SOCTALK_DB_ENABLED=true
  • 网址: SOCTALK_DATABASE_URL
  • 运行迁移: alembic upgrade head

设置UI

  • 存储在数据库中的非秘密首选项并覆盖环境默认值(请参阅下面的首选项)。
  • SETTINGS_READONLY=true 禁用编辑/重置(建议用于生产)。

身份验证(可选)

  • AUTH_MODE=none|static|proxy
  • 静态用户: AUTH_USERS (建议使用pbkdf2_sha256)
  • 会议: AUTH_SESSION_SECRET, AUTH_SESSION_TTL_SECONDS, AUTH_COOKIE_SECURE

日志记录

  • SOCTALK_LOG_LEVEL, SOCTALK_LOG_FORMAT, RUST_LOG (适用于MCP服务器)

首选项(设置UI)

仪表板设置页面显示值的来源(环境与覆盖),并允许您编辑非秘密首选项。秘密存在于环境中。当编排器重新启动并重新加载设置时,更改将生效。

LLM

  • llm_provider: anthropicopenai (需要匹配的env API密钥;密钥是互斥的)。
  • llm_fast_model, llm_reasoning_model, llm_temperature (0–2), llm_max_tokens.
  • llm_anthropic_base_url (可选), llm_openai_base_url (可选), llm_openai_organization (可选)。

华住

  • wazuh_enabled, wazuh_url, wazuh_verify_ssl (仅用于凭据的env机密)。

皮质

  • cortex_enabled, cortex_url, cortex_verify_ssl (仅限于环境变量 CORTEX_API_KEY).

The Hive

  • thehive_enabled, thehive_url, thehive_organisation, thehive_verify_ssl (env-only API密钥/令牌)。

mist

  • misp_enabled, misp_url, misp_verify_ssl (env-only API密钥)。

Slack

  • slack_enabled, slack_channel, slack_notify_on_escalation, slack_notify_on_verdict (仅限于env的webhook URL)。

模拟代理(攻击模拟器)

linux-ep 该服务运行一个真正的Wazuh代理,该代理执行MITRE ATT&CK风格的技术,为测试产生高信号警报。

先决条件:

  • 端口上可访问的Wazuh管理器(代理注册+TCP) 15151514.
  • SocTalk配置为轮询Wazuh API(WAZUH_ENABLED=true 以及env中的凭据)。

部署和生成警报:

# start mock agent (testing profile)
docker compose --profile testing up -d --build linux-ep
docker compose logs -f linux-ep

# list available techniques
docker compose exec linux-ep /opt/scripts/run-attack.sh list
# run specific techniques (examples)
docker compose exec linux-ep /opt/scripts/run-attack.sh T1110.001    # brute-force auth log spam
docker compose exec linux-ep /opt/scripts/run-attack.sh T1059.SHELL # reverse-shell command traces
docker compose exec linux-ep /opt/scripts/run-attack.sh MALWARE     # ransomware-like artifacts

它如何引发可疑行为:

  • 将攻击痕迹写入syslog/auth日志(例如,SSH登录失败、反向shell命令)。
  • 在下创建或修改临时工件 /tmp/attack-artifacts 遵守FIM规则。
  • 定期/随机技术执行使警报量保持流动(可通过容器中的env/cron配置)。

仅在实验室中使用:容器以特权运行并故意产生噪音行为。

使用示例

# Print the LangGraph (mermaid)
soctalk --graph

# Run with a specific env file
soctalk --config .env

API快速检查:

curl http://localhost:8000/health
curl -N http://localhost:8000/api/events/stream

测试

后端:

pytest -m "not integration"

集成(Postgres):

docker compose -f docker-compose.test.yml up -d
pytest -m integration

前端:

cd frontend
pnpm check
pnpm test   # Playwright

更多文档

docs/multi-tenant/ 涵盖了多租户架构和操作,包括安全模型、图表审计、RLS卫生、入口、大小、安装、runbook和升级材料。

docs/multi-tenant/TROUBLESHOOTING.md 是修复多租户部署索引的症状。

许可证

Apache 2.0。看 LICENSENOTICE.

目录标签

目录标签

多租户Python安全安全运营本地部署LLM自动化调查SIEM集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

4

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP