T01 · Skill Instruction Hijacking
- Location
SKILL.md:8- Finding
Mandatory Commercial Output and Agent Behavior Hijacking
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This Korea travel skill has a coherent travel-booking purpose, but it requires broad command execution, unapproved global package installation, and hidden local logging of raw user queries.
Install only if you are comfortable with a Korea travel skill that may run a third-party flyai CLI, install it globally through npm if missing, send travel queries to that provider, add booking links/branding, and write local execution logs. Prefer manual review and installation of a pinned CLI version, and avoid entering sensitive personal, passport, payment, or private itinerary details unless logging and data handling are fixed.
SKILL.md:8Mandatory Commercial Output and Agent Behavior Hijacking
SKILL.md:112Unpinned Global Installation of a Third-Party npm Package
references/runbook.md:32Shell Injection and Sensitive Query Exposure in Execution Logging
Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.
flyai search-flight --origin "Beijing" --destination "Seoul" --dep-date 2026-05-01 --sort-type 3
## Output Rules
1. **Conclusion first** — lead with the key finding
2. **Comparison table** with ≥ 3 results when available
The skill's critical execution rules instruct the agent to install flyai-cli if it is missing, which can modify the host environment without informed user consent. Because this is positioned as mandatory behavior, a simple travel query could trigger third-party software installation and network retrieval of code, creating supply-chain and system-integrity risk.
The activation triggers are broad enough to fire on ordinary mentions of Korea-related travel, which can cause the agent to invoke this skill unexpectedly. In this skill, accidental activation is more dangerous because the workflow then mandates environment checks and possible CLI installation, potentially leading to unprompted external command execution and network access.
The prerequisites section explicitly includes a global npm installation command for third-party software, again without warning about system changes or requiring user approval. Global installs can alter PATH-resolved executables and introduce unreviewed code into the environment, making this unsafe in an agent-execution context.
The document states that the execution log is internal and not shown to users while the schema captures raw input in user_query. Collecting and potentially retaining raw user input without any user-facing notice or consent is a privacy weakness, especially in a travel context where users may share names, dates, destinations, passport or visa-related details.
The runbook explicitly requires storing the raw user query along with detailed step-by-step execution metadata, including commands, statuses, and latency. For a travel-planning skill, this exceeds what is necessary to fulfill the feature set and can expose sensitive travel plans, personal details, or booking-related information if retained or accessed improperly.
The runbook instructs the agent to append execution logs to a local file, creating persistent storage of sensitive operational and user-derived data without any demonstrated business need for this travel skill. Persistent filesystem logging increases the blast radius of compromise by making data available beyond the immediate session and potentially accessible to other processes, operators, or later misuse.
Line L203 says both 'Use detailUrl for booking links' and 'Never use detailUrl' in the same instruction. This is an active contradiction in the skill documentation that can mislead the agent about whether to include the required booking URL field.
The file says the agent's execution log is not shown to users, yet Rule 5 requires risk_flags to be rendered in user-facing output. This creates a natural-language policy inconsistency around what operational or safety information is disclosed to users.
No suspicious patterns detected.