# AI IDE攻击链编排

> 规划并串联面向AI IDE的多阶段攻击链。适用于把单点漏洞能力组合成 端到端利用路径、评估整体安全姿态，或分析各个漏洞如何经由文件写入 这个枢纽连接起来。每条链都按交互层级分类，便于优先挑选更容易形成 报告价值的发现。

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

---


# AI IDE攻击链编排

单个漏洞原语未必足够严重。真正影响风险等级的，是它能不能和其他能力串成一条链。

例如：提示词注入单独看也许只是中低危，但如果再叠加文件写入、配置自动加载、命令执行或数据外传，就可能直接升级成高危甚至关键问题。

这个skill用来把已经确认的原语整理成完整攻击链，判断触发条件、交互层级、真实影响和报告价值。

# 什么时候用

- 已经通过其他专项skill证实了若干原语之后
- 需要把零散发现整合成端到端利用链时
- 需要判断某个发现到底是单点问题还是可升级成完整利用时
- 写漏洞报告、PoC、风险评估结论时

# 使用前提

至少先确认两类原语，不要在只有一个点成立时强行拼链。

常用原语与对应skill：

- 提示词注入、文件写入：`提示词注入攻击链测试`
- MCP配置投毒：`MCP配置投毒测试`
- 终端过滤绕过、命令执行：`终端过滤绕过测试`
- 外传通道：`AI IDE数据外传测试`
- Hook、设置、自动执行：`AI IDE代码执行面测试`
- 审批模型TOCTOU：`AI IDE代码执行面测试`、`MCP配置投毒测试`

# 交互层级

所有攻击链都按触发所需的用户参与程度分类，建议先审查层级更低的链。

|层级|名称|触发方式|报告价值|
|---|---|---|---|
|Tier 1|零交互|用户克隆并打开仓库即可触发|最高|
|Tier 2|Agent驱动|用户正常发一条消息或提一个问题|很高|
|Tier 3|需审批|用户必须点击Trust / Allow / Approve|中等，取决于提示是否误导|
|Tier 4|已信任+特定动作|用户已信任项目，且还要执行特定操作|单独评估时说服力较弱，但和TOCTOU、范围逃逸结合后仍有价值|

# 常用攻击链模板

## 1. 零交互配置链

`恶意配置已存在 ->IDE打开工作区 ->自动加载 ->代码执行`

适合验证：
- MCP配置自动加载
- Hook、设置自动执行
- 启动阶段无审批

## 2. 提示词注入到文件写入再到持久化

`恶意指令进入上下文 ->Agent代写配置或规则文件 ->新配置自动生效`

适合验证：
- Agent是否会替攻击者改写配置
- 改写是否能跨会话持续生效
- 后续是否还能触发命令执行或更高权限行为

## 3. 提示词注入到终端执行

`提示词注入 ->Agent生成终端命令 ->过滤器绕过 ->执行敏感命令`

适合验证：
- allowlist、blocklist是否只看命令名
- 参数、换行、Shell展开、子命令是否被忽略
- 是否能从读升级到执行

## 4. 提示词注入到数据外传

`提示词注入 ->读取敏感内容 ->借图片、URL、DNS、WebView发出`

适合验证：
- 是否存在默认可用的出站通道
- 外传动作是否无需额外审批
- 是否能把本地机密编码到请求里

## 5. 长链持久化、二次触发

`一次低交互成本能力 ->写入持久化配置 ->等待例行操作再次触发`

典型例子：
- 首次审批只按路径或名称记忆
- 后续`git pull`、重开项目、重启IDE后静默生效
- 用户以为自己批准的是旧内容，实际内容已被替换

# 操作步骤

1. **列原语，不脑补。** 应先列出已经验证成立的能力，并注明证据、触发条件与限制条件。
2. **找连接点。**
   重点看以下枢纽：

- 文件写入
- 配置自动加载
- 命令执行
- 网络出站
- 审批状态缓存

3. **只拼能复现的链。**
   每一跳都要能从干净状态复现，不应以推测补足缺失环节。
4. **确定最低触发条件。**
   关注用户真正要做的最少动作，据此给Tier。
5. **评估终点影响。**
   区分能读能写能持久化能执行能外传。
6. **写最短PoC。**
   能演示完整影响即可，不宜为展示复杂性而人为延长攻击链。

# 输出时要写清楚

- 攻击链名称
- 每一跳的输入、触发点、状态变化
- 需要的用户动作
- 对应层级与原因
- 终点影响
- 复现步骤
- 为什么这条链比单点漏洞更严重

# 可优先查阅的资料

- `references/disclosed-chains.md`
- `references/chain-templates.md`
- `references/trigger-model-matrix.md`

# 结果表述建议

建议按以下顺序组织：

1. **结论**：这是不是一条完整攻击链
2. **关键证据**：每一跳靠什么成立
3. **验证方式**：如何从干净状态复现
4. **下一步**：还需要补什么证据，或该写成什么级别的报告


