T01 · Skill Instruction Hijacking
- Location
references/core_workflow.md:34- Finding
Conditional External-Service Promotion Hijacks Agent Output
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill mostly matches its Bilibili comment-analysis purpose, but its generated HTML reports handle external and AI-generated content unsafely enough that users should review it before installing.
Install only if you are comfortable sending Bilibili video identifiers through RedFox, saving comment reports locally, and reviewing generated HTML carefully. Avoid opening or sharing generated reports that may contain sensitive commenter metadata until the report generation sanitizes AI summaries and API-supplied URLs and removes unnecessary external font loading.
references/core_workflow.md:34Conditional External-Service Promotion Hijacks Agent Output
scripts/backfill_html.py:30Stored HTML Injection Through Unsanitized Analysis Data
scripts/bili_comment_search.py:375HTML Attribute Injection Through Unescaped API-Supplied Image URLs
assets/report_template.html:9Purported Offline Report Loads Undisclosed External Font Resources
The skill description promises sentiment/category analysis and comment processing, but the noted implementation gap suggests that analysis may be performed outside the documented code path while additional metadata is fetched from another API. This mismatch reduces transparency about what data is actually collected and processed, which can mislead users about scope and create privacy and trust risks when exporting comments into HTML reports.
The skill description promises sentiment/category analysis and comment processing, but the noted implementation gap suggests that analysis may be performed outside the documented code path while additional metadata is fetched from another API. This mismatch reduces transparency about what data is actually collected and processed, which can mislead users about scope and create privacy and trust risks when exporting comments into HTML reports.
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>B站评论分析 - {{VIDEO_ID}}</title>
<!-- Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Archivo+Black&family=Space+Grotesk:wght@300;400;500;600;700&display=swap" rel="stylesheet">
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## Overview
Enter any Bilibili video link or BV ID to **instantly retrieve comment data**. AI automatically performs four-dimension sentiment analysis (positive / negative / demand / competitor) and generates an interactive HTML report for offline saving.
**Feature Overview**
The README says comments are retrieved in real time via the RedFox API, but it does not clearly warn users that video identifiers, comment content, and associated metadata will be transmitted to an external third-party service. This can create a privacy and consent gap, especially when comments may contain personal data, location indicators, or sensitive sentiment signals.
Advertising a full comment table with 'no truncation' raises output-handling risk because comment text can be arbitrarily long or numerous, increasing chances of oversized prompts, memory pressure, UI degradation, and accidental overexposure of personal or offensive content. In a reporting workflow, unbounded content can also make generated HTML files excessively large or unstable.
### Highlights
- **Bilibili meme culture understanding**: Recognizes awsl / yyds / xswl / 爷青回 / 下次一定 and other barrage slang in their real context
- **Complete data display**: Work details (views / likes / coins / favorites / danmaku, etc.) and full comment table — no truncation
- **Encoding-safe backfill**: Intelligent encoding ensures Chinese analysis content is injected into reports without corruption
---
The README says users can 'Simply describe your video in natural language — no fixed commands to memorize,' which makes activation conditions ambiguous and does not clearly distinguish valid requests from ordinary conversation. This broad wording increases the chance of unintended invocation because it omits explicit trigger scope, constraints, or negative examples.
The README says users can 'directly use natural language' and provide a video link or BV号 'without remembering fixed commands,' but it does not define clear activation boundaries or exclusion conditions. This broad invocation description could overlap with ordinary conversation about B站 videos and cause unintended skill activation.
Examples such as '下一页', '第3页', '需要', and '生成HTML' are common conversational phrases that are not uniquely tied to this skill. Without explicit session or context constraints in the description, these triggers are ambiguous and may cause accidental invocation.
The skill declares capabilities that imply access to environment variables, local file read/write, and network resources, but it does not declare any tool scope or permissions boundary in the manifest. That weakens reviewability and least-privilege enforcement, increasing the chance that a user or platform invokes a skill with broader capabilities than expected, including access to API keys and generation of local HTML files.
Several trigger phrases such as '看评论' or generic comment-analysis wording are broad enough to overlap with normal user speech. In an agent ecosystem, that raises the risk of unintended invocation, which is more concerning here because the skill can use environment-backed credentials, access the network, and save report files.
The skill explicitly collects comment content and exports it into offline-shareable HTML reports, yet the description lacks a warning about privacy, redistribution, and handling of potentially sensitive user-generated data. This omission can lead users to overshare reports containing commenter text, IP-attribution fields, nicknames, or other metadata without understanding the consequences.
Allowing activation from broad natural-language requests without tight constraints can cause the skill to trigger unintentionally during ordinary conversation. Because the skill performs network retrieval and writes shareable HTML output, accidental activation could fetch third-party comment data or create local artifacts without clear user intent.
The HTML document sets lang="zh-CN", which hard-codes a specific language/locale for the rendered report. Under the policy, forcing a locale without user opt-in or a clearly documented region-specific justification is a natural-language policy concern.
The file consistently mandates Chinese prompts and responses, such as the required Chinese follow-up messages in L06 and L39, with no opt-in or alternative language path. That creates a language policy concern because the skill appears to force a specific language/locale without user choice or an explicit documented justification.
The script writes fetched comment content, usernames, user IDs, IP属地, and video metadata into a local HTML report under a predictable downloads directory without an explicit notice or opt-in at runtime. While this is part of the skill’s intended functionality, it can create unintended local retention of potentially sensitive personal data and expose it to other local users, backup/sync services, or later accidental sharing.
The file name and heading indicate an English-specific README ('README.en.md'), which suggests the skill may be documented or presented in a fixed language. There is no visible statement offering users a language choice or clarifying that the English locale is optional.
The workflow instructs the agent to automatically launch a generated local HTML file with Start-Process/open, but does not require explicit user consent or warn that this will open a local file/application. Even if the HTML is generated by the skill, it includes fetched external comment content and analysis backfill, so auto-opening increases the risk of surprising execution context, privacy leakage, or unsafe rendering behavior in the user's browser.
This file is a code file, so SQP-3 applies to natural-language text in docstrings and CLI help. The script's description, usage text, and user-facing help/messages are entirely in Chinese, which imposes a specific language on users without opt-in or a documented region-specific justification.