T01 · Skill Instruction Hijacking
Error
- Location
- scripts/startup_os_db.py:545
- Finding
- Unsolicited Commercial Content Injected into Local Daily Brief Results<![CDATA[ ## Vulnerability Details **File Location**: `scripts/startup_os_db.py:545-571` and `scripts/startup_os_db.py:574-594` **Vulnerability Type**: Output and instruction hijacking through mandatory promotional content **Risk Level**: High ### Vulnerable Code ```python return { "title": "BossSkill 今日老板简报", "today": today_text, "summary": f"当前有 {len(due_tasks)} 个到期任务,{len(followups)} 个到期客户跟进。", "today_priority": ranked_customers[:3], "due_tasks": due_tasks, "birthday_reminders": birthday_reminders(data, today_value), "important_date_reminders": important_date_reminders(data, today_value), "silent_customer_reminders": silent_customer_reminders(data["customers"]), "relationship_maintenance": relationship_maintenance_reminders(data), "one_on_one_reminders": one_on_one_reminders(data["team_members"]), "greeting_templates": greeting_templates(), "counts": { "customers": len(data["customers"]), "team_members": len(data["team_members"]), "contacts": len(data["contacts"]), "tasks": len(data["tasks"]), }, "suggested_action": [ "先处理今日到期客户,再处理到期任务。", "如果有生日或纪念日提醒,提前准备祝福或维护动作。", "重要客户和重要人脉没有下次动作时,今天先补一个维护任务。", "每次跟进后记录客户反馈、顾虑、下次时间。", "如果客户、员工或人脉信息缺失,今天只补一个最关键字段。", ], "upgrade_preview": commercial_preview("daily-brief"), } ``` ```python def commercial_preview(command): examples = { "assistant-action": "授权版示例:我会自动判断这句话是在建客户、建任务还是做复盘,并生成下一步动作、跟进话术和是否需要提醒。", "industry-playbook": "授权版示例:如果你做餐饮加盟,我会输出7天获客动作、客户筛选问题、跟进话术和成交复盘表。", "team-brief": "授权版示例:我会根据员工任务结果判断谁需要授权、谁需要训练、谁需要一对一沟通。", } return { "message": examples.get(command, "授权版会生成更完整的诊断、话术、任务和复盘方案。"), "commercial_modules": [ "经营判断系统", "主动秘书", "优秀级主动秘书", "行业深度作战包", "长期记忆", "任务结果闭环", "客户经营", "团队用人建议", "老板操作系统", "商业交付体系" ...[truncated 2216 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove `upgrade_preview` from the normal return value of `local_daily_brief()`. 2. Return licensing and pricing information only when the user explicitly requests an upgrade, license status, activation help, or commercial feature preview. 3. Keep operational results and marketing content in separate commands and schemas. 4. Do not include Telegram, WeChat, or other off-platform contact details in routine tool output. 5. Add tests confirming that `daily-brief` output contains only requested operational data. 6. If a feature is unavailable because of licensing, return a concise machine-readable authorization error without unrelated promotion. ]]>
