使用说明
🛡️ MCP Boss——自主安全操作服务器
91个工具。 一个端点。用简单的英语与你的整个谷歌安全堆栈交谈。
MCP Boss允许任何AI模型(Gemini、Claude、GPT)通过 模型上下文协议.
快速开始
单线安装:
curl -sL https://raw.githubusercontent.com/dadohen/MCP-Boss/main/setup.sh | bash -s -- \
--project your-project-id \
--customer your-secops-customer-id \
--gti-key your-vt-api-key
或者从Google Cloud Shell进行部署:
Cloud Shell打开后,在终端中运行:
chmod +x setup.sh && ./setup.sh
向导将引导您完成项目ID、客户ID,并部署所有内容。
或者一步一步:
git clone https://github.com/dadohen/MCP-Boss.git
cd MCP-Boss && ./setup.sh
安装向导处理一切:API、服务帐户、IAM角色、容器构建、云运行部署和验证。
它做什么
你问了一个问题→ Gemini选择合适的工具→ 执行它们→ 跨多个来源的链结果→ 给你一份报告。没有点击UI,没有编写API调用,没有切换控制台。
例子: “在所有来源中寻找APT28” →
- 通过GTI/VirusTotal查找APT28威胁情报
- 在SIEM中搜索匹配的IOC
- 检查SCC是否存在与其TTP匹配的可利用漏洞
- 将所有来源的调查结果相关联
- 编制一份载有建议行动的执行摘要
全自动,一个请求中最多可调用20个链式工具。
基准
首次在实时Cloud run部署上进行基准测试(2026-04-22,gemini-2.5-flash,6种场景):
| 度量 | 值 |
|---|---|
| correct_verdict_pct | 83.3%(5/6种情况) |
| 正确控制 | 13.9% |
| destructive_fp_rate_pct | 0.0% |
| 中位数_警报_控制 | 60.87 |
完整的记分卡、场景和原始工具跟踪在 eval_harness/ (scorecard-2026-04-22.md, results.json).随时重新运行 ./eval_harness/run.sh这一类别中没有其他人可信地公布这些数字;这就是重点。
建筑
┌──────────────────────────────────────────────────────────────┐
│ USER INTERFACES │
│ Web UI · Gemini CLI · Claude Desktop · Mobile App │
└──────────────────────┬───────────────────────────────────────┘
│
┌────────────┴────────────┐
│ /api/chat (Web UI) │ ← Multi-turn orchestration
│ /mcp (Gemini CLI) │ ← Streamable HTTP
│ /sse (Claude/MCP) │ ← SSE transport
└────────────┬────────────┘
│
┌──────────────────────▼───────────────────────────────────────┐
│ MCP Boss Server (Cloud Run) │
│ 89 Tools · Python · FastMCP · Serverless │
│ │
│ 🔍 Discovery 🧠 Intel 🛡️ Detection 📂 SOAR │
│ ├─ SCC ├─ GTI/VT ├─ YARA-L ├─ Cases │
│ ├─ Cloud Log ├─ Malware ├─ Rules ├─ Playbooks│
│ ├─ UDM Search ├─ Actors ├─ Alerts ├─ Actions │
│ ├─ Ingestion └─ Vertex AI └─ Data Tables └─ Metrics │
│ │
│ 📧 Containment ☁️ Cloud 📊 Analytics │
│ ├─ O365 Purge ├─ AWS Keys ├─ BigQuery │
│ ├─ Okta ├─ GCP SA ├─ MTTx Metrics │
│ ├─ Azure AD ├─ STS Revoke ├─ Audit Logs │
│ └─ CrowdStrike └─ IAM Review └─ Cloud Monitoring │
└──────────────────────────────────────────────────────────────┘
│
┌────────────┴────────────┐
│ Google Cloud APIs │
│ Chronicle · SCC · GTI │
│ Vertex AI · BigQuery │
│ Cloud Logging · IAM │
│ Cloud Monitoring │
└─────────────────────────┘
零嵌入秘密。 所有Google API身份验证都使用工作负载身份联合身份验证(应用程序默认凭据)。Cloud Run服务帐户会自动进行身份验证。第三方遏制API(Okta、AWS、Azure AD、CrowdStrike、O365)使用由Secret Manager支持的环境变量。
安全
MCP Boss处理敏感的安全数据。以下是如何将其锁定。
认证关闭等于政策关闭。 当
OAUTH_CLIENT_ID未设置,内置身份验证中间件无操作,审批角色签入/api/approvals/*/decide回退到允许所有路径,以便开发工作流继续工作。这意味着部署时没有OAUTH_CLIENT_ID没有强制执行:任何拥有网络覆盖范围的人都可以批准任何破坏性的工具调用。任何非开发部署都必须设置OAUTH_CLIENT_ID(并填充ROLE_MAP_JSON或ROLE_MAP_PATH).看auth_middleware.py和deploy/multi_tenant/README.md.如果出现以下情况,Boot将拒绝启动
LOCAL_DEV_ALL_ROLES=1未设置OAUTH_CLIENT_ID除非你也设置MCP_BOSS_ENV=dev。该组合授予每个呼叫者每个审批者角色。MCP传输(stdio/SSE)会话工具(
create_session,get_session,update_session,add_note)仍然在单个租户下运行,因为这些传输不携带HTTP标识。在基础层限制MCP传输访问(Cloud Run IAM调用程序在/mcp和/sse).
选项1:IAM身份验证(推荐)
删除公共访问并要求Google Cloud IAM身份验证:
# Remove unauthenticated access
gcloud run services remove-iam-policy-binding mcp-boss \
--member="allUsers" \
--role="roles/run.invoker" \
--project=$PROJECT_ID \
--region=us-central1
# Grant access to specific users only
gcloud run services add-iam-policy-binding mcp-boss \
--member="user:analyst@yourcompany.com" \
--role="roles/run.invoker" \
--project=$PROJECT_ID \
--region=us-central1
# Grant access to a Google Group (for SOC team)
gcloud run services add-iam-policy-binding mcp-boss \
--member="group:soc-team@yourcompany.com" \
--role="roles/run.invoker" \
--project=$PROJECT_ID \
--region=us-central1
锁定后如何访问:
# From browser — use Cloud Run Proxy:
gcloud run services proxy mcp-boss --project=$PROJECT_ID --region=us-central1
# Opens http://localhost:8080 → authenticated tunnel to your service
# From curl/API:
TOKEN=$(gcloud auth print-identity-token)
curl -H "Authorization: Bearer $TOKEN" https://YOUR-SERVICE-URL/health
# From Gemini CLI:
TOKEN=$(gcloud auth print-identity-token)
gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp --headers "Authorization=Bearer $TOKEN"
选项2:仅VPC(内部网络)
仅限于您的VPC——完全没有公共互联网接入:
gcloud run services update mcp-boss \
--ingress=internal \
--project=$PROJECT_ID \
--region=us-central1
只能从VPC、VPN或云互连中访问。
如何访问:
# From your local machine via Cloud Run Proxy (tunnels through IAM):
gcloud run services proxy mcp-boss --project=$PROJECT_ID --region=us-central1
# Opens http://localhost:8080 locally
# Or from a GCE VM / GKE pod inside the VPC:
curl https://YOUR-SERVICE-URL/health
选项3:IAP(身份感知代理)
将Cloud IAP放在前面,以便与您的企业身份提供商进行基于浏览器的SSO:
# Enable IAP on the Cloud Run service
gcloud iap web enable \
--resource-type=cloud-run \
--service=mcp-boss \
--project=$PROJECT_ID
# Grant access to your SOC team
gcloud iap web add-iam-policy-binding \
--resource-type=cloud-run \
--service=mcp-boss \
--member="group:soc-team@yourcompany.com" \
--role="roles/iap.httpsResourceAccessor" \
--project=$PROJECT_ID
用户在到达Web UI之前,浏览器中会出现谷歌登录提示。无需更改代码——IAP处理一切。
如何访问: 只需在浏览器中打开URL即可。IAP显示了一个谷歌登录页面。登录后,您将进入Web UI。
选项4:API密钥头
为了快速保护,请设置API密钥环境变量并在请求中验证:
gcloud run services update mcp-boss \
--set-env-vars="MCP_BOSS_API_KEY=your-secret-key-here" \
--project=$PROJECT_ID \
--region=us-central1
如何访问:
# curl:
curl -H "X-API-Key: your-secret-key-here" https://YOUR-SERVICE-URL/health
# Gemini CLI:
gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp --headers "X-API-Key=your-secret-key-here"
# Web UI: Add ?key=your-secret-key-here to the URL
# Or the Web UI will prompt for it on first load
当以下情况发生时,服务器会自动验证 MCP_BOSS_API_KEY 已设置。
安全最佳实践
| 练习 | 如何 |
|---|---|
| 无公共访问 | 删除 allUsers 调用程序绑定 |
| 最低特权SA | 使用专用 mcp-boss 服务帐户,而非默认计算SA |
| 秘密经理 | 将API密钥(GTI、Okta、AWS等)存储在Secret Manager中,而不是env vars中 |
| 审核日志记录 | Cloud Run请求日志是自动生成的;启用数据访问审核日志 |
| VPC SC | 将项目放置在VPC服务控制外围 |
| 遏制批准 | 内置:请参阅下面的“身份验证和批准” |
| 网络 | 使用 --ingress=internal +用于生产的云VPN/互连 |
身份验证和批准
位于Cloud Run IAM之上的应用程序级控件。默认情况下,它们都是关闭的;使用env变量选择加入。
身份验证(Google ID令牌)
集 OAUTH_CLIENT_ID 服务器拒绝任何没有有效Google OIDC ID令牌的请求 aud 比赛。
| 变量 | 目的 |
|---|---|
OAUTH_CLIENT_ID |
主要观众。通常您的浏览器流OAuth 2.0客户端ID |
OAUTH_ADDITIONAL_AUDIENCES |
逗号分隔额外接受的受众。添加服务URL或 32555940559.apps.googleusercontent.com (gcloud默认客户端)用于服务器到服务器的CI调用。 |
ALLOWED_EMAILS |
可选逗号分隔的列表。如果设置,则不在列表中的已验证电子邮件将被拒绝。 |
AUTH_EXEMPT_PATHS |
绕过身份验证的逗号分隔路径前缀(默认 /health,/static). |
当 OAUTH_CLIENT_ID 如果未设置,则中间件为无操作:auth已禁用,主体为 local,每个角色检查都通过。请勿将此配置发布到本地开发之外。如果出现以下情况,服务器将拒绝启动 LOCAL_DEV_ALL_ROLES=1 未设置任何一个 OAUTH_CLIENT_ID 或 MCP_BOSS_ENV=dev.
角色映射和审批人组
policy_and_approvals/policies.yaml 将每个破坏性工具(主机隔离、密钥撤销、电子邮件清除等)映射到一个或多个审批者角色名称。要授权呼叫者,请将他们的电子邮件映射到角色集。
| 变量 | 格式 |
|---|---|
ROLE_MAP_JSON |
内联JSON: {"alice@co.com":["security-oncall"], "@co.com":["soc-manager"]} |
ROLE_MAP_PATH |
YAML文件的路径: roles: {alice@co.com: [security-oncall]} |
默认情况下识别的审批人角色名称 policies.yaml: security-oncall, soc-manager, identity-team, cloud-platform, detection-engineering, legal, security-leadership.
审批工作流程
- 编排器想要调用门控工具(例如。
isolate_crowdstrike_host). - 政策关卡检查
policies.yaml.如果require_approval,它将工具调用冻结为ApprovalRequest. - 批准通过任何配置的频道进行广播:
/api/approvals(网络用户界面),谷歌聊天卡(GOOGLE_CHAT_WEBHOOK_URL),通用webhook(APPROVAL_WEBHOOK_URL). - 审批人点击
POST /api/approvals/{id}/decide和approve/deny除非经过身份验证的呼叫者的角色与规则的角色相交,否则服务器403sapprover_groups.decided_by会反弹到经过身份验证的电子邮件,因此审计跟踪不会被欺骗。 - 批准后,工具将执行。每个状态转换都会记录在哈希链审计日志中。
随时通过以下方式验证链条 GET /api/audit/verify:
{"chain_intact": true, "broken_at_seq": null, "audit_path": "/var/log/mcp-boss/audit.jsonl"}
租户隔离
SessionMemory 由(经过身份验证的主体,session_id)键入。同一Cloud Run实例上的两个用户即使猜测会话ID,也无法读取彼此的调查历史记录。MCP传输会话工具(stdio/SSE)使用不同的 mcp-transport 名称空间;在底层传输的网关(Cloud Run IAM调用程序在 /mcp 和 /sse).
输出编辑(DLP)
集 ENABLE_OUTPUT_REDACTION=1 并且在每个工具结果流回到LLM或API响应之前对其进行扫描。Luhn-checked CC number,SSN-looking string(with IP/date guard),PEM私钥,AWS访问密钥,JWT,and labeled API密钥(GTI,Okta,CrowdStrike,Azure AD,O365, api_key, bearer_token, client_secret, access_token)被替换为 [REDACTED:<type>]审计日志记录了未编辑的内容;只有跨越工具到LLM边界的内容才会被净化。
运营
日常使用
- Web用户界面 --浏览到Cloud Run URL,使用Google登录。粘贴提醒或提问。
- Gemini CLI —
gemini --tool-endpoint https://YOUR-URL/mcp --headers "Authorization=Bearer $(gcloud auth print-identity-token)". - 克劳德桌面 --添加
/sseURL到claude_desktop_config.json(请参阅连接部分)。
每个请求都会生成一个聊天记录(在web UI中)、一个完整的工具跟踪(在Cloud Logging中)以及任何门控工具调用的审计记录。
基准/回归
export MCP_URL=https://YOUR-SERVICE-URL
export MCP_ID_TOKEN=$(gcloud auth print-identity-token)
./eval_harness/run.sh
生产 scorecard.md (标题数字)和 results.json (每个场景的原始工具跟踪)。将其连接到CI,如果出现以下情况,则构建失败 destructive_fp_rate_pct > 0 或者判决准确性下降。
审计日志导出
记录为JSONL格式 $MCP_BOSS_AUDIT_PATH (默认值 /var/log/mcp-boss/audit.jsonl,回落到 ~/.mcp-boss/audit.jsonl)并在日志名称下镜像到Cloud Logging mcp-boss-audit将BigQuery接收器指向Cloud Logging流,以实现长期保留和SIEM摄取。
多租户安装
deploy/multi_tenant/install.sh 跑 terraform apply 在一个命令中使用Artifact Registry、Secret Manager存根、Cloud Run v2和IAM绑定。通过 --oauth-client-id, --allowed-emails, --role-map-json,以及 --enable-redaction 在部署时设置完整的auth配置。
手动设置指南
如果您更喜欢手动设置而不是使用 setup.sh:
先决条件
- 启用计费的Google Cloud项目
gcloudCLI已安装并经过身份验证- 具有客户ID的Chronicle/SecOps实例
步骤1:启用API
PROJECT_ID=your-project-id
gcloud services enable \
run.googleapis.com \
cloudbuild.googleapis.com \
chronicle.googleapis.com \
securitycenter.googleapis.com \
aiplatform.googleapis.com \
logging.googleapis.com \
bigquery.googleapis.com \
monitoring.googleapis.com \
iam.googleapis.com \
cloudresourcemanager.googleapis.com \
--project=$PROJECT_ID
步骤2:创建服务帐户并授予IAM角色
SA_NAME=mcp-boss
SA_EMAIL="${SA_NAME}@${PROJECT_ID}.iam.gserviceaccount.com"
# Create the service account
gcloud iam service-accounts create $SA_NAME \
--display-name="MCP Boss Service Account" \
--project=$PROJECT_ID
# Grant required roles
ROLES=(
roles/chronicle.admin
roles/securitycenter.findingsViewer
roles/aiplatform.user
roles/logging.viewer
roles/bigquery.dataViewer
roles/bigquery.jobUser
roles/monitoring.viewer
roles/iam.securityReviewer
)
for ROLE in "${ROLES[@]}"; do
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member="serviceAccount:${SA_EMAIL}" \
--role="$ROLE" --quiet
done
IAM角色参考
| 角色 | 它能实现什么 | 必填项? |
|---|---|---|
roles/chronicle.admin |
UDM搜索、规则、案例、检测、数据表、提要、解析器、警报 | ✅ 是的 |
roles/securitycenter.findingsViewer |
SCC漏洞发现、配置错误 | ✅ 是的 |
roles/aiplatform.user |
Vertex AI Gemini——威胁分析、调查报告 | ✅ 是的 |
roles/logging.viewer |
云审计日志查询 | ✅ 是的 |
roles/bigquery.dataViewer |
BigQuery安全数据湖读取 | ✅ 是的 |
roles/bigquery.jobUser |
BigQuery SQL执行 | ✅ 是的 |
roles/monitoring.viewer |
云监控——摄入带宽统计数据 | ✅ 是的 |
roles/iam.securityReviewer |
IAM政策和服务帐户审计 | ✅ 是的 |
roles/iam.serviceAccountKeyAdmin |
GCP遏制:撤销SA密钥 | ⚙️ 可选 |
roles/storage.admin |
云构建部署访问权限 | ⚙️ 仅部署 |
步骤3:构建和部署
# Build
gcloud builds submit \
--project=$PROJECT_ID \
--tag gcr.io/$PROJECT_ID/mcp-boss:latest
# Deploy
gcloud run deploy mcp-boss \
--image gcr.io/$PROJECT_ID/mcp-boss:latest \
--project=$PROJECT_ID \
--region=us-central1 \
--platform=managed \
--service-account=$SA_EMAIL \
--allow-unauthenticated \
--memory=512Mi \
--timeout=300 \
--set-env-vars="SECOPS_PROJECT_ID=$PROJECT_ID,SECOPS_CUSTOMER_ID=YOUR_CUSTOMER_ID,SECOPS_REGION=us,GTI_API_KEY=YOUR_VT_KEY"
步骤4:验证
curl https://YOUR-SERVICE-URL/health
# {"status":"healthy","tools":89,...}
步骤5:连接
Web用户界面: 在浏览器中打开您的Cloud Run URL。
Gemini CLI:
gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp
克劳德桌面 (claude_desktop_config.json):
{
"mcpServers": {
"mcp-boss": {
"url": "https://YOUR-SERVICE-URL/sse"
}
}
}
环境变量
必需
| 变量 | 描述 |
|---|---|
SECOPS_PROJECT_ID |
您的GCP项目ID |
SECOPS_CUSTOMER_ID |
Chronicle/SecOps客户ID(来自Chronicle设置) |
SECOPS_REGION |
us, eu,或 asia |
推荐
| 变量 | 描述 |
|---|---|
GTI_API_KEY |
VirusTotal/Google Threat Intelligence API密钥 |
认证
| 变量 | 描述 |
|---|---|
OAUTH_CLIENT_ID |
Google OAuth 2.0客户端ID。设置后,每个请求都必须提供一个有效的ID令牌,其 aud 比赛。Unset=身份验证已禁用(仅限开发人员)。 |
OAUTH_ADDITIONAL_AUDIENCES |
逗号分隔额外接受的受众。添加服务URL或 32555940559.apps.googleusercontent.com 用于服务器到服务器/CI |
ALLOWED_EMAILS |
逗号分隔的已验证电子邮件列表。如果设置,其他电子邮件将被拒绝。 |
ROLE_MAP_JSON |
内联JSON映射电子邮件或 @domain 到审批人角色列表。 |
ROLE_MAP_PATH |
YAML文件 roles: 块。形状与 ROLE_MAP_JSON. |
AUTH_EXEMPT_PATHS |
绕过身份验证的路径前缀(默认 /health,/static). |
LOCAL_DEV_ALL_ROLES |
1 授予每个呼叫者每个审批者角色。需要 MCP_BOSS_ENV=dev;否则服务器拒绝启动。 |
MCP_BOSS_ENV |
操作员声明。设置为 dev 在开发机器上允许 LOCAL_DEV_ALL_ROLES=1. |
运营
| 变量 | 描述 |
|---|---|
ENABLE_OUTPUT_REDACTION |
1 启用DLP传递工具结果,然后再将其传递给LLM。默认情况下为关闭。 |
MCP_BOSS_AUDIT_PATH |
JSONL审核日志路径(默认 /var/log/mcp-boss/audit.jsonl,回落到 ~/.mcp-boss/audit.jsonl). |
GOOGLE_CHAT_WEBHOOK_URL |
用于审批卡的Google Chat webhook。 |
APPROVAL_WEBHOOK_URL |
用于审批通知的通用webhook。 |
PUBLIC_BASE_URL |
在审批通知中构建链接时使用的公共URL。 |
GEMINI_MODEL |
Gemini编排模型(默认 gemini-2.5-flash). |
可选——第三方遏制
| 变量 | 描述 |
|---|---|
O365_TENANT_ID, O365_CLIENT_ID, O365_CLIENT_SECRET |
Microsoft Graph--电子邮件清除 |
OKTA_DOMAIN, OKTA_API_TOKEN |
Okta--用户暂停 |
AZURE_AD_TENANT_ID, AZURE_AD_CLIENT_ID, AZURE_AD_CLIENT_SECRET |
Azure AD--会话吊销 |
SOAR_AWS_KEY, SOAR_AWS_SECRET |
AWS——IAM密钥撤销 |
CROWDSTRIKE_CLIENT_ID, CROWDSTRIKE_CLIENT_SECRET |
CrowdStrike--主机隔离 |
任何敏感的环境变量都可以接受 sm://PROJECT/SECRET_NAME 代替明文值。这 secrets_resolver 该模块在启动时透明地从Google Secret Manager获取最新版本。
全部91个工具
🔍 探索与狩猎(12个工具)
| 工具 | 说明 |
|---|---|
get_scc_findings |
按严重程度获取活动SCC漏洞 |
top_vulnerability_findings |
按严重程度排序的SCC发现 |
get_finding_remediation |
SCC发现的补救指南 |
query_cloud_logging |
查询云审计日志 |
search_secops_udm |
编年史UDM搜索(YARA-L或现场查询) |
search_security_events |
按类型和时间范围搜索安全事件 |
list_secops_detections |
所有检测——自定义规则+精心策划的规则+案例 |
get_security_alerts |
最近的安全警报 |
check_ingestion_health |
未解析日志检测/解析器故障 |
lookup_entity |
Chronicle中的实体上下文查找 |
get_last_logins |
最近的登录事件 |
get_last_detections |
最近的检测警报 |
🧠 威胁情报(6种工具)
| 工具 | 说明 |
|---|---|
enrich_indicator |
通过GTI/VirusTotal丰富IP/域/哈希/URL |
get_ip_report |
详细的IP报告 |
get_domain_report |
详细的域报告 |
get_file_report |
详细的文件哈希报告 |
search_threat_actors |
威胁参与者档案(APT组) |
search_malware_families |
恶意软件家族档案 |
🛡️ 检测工程(8个工具)
| 工具 | 说明 |
|---|---|
list_rules |
列出所有YARA-L规则 |
create_rule |
创建YARA-L 2.0规则 |
get_rule |
按ID获取规则详细信息 |
toggle_rule |
启用/禁用规则 |
list_rule_errors |
规则编译/执行错误 |
create_detection_rule_for_scc_finding |
根据SCC查找自动生成YARA-L |
extract_iocs_from_detections |
从检测中批量提取IOC |
vertex_ai_investigate |
双子动力威胁分析 |
📋 数据表(3个工具)
| 工具 | 说明 |
|---|---|
list_data_tables |
列出所有数据表 |
get_data_table |
读取表格内容 |
update_data_table |
写入/更新行 |
📂 SOAR案例(17个工具)
| 工具 | 说明 |
|---|---|
list_cases / secops_list_cases |
列出案例 |
get_last_cases |
近期案例总结 |
secops_get_case |
完整病例报告 --实体、MITRE、哈希、进程、检测 |
secops_update_case |
更新优先级、状态、描述 |
get_case_alerts / secops_list_case_alerts |
案件警报 |
secops_get_case_alert |
警报详细信息 |
secops_update_case_alert |
更新警报 |
add_case_comment / secops_create_case_comment |
添加评论 |
secops_list_case_comments |
列出评论 |
get_case_overview |
统计数据和优先级细分 |
update_case_priority |
更改优先级 |
close_case |
以理性结束 |
secops_execute_bulk_close_case |
批量关闭 |
secops_execute_manual_action |
执行SOAR操作 |
🎭 SOAR播放手册(6个工具)
| 工具 | 说明 |
|---|---|
list_playbooks |
列出剧本 |
get_playbook |
剧本详细信息 |
create_playbook |
创建剧本 |
create_containment_playbook |
自动生成遏制行动手册 |
export_playbook_template |
导出为模板 |
clone_playbook |
复制现有剧本 |
🔒 围堵(7个工具)
| 工具 | 说明 |
|---|---|
purge_email_o365 |
从O365邮箱中删除电子邮件 |
suspend_okta_user |
暂停+清除Okta会话 |
revoke_azure_ad_sessions |
撤销Azure AD/Entra ID会话 |
revoke_aws_access_keys |
禁用AWS IAM密钥 |
revoke_aws_sts_sessions |
拒绝STS担任角色会话 |
revoke_gcp_sa_keys |
删除GCP服务帐户密钥 |
isolate_crowdstrike_host |
通过CrowdStrike进行网络隔离 |
📊 记录和监控(6个工具)
| 工具 | 说明 |
|---|---|
list_log_names |
可用日志名称 |
list_log_entries |
使用过滤器记录条目 |
list_log_buckets |
测井桶 |
get_log_bucket |
铲斗详细信息 |
list_log_views |
日志视图 |
query_ingestion_stats |
每日摄取带宽(GB) 来自云监控 |
🔧 SecOps管理员(7个工具)
| 工具 | 说明 |
|---|---|
list_parsers |
分析器/日志类型 |
validate_parser |
根据原始日志测试解析器 |
list_feeds |
摄食饲料 |
get_feed |
订阅源详细信息 |
list_data_access_labels |
数据访问标签 |
list_data_access_scopes |
数据访问范围 |
query_secops_audit_logs |
平台审核日志 |
📊 分析(5个工具)
| 工具 | 说明 |
|---|---|
get_mttx_metrics |
MTTR/MTC响应指标 |
bigquery_list_dataset_ids |
BigQuery数据集 |
bigquery_list_table_ids |
数据集中的表 |
bigquery_get_dataset_info / bigquery_get_table_info |
元数据 |
bigquery_execute_sql |
执行SQL |
🔑 IAM(3个工具)
| 工具 | 说明 |
|---|---|
get_iam_policy |
完整的项目IAM政策 |
get_service_accounts |
列出带有密钥计数的SA |
check_iam_permissions |
检查特定用户/SA的角色 |
🧠 会话和调查(5个工具)
| 工具 | 说明 |
|---|---|
create_session |
创建调查会话 |
get_session |
检索会话状态 |
set_session_context |
更新会话上下文 |
add_investigation_note |
带时间戳的调查记录 |
autonomous_investigate |
旗舰: 端到端管道——丰富→ hunt → 评估→ 检测→ 回应→ 报告 |
API终点
| 端点 | 传输 | 客户端 |
|---|---|---|
GET / |
HTTP | Web UI(内置聊天) |
GET /health |
HTTP | 健康检查(免于身份验证) |
GET /api/tools |
HTTP | 工具列表 |
POST /api/chat |
HTTP | 多回合编排(Web UI) |
GET /sse |
SSE | 克劳德桌面/MCP客户端 |
POST /messages/ |
HTTP | SSE消息处理程序 |
POST /mcp |
流式HTTP | Gemini CLI |
GET /api/approvals |
HTTP | 列出审批请求(使用筛选 ?state=pending) |
GET /api/approvals/{id} |
HTTP | 获取特定批准 |
POST /api/approvals/{id}/decide |
HTTP | 批准或拒绝(调用者角色必须与规则的审批者组相交) |
GET /api/audit/verify |
HTTP | 验证哈希链审核日志是否完整 |
作者
大卫·阿登 --谷歌安全行动/谷歌威胁情报
