# AI IDE数据外传测试

> 测试AI IDE的数据外传能力。适用于评估Markdown图片渲染、Mermaid图表、 预配置URL拉取、模型提供方重定向、WebView渲染，及其他出站通道。

- Skill: `spindriftpapilio/ai-ide-3` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add spindriftpapilio/ai-ide-3`
- Raw SKILL.md: https://api.skillmd.com/api/skills/spindriftpapilio/ai-ide-3/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: spindriftpapilio (https://skillmd.com/u/spindriftpapilio)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/spindriftpapilio/ai-ide-3

---


# AI IDE数据外传测试

本skill重点讨论：**AI IDE或其Agent能不能把本地敏感数据发到外部**。

重点不只看有没有网络，还要看是否存在交互成本低、隐蔽、默认可用、容易被忽略的出站通道。

# 什么时候用

- 怀疑工具会主动抓取远程资源
- 工作区内容可能被渲染到WebView、Markdown、Mermaid、预览面板
- 目标支持自定义模型提供方、URL、Agent、图片资源
- 已确认存在提示词注入、文件读取或配置修改能力，想验证是否能形成完整外传链路

# 常用外传通道

- Markdown、HTML图片链接
- Mermaid、PlantUML、图表或预览组件的远程资源
- 预配置URL拉取器、链接展开器、远程文档读取器
- 自定义模型API地址、Agent地址、base URL
- DNS请求
- WebView、iframe、浏览器预览
- 日志上报、监测数据、错误报告等次级网络路径

# 核心判断点

1. **通道是否默认开启**
2. **是否需要用户点击或确认**
3. **能否把本地内容拼进请求**
4. **请求发生在谁的上下文里**
5. **是否能稳定复现并区分缓存影响**

# 测试步骤

1. **先确认出站面。** 列出所有可能触发HTTP、HTTPS、DNS或其他协议请求的组件。
2. **再确认注入面。**
   看攻击者能把什么数据送进这些组件：文本、文件内容、环境变量、配置项等。
3. **最小化验证请求。**
   先证明请求会出去，再证明请求可携带本地数据。
4. **区分自动与交互触发。**
   打开项目就出网，还是必须点预览、点渲染、发消息？
5. **识别缓存与一次性行为。**
   避免把浏览器缓存、IDE缓存误判为成功外传。

# 典型模式

## 1. 渲染型外传

在工作区中放入会被IDE渲染的内容，例如：
- Markdown图片
- Mermaid图
- HTML片段
- 可远程加载资源的预览格式

审查要点：打开文件、预览面板、消息渲染时是否自动出网。

2. 配置型外传通过配置项把请求导向攻击者控制的地址，例如：
- `OPENAI_BASE_URL`
- 自定义模型提供方
- Agent地址
- 图片、文档下载源

审查要点：配置是否可由工作区影响，是否无需显式批准。

3. 命令辅助型外传通过允许命令、DNS工具、下载器、浏览器命令等，把本地数据塞进出站请求。

审查要点：命令是否在下载流程中、参数是否可控、Shell展开是否可用。

# 与其他skill的衔接

- 和`提示词注入攻击链测试`搭配：验证能读到的数据是否能被送出去
- 和`终端过滤绕过测试`搭配：验证允许命令是否能变成外传通道
- 和`MCP配置投毒测试`、`AI IDE代码执行面测试`搭配：验证配置修改后是否形成长期外传

# 可优先参阅的资料

- `references/exfil-payloads.md`
- `references/url-fetching-configs.md`
- `references/known-vulns.md`

# 输出表述建议

最终宜明确说明：

- **通道名称**：是哪一个组件在出网
- **触发方式**：自动、发消息、预览、审批后、特定动作后
- **载荷方式**：本地数据怎么被编码进请求
- **终点地址**：请求发到哪里
- **影响范围**：能泄露哪些类型的数据
- **稳定性**：是否受缓存、平台、网络策略影响


