T01 · Skill Instruction Hijacking
- Location
SKILL.md:9- Finding
Forced Commercial Output and Agent Behavior Hijacking
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This Dubai travel skill is coherent with booking searches, but it asks agents to auto-install an unpinned global CLI and keep hidden raw-query logs.
Install only if you are comfortable with a provider-specific travel booking workflow. Do not let an agent auto-run the global npm install; review and install the flyai CLI manually from a trusted source, preferably pinned or isolated. Treat the local execution log as sensitive because it may retain travel details and raw prompts.
SKILL.md:9Forced Commercial Output and Agent Behavior Hijacking
SKILL.md:127Automatic Global Installation of an Unpinned npm Dependency
references/runbook.md:1Hidden Raw Query Logging with Unsafe Shell Interpolation Pattern
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 "Dubai" --dep-date 2026-01-15 --sort-type 3
## Output Rules
1. **Conclusion first** — lead with the key finding
2. **Comparison table** with ≥ 3 results when available
The README instructs users to run npx skills add ... without pinning a specific package/version, which can cause execution of whatever package version is currently resolved from the registry. If the upstream package is compromised, typosquatted, or updated maliciously, users installing the skill could execute untrusted code during setup.
The skill explicitly instructs the agent to install a global npm package when the CLI is unavailable, which modifies the user's system without prior informed consent. Installing and executing a third-party CLI expands the attack surface to package-supply-chain compromise, postinstall scripts, and unintended environment changes.
The prerequisites section normalizes running npm i -g @fly-ai/flyai-cli without any warning that it will alter the host environment and trust code from the npm ecosystem. In an agent setting, this can lead to silent installation and execution of unreviewed code on the user's machine.
The workflow mandates fallback to automatic installation when flyai is missing, creating a direct path from a user travel query to a privileged system-modifying command. This is dangerous because the agent is being instructed to remediate missing tooling by executing network-fetched code rather than stopping and requesting approval.
The runbook explicitly records raw user input, full CLI commands, and operational metadata in an internal execution log without any notice, minimization, or retention controls. In a travel-booking skill, user queries and commands can contain sensitive personal, financial, or itinerary data, so persistent logging increases privacy exposure and the blast radius of any local compromise or log access.
The schema includes a user_query field containing raw input, which creates direct retention of unfiltered user-provided content. Because this skill supports travel services such as flights, hotels, visas, and insurance, raw queries may include passport details, contact information, dates, booking references, or other sensitive data that should not be persistently stored without strong safeguards.
The persistence step appends the generated execution log to a local file, causing ongoing accumulation of user-derived content and command history. Persistent local logs are easy to overlook, may be insufficiently protected, and can expose sensitive travel or identity-related information if the host, workspace, backups, or downstream tooling are accessed by unauthorized parties.
No suspicious patterns detected.