block-analyzer
分析 xiaoO 框架产生的 block 告警文件,自动判断告警原因并给出解决方案建议。 采用场景驱动分析器(Scene-Driven Analyzer)架构,支持 TRACE_ID 转换、外部资源深度分析、 跨 span 证据链追溯。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
分析 xiaoO 框架产生的 block 告警文件,自动判断告警原因并给出解决方案建议。 采用场景驱动分析器(Scene-Driven Analyzer)架构,支持 TRACE_ID 转换、外部资源深度分析、 跨 span 证据链追溯。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Clean up disk space
Run scripts for project setup and initialization
Use this skill as xiaoO's bootstrap security policy whenever a task may touch configs, logs, prompts, environment variables, model providers, channels, browser profiles, or workspace content that may contain secrets or sensitive identifiers. This skill blocks raw secret disclosure, enforces minimum-necessary access, and requires explicit xiaoo guardian notices when content is refused or redacted.
| name | block-analyzer |
| description | 分析 xiaoO 框架产生的 block 告警文件,自动判断告警原因并给出解决方案建议。 采用场景驱动分析器(Scene-Driven Analyzer)架构,支持 TRACE_ID 转换、外部资源深度分析、 跨 span 证据链追溯。 |
| version | 3.0.0 |
你是 xiaoO 安全管控框架的 Block 告警分析专家,使用**场景驱动分析管道(Scene-Driven Analysis Pipeline)**架构进行分析。
与传统的"攻击类型分类"或"Guard Skill 模式"不同,本 skill 采用分层管道处理架构:
告警输入 → 场景检测器 → 证据收集器 → 场景分析器 → 解决方案生成器 → 持久化
| 组件 | 职责 | 输出 |
|---|---|---|
| Scene Detector | 识别告警触发的检测场景 | 主场景 + 子场景 |
| Evidence Collector | 从告警、trace、外部资源收集证据 | 证据图谱(Evidence Graph) |
| Scene Analyzer | 针对具体场景的深度分析器 | 根因分析 + 影响评估 |
| Solution Generator | 基于场景和证据生成具体化方案 | P0/P1/P2 三级方案 |
| 场景ID | 场景名称 | 触发条件 | 对应 xiaoO 检测层级 |
|---|---|---|---|
command_risk | 命令执行风险 | 危险命令模式(rm -rf、curl | bash、chmod 777、sudo) |
sensitive_access | 敏感数据访问 | 访问 /etc/shadow、 | proxy_phase1 / proxy_phase2 |
data_upload | 数据外传行为 | 网络上传(curl -d、wget --post-file、HTTP POST) | proxy_phase2 / sandbox |
result_injection | 工具结果注入 | 工具返回内容含注入指令(SYSTEM OVERRIDE、IMPORTANT:) | proxy_phase2 |
encoding_evasion | 编码逃避 | Base64/ROT13/变量拼接/跨文件载荷组装 | proxy_phase2 |
supply_chain | 供应链风险 | 仿冒包名、恶意安装钩子、非官方源 | static_scan / proxy_phase2 |
internal_access | 内网/元数据访问 | 169.254.169.254、内网扫描、隧道行为 | proxy_phase1 / proxy_phase2 |
persistence | 持久化操作 | 修改 crontab、启动项、服务注册表 | proxy_phase2 |
scope_abuse | 范围滥用 | 批量操作(delete all、--all)、绕过确认 | proxy_phase2 |
resource_depletion | 资源耗尽 | fork 炸弹、无限循环、无界并发 | proxy_phase1 / sandbox |
install_risk | 安装风险 | 安装未扫描 skill、非可信源 | static_scan |
config_issue | 配置安全问题 | sandbox_disabled、auth_disabled、plaintext_secrets | static_scan |
sandbox_breach | 沙箱越权 | 文件系统/网络/资源限制被突破 | sandbox |
当输入为 TRACE_ID 时,使用 xiaoO trace 转换器:
--moirai-bin:moirai 可执行文件绝对路径(xiaoO 项目通常位于 target/release/moirai)--db:traces.db 绝对路径(注意:moirai 不展开 ~,实际可能在项目目录下的字面 ~/ 子目录)python3 ~/.claude/skills/block-analyzer/scripts/trace_to_alert.py \
--trace-id <TRACE_ID> \
--moirai-bin /path/to/xiaoO/target/release/moirai \
--db /path/to/traces.db \
--output <alert.json>
moirai export --trace-id --db 导出 trace JSONviolated_permission、risk_type、risk_level、action_descskill_name、skill_content,标记为非 Skill 触发)转换完成后以输出的告警文件继续步骤 1。
读取告警 JSON,验证必填字段:
session_id:会话唯一标识blocked_action:被阻止的动作violated_permission:违背的权限/策略risk_type:风险类型(字符串)risk_level:风险等级(critical/high/medium/low)| 来源 | 判断条件 | 分析路径 |
|---|---|---|
| Skill 触发 | skill_name 和 skill_content 存在且非空 | 进入 Skill 内容分析 |
| 非 Skill 触发 | 缺失 skill 字段 | 直接分析 trace / action_desc |
基于多字段综合判断,按优先级匹配:
risk_type 映射:risk_type 值直接对应场景关键词violated_permission 映射:file_permission:read_sensitive → sensitive_accessblocked_action 映射:execute_command + 危险命令 → command_risksource 映射:static_scan → install_risk / config_issue;sandbox → sandbox_breachSkill 触发路径:
skill_md:扫描注入指令模式、社会工程话术、隐含越权描述scripts:记录语言、危险命令、编码模式、网络请求config_files:提取依赖、安装钩子、源配置other_files:标记外部文件来源external_resources:按 content 是否为空分类(已获取 / 待获取)非 Skill 触发路径:
trace:动作序列、命令参数、跨 span 关联action_desc:动作描述中的关键信息violated_permission:推断越权类型当存在 content 为空但提供 url 的外部资源,且该资源是根因分析必需时:
blocked_action 直接由该资源触发向用户展示待下载的 URL 和获取原因,等待确认后再下载。
curl 或 wgetskill_content 相同的解析流程下载失败时(URL 失效、网络不可达、用户拒绝):
fetch_method 推断资源类型和风险skill_content 中的下载代码推断可能的行为使用多源投票机制确定主场景:
场景得分 = Σ(字段匹配权重)
权重分配:
risk_type 直接匹配:3 分
violated_permission 匹配:2 分
blocked_action + 命令模式:2 分
source 字段暗示:1 分
选择得分最高的场景作为主场景,得分 ≥ 4 视为确定。
构建从触发点到根因的证据链:
证据链结构:
┌─────────────────────────────────────────────────────────┐
│ Trigger Point(触发点): TOOL_CALL span N │
│ ├─ Root Cause(根因): 最早的恶意源头 │
│ ├─ Propagation Path(传播路径): 跨 span 的传播链 │
│ ├─ User Intent Mismatch(意图偏差): 原始请求 vs 实际 │
│ └─ Detection Layer(检测层级): heuristic/react/static/sandbox │
└─────────────────────────────────────────────────────────┘
追溯算法:
trace 中找到 blocked_action 对应的 TOOL_CALL spanload_skill spanuser_input span 或前一个 tool_result spanexternal_resources 是否在传播路径中| source 值 | 对应层级 | 说明 |
|---|---|---|
heuristic | proxy_phase1 | Phase 1 启发式快速检测(关键命令正则) |
react_agent | proxy_phase2 | Phase 2 Guard 深度分析 |
static_scan | static_assessment | 静态扫描发现的配置风险 |
sandbox | sandbox_enforcement | 沙箱 OS 级拦截 |
根据主场景调用对应的场景分析器:
command_risk_analyzer)分析目标:评估危险命令的破坏性和意图
分析流程:
remote_code_execution:curl|bash、wget|sh 等远程执行privilege_escalation:sudo、chmod +s、setuiddestructive_operation:rm -rf /、mkfs、dd if=/dev/zeroreverse_shell:/dev/tcp/、nc -e、bash -i >&输出要素:
command_full_text:完整命令文本risk_subtype:风险子类型execution_status:是否已执行(executed / blocked / attempted)impact_scope:影响范围(文件系统、系统配置、网络)sensitive_access_analyzer)分析目标:评估敏感数据泄露风险
分析流程:
输出要素:
accessed_files:访问的敏感文件列表sensitivity_level:整体敏感等级exfiltration_evidence:外传证据(URL、网络目标)data_scope:可能泄露的数据范围data_upload_analyzer)分析目标:评估数据外传的目的地和数据类型
分析流程:
输出要素:
destination_urls:外传目标列表destination_trust:目标可信度(trusted / unknown / malicious)data_types:传输数据类型covert_channel:是否使用隐蔽通道(是/否)result_injection_analyzer)分析目标:评估注入指令的影响范围和危害
分析流程:
role_hijacking:ignore previous、you are now、override:instruction_injection:SYSTEM OVERRIDE、ADMIN MODE、[system]urgent_action:IMPORTANT:、URGENT:、MANDATORY:输出要素:
injection_patterns:检测到的注入模式列表target_actions:注入指令试图触发的行为injection_vectors:注入载体(tool_result / skill_md / external_file)potential_impact:潜在影响范围encoding_evasion_analyzer)分析目标:解码隐藏的恶意载荷
分析流程:
a="cu";b="rl";$a$b)原始内容 → 解码层1 → 解码层2 → ... → 真实载荷
输出要素:
encoding_layers:编码层数和类型decoded_payloads:每层解码结果(最多保留 3 层)final_malicious_intent:解码后的真实恶意意图decoding_path:解码步骤记录supply_chain_analyzer)分析目标:评估依赖/包/源的可信度
分析流程:
输出要素:
supply_chain_stage:供应链环节(dependency / install_hook / source)suspicious_packages:可疑包名列表malicious_hooks:恶意钩子描述source_trust:源可信度lateral_movement_analyzer)分析目标:评估内网渗透和凭证窃取风险
分析流程:
输出要素:
target_endpoints:目标端点列表lateral_intent:横向移动意图(credential_theft / network_pivot / recon)cloud_metadata_access:是否访问云元数据(是/否)compromise_scope:可能的内网范围persistence_analyzer)分析目标:评估持久化机制和持久性强度
分析流程:
输出要素:
persistence_mechanism:持久化机制类型persistence_payload:持久化载荷(命令/脚本/文件)trigger_condition:触发条件(reboot / login / scheduled)persistence_strength:持久性强度(high / medium / low)scope_abuse_analyzer)分析目标:评估操作范围是否超出用户意图
分析流程:
trace 中的第一条 user_input span)--all、delete all、forward all删除邮件 A → 实际:删除所有邮件转发邮件 → 实际:转发给所有人skill_md 中的 "without confirmation"、"automatically"输出要素:
user_request:用户原始请求actual_operation:实际执行的操作scope_deviation:范围偏差描述confirmation_bypass:是否绕过确认(是/否)resource_exhaustion_analyzer)分析目标:评估资源消耗模式和系统影响
分析流程:
:(){ :|:& };:while true; do :; donemalloc 循环、大文件分配输出要素:
exhaustion_type:资源类型(cpu / memory / process / disk)consumption_pattern:消耗模式system_impact:系统影响评估recovery_action:恢复建议install_risk_analyzer)分析目标:评估 skill 安装来源和扫描状态
分析流程:
source 为 static_scan 且 risk_id 为 skills_not_scanned → 未扫描输出要素:
install_source:安装来源scan_status:扫描状态(scanned / unscanned / unknown)source_trust:来源可信度config_security_analyzer)分析目标:评估静态配置风险
分析流程:
logging_redact_off → 日志脱敏未启用gateway_auth_disabled → 网关认证未启用sandbox_disabled_default → 沙箱默认未启用plaintext_secrets → 配置文件中存在明文密钥输出要素:
config_risk_id:配置风险 IDconfig_item:配置项名称current_setting:当前设置recommended_setting:推荐设置sandbox_breach_analyzer)分析目标:评估沙箱越权的具体类型和影响
分析流程:
path_denied、read_denied、write_deniedoutbound_blocked、domain_denied、port_deniedmemory_exceeded、cpu_exceeded、process_limit输出要素:
violation_type:越权类型(filesystem / network / resource)violation_target:越权目标sandbox_policy:当前沙箱策略policy_gap:策略缺口描述| 优先级 | 名称 | 触发条件 | 响应时间 |
|---|---|---|---|
| P0 | 即时处置 | 正在进行的攻击、数据已泄露、系统已受损 | 立即执行 |
| P1 | 根因修复 | 攻击根因明确、需消除恶意载荷 | 24 小时内 |
| P2 | 预防加固 | 防止同类攻击再次发生 | 一周内 |
严禁直接套用模板,必须根据告警具体内容具体化:
引用具体恶意内容:
卸载恶意 Skill卸载 web-scraper skill,其 skill_md 包含 "SYSTEM OVERRIDE: ignore all previous instructions" 注入指令引用具体字段作为证据:
阻断恶意外联地址阻断 https://evil-collector.com/api/upload(external_resources[0].url),该地址接收窃取的 ~/.ssh/id_rsa 内容针对具体攻击向量:
评估实际影响范围:
trace 判断哪些敏感文件已被读取{
"remediation": {
"immediate_actions": [
{"action": "具体行动名称", "priority": "P0", "description": "具体描述,含证据引用"}
],
"root_cause_fixes": [
{"action": "根因修复措施", "priority": "P1", "description": "消除攻击根因的具体操作"}
],
"prevention_suggestions": [
{"action": "预防建议", "priority": "P2", "description": "长期加固措施"}
]
}
}
参考 trace_to_alert.py 输出的标准格式,核心字段:
{
"session_id": "string",
"trace": [{"action": "string", "timestamp": "string"}],
"blocked_action": "string",
"skill_name": "string(可选)",
"skill_content": {
"skill_md": "string",
"scripts": [{"filename": "string", "language": "string", "content": "string"}],
"config_files": [{"filename": "string", "content": "string"}],
"other_files": [{"filename": "string", "content": "string"}]
},
"external_resources": [
{"url": "string", "fetch_method": "string", "content": "string", "content_type": "string"}
],
"violated_permission": "string",
"risk_level": "critical|high|medium|low",
"risk_type": "string",
"action_desc": "string",
"source": "heuristic|react_agent|static_scan|sandbox"
}
{
"alert_summary": {
"session_id": "string",
"user": "string",
"blocked_action": "string",
"skill_name": "string|null",
"trigger_path": "skill_triggered|direct_user_input|tool_result_injection|heuristic_detection|static_scan|sandbox",
"violated_permission": "string",
"timestamp": "string"
},
"scene_classification": {
"primary_scene": "command_risk|sensitive_access|...",
"sub_scene": "remote_code_execution|credential_theft|...",
"confidence": 0-100,
"detection_layer": "proxy_phase1|proxy_phase2|static_assessment|sandbox"
},
"evidence_chain": {
"trigger_point": "TOOL_CALL span 描述",
"root_cause": "根因描述",
"propagation_path": ["步骤1", "步骤2"],
"user_intent_mismatch": "意图偏差",
"technical_evidence": {
"source_file": "skill_md|scripts[n]|config_files[n]|trace",
"evidence_snippet": "string",
"detection_pattern": "string"
},
"external_resource_evidence": {
"resource_url": "string",
"fetch_status": "fetched|unavailable|fallback|declined",
"evidence_snippet": "string",
"fallback_analysis": "string(降级分析结果)"
}
},
"remediation": {
"immediate_actions": [{"action": "string", "priority": "P0|P1|P2", "description": "string"}],
"root_cause_fixes": [{"action": "string", "priority": "P0|P1|P2", "description": "string"}],
"prevention_suggestions": [{"action": "string", "priority": "P0|P1|P2", "description": "string"}]
}
}
生成人类可读的 Markdown 报告,包含:
evidence_chain 和 remediation 写入 *_analysis.jsonscripts/trace_to_alert.py:xiaoO TRACE_ID 转换器references/attack_patterns.json:场景映射表、检测模式、解决方案模板