T01 · Skill Instruction Hijacking
- Location
SKILL.md:10- Finding
Forced Third-Party Booking Links and Promotional Output
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill can help search pool hotels, but it mandates risky host changes, forced booking links, shell-style user input handling, and hidden local logging.
Review before installing. This skill should only be used if you are comfortable installing and running the flyai CLI, sending travel searches to that third-party service, seeing booking links selected by that service, and accepting local logging risks. Prefer a version-pinned, user-approved, locally sandboxed CLI install with link validation and logging disabled or redacted.
SKILL.md:10Forced Third-Party Booking Links and Promotional Output
SKILL.md:65Automatic Installation of an Unpinned Global npm Package
SKILL.md:85Shell Command Injection Through User-Controlled Command Placeholders
references/runbook.md:8Persistent Storage and Unsafe Shell Logging of Raw User Queries
Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.
flyai search-hotel --dest-name "Sanya" --key-words "泳池" --sort rate_desc --check-in-date 2026-07-01 --check-out-date 2026-07-03
## Output Rules
1. **Conclusion first** — lead with the key finding
2. **Comparison table** with ≥ 3 results when available
The skill explicitly instructs the agent to execute external CLI commands and, if missing, perform a global npm install without any user confirmation, trust validation, or warning about the risks of installing and running third-party code. In an agent context, this can lead to arbitrary code execution from the package install step and unexpected system modification on the host running the agent.
The runbook explicitly logs raw user input and full CLI commands in an internal execution log, which can capture sensitive personal, travel, account, or payment-adjacent data without any notice, minimization, or redaction. Because this skill handles travel workflows, user queries may include names, dates, locations, passport/visa details, or booking information, increasing privacy and compliance risk if logs are exposed or reused.
The runbook instructs appending execution logs to a local file, creating persistent storage of interaction data that may include raw queries, commands, and operational metadata. Persistent plaintext logging materially increases the blast radius of any local compromise, accidental inclusion in artifacts, or later access by other processes, especially in a consumer travel skill where user submissions may contain sensitive itinerary or identity-related details.
The fallback command hard-codes the hotel type as "民宿", which imposes a specific language/locale choice in the skill content. There is no indication that the user opted into Chinese-language terms or that this locale constraint is documented as region-specific.
The playbooks hard-code Chinese search terms such as "泳池", "无边泳池", and "室内泳池" in command examples, while the surrounding document is otherwise bilingual/English-facing. This can impose a specific language behavior without stating that the skill is intended only for Chinese-language hotel inventory or offering a user language choice.
No suspicious patterns detected.