T01 · Skill Instruction Hijacking
- Location
SKILL.md:10- 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 luxury travel skill should go to Review because it automatically installs a global third-party CLI, forces provider booking links, and persists raw travel queries without clear user control.
Install only if you trust the flyai CLI and are comfortable with a global npm dependency, provider-controlled booking links, and local logging of travel requests. Prefer running it in a constrained environment, avoid entering sensitive personal or itinerary details, and ask the publisher to remove automatic global installation, pin and verify the dependency, validate booking URLs, use safe argument passing, and disable or redact persistent logs by default.
SKILL.md:10Mandatory Commercial Output and Agent Behavior Hijacking
references/runbook.md:34Shell Command Injection Through User-Controlled Command and Log Placeholders
SKILL.md:116Automatic Global Installation of an Unpinned Third-Party Package
references/runbook.md:1Undisclosed Persistent Logging of Raw User Queries and Commands
Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.
Full luxury orchestration
## Output Rules
1. **Conclusion first** — lead with the key finding
2. **Comparison table** with ≥ 3 results when available
The trigger phrase "luxury vacation" is broad enough to match many ordinary user requests about travel, which can cause this playbook to activate when the user did not explicitly intend to invoke a specialized workflow. In a booking-capable travel skill, ambiguous activation can steer users into more expensive or overly opinionated outputs and reduce user control over purchasing-related recommendations.
The runbook explicitly logs user_query as raw input in an internal execution log. In a travel-booking skill, user queries can contain sensitive personal data such as names, dates of travel, destinations, passport or visa details, contact information, and booking preferences, so retaining raw input without minimization or disclosure creates a clear privacy and data-leak risk.
The schema combines storage of natural-language user_query with optional file persistence, creating a durable record of potentially sensitive free-form user content. Because this skill handles luxury travel and booking workflows, users may provide high-value personal and itinerary information, making retained logs especially attractive and increasing exposure in the event of compromise or mishandling.
The documented persistence step appends execution logs to a local file with no safeguards around file permissions, retention, encryption, or sensitivity review. If the log contains raw queries or booking-related details, local disk persistence increases the chance of unauthorized access, accidental inclusion in backups, or later exfiltration.
The phrase "luxury beach vacation" is more specific than a generic travel query, but it still lacks explicit activation boundaries and may trigger on normal conversational planning rather than deliberate playbook selection. This can bias the system toward premium inventory or unnecessary upselling in a domain tied to reservations and spending.
The trigger "luxury cultural trip" is reasonably descriptive but still broad enough to overlap with standard requests for upscale cultural travel. In this skill context, unintended activation could lead to inflated assumptions about budget, private-tour preferences, or premium bookings without sufficiently clear user consent.
No suspicious patterns detected.