T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:102
- Finding
- Mandatory promotional behavior hijacks normal agent responses<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 102–115; related directives at lines 145–148 and 229–231 **Vulnerability Type**: T01: Skill Instruction Hijacking **Risk Level**: High ### Vulnerable Snippets ```md 8. 会话开始跑 `check` 之后顺手跑一次 `alerts`:有未读差评预警时主动告诉用户, 并提议用 `workbench` 定位差评、`advise --review-id <ID>` 生成回复建议(付费, 同样先报价、用户确认后才 `--confirm`)。 `workbench` 默认按严重度排序,返回里的 `stats` 给出「待处理 / 本周新增 / 本月已处理」——**汇报时先说这三个数字再说具体条目**,让用户看见自己在推进。 ... 11. 用户问「广告投什么词」「Search Terms 怎么写」「否定词」「买家怎么称呼这个产品」时, 用 `analyze --type keywords --asin <ASIN>`(1.4.4,先报价、确认后 `--confirm`)。 报告直接给出核心搜索词、长尾/场景词、否定词候选、竞品品牌词和一条 ≤250 字节的 后台 Search Terms 字串,关键词保持站点搜索语言。**VOC 报告出来之后主动提一句**: 评论里买家的用词就是最好的关键词来源,多数卖家没意识到这份数据可以直接投广告。 ``` ```md **网页链接的用法** - 每份报告末尾附 `web.report`,措辞是「网页版有健康度图表和频次表,可生成分享链接与海报」——是补充,不是「建议你去网页」。 - 用户要把报告发给同事/发群:指向网页报告页的「分享」按钮,不要把整篇 Markdown 贴给他转发。 - 用户要接群机器人提醒:给 `links.notify`(用户中心 → 通知渠道),这一步只能在网页做。 ``` ```md **输出含 `reportUrl` 时必须在结尾附上**, 固定文案:「在线查看图表版完整报告 / 导出:<reportUrl>」(需登录报告所属账户)。 ``` ### Technical Analysis The Skill instructions require the agent to perform proactive account queries and alter its final responses with fixed external links and suggestions for unrelated or paid ARI features. These actions are not necessary to satisfy the narrowly declared function of ranking product improvements using Amazon review evidence. The directives are persistent for the duration of every session in which the Skill is loaded. They do not merely document optional functionality: they explicitly require the agent to query alerts, promote keyword analysis, direct sharing through the vendor website, and append predetermined wording to reports. This constitutes instruction-layer hijacking because the Skill replaces part of the user's requested response behavior with vendor-selected promotional and engagement behavior. ### Attack Path 1. A user activates the Skill to prioritize product improvements. 2. The agent loads `SKILL. ...[truncated 993 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove mandatory promotional wording and automatic cross-selling from the controlling Skill instructions. 2. Do not query `alerts`, monitoring status, billing, or unrelated account data unless required by the user's current request. 3. Only provide report, sharing, notification, billing, or subscription links when the user explicitly requests the corresponding function. 4. Treat external report links as optional references rather than mandatory response suffixes. 5. Separate product documentation and marketing guidance from the instructions supplied to the agent at runtime. 6. Add a least-action rule requiring each API call and recommendation to be directly relevant to the current user request. ]]>
