Back to skill

Security audit

Travel Itinerary Planner by Chaceclaw

Security checks for vulnerabilities and agentic risk

Overview

This looks like a real travel-planning skill, but it overstates live/safety features and saves sensitive trip and expense details locally without clear privacy controls.

Install only if you are comfortable with a prototype-style planner that stores trip files under your home directory. Verify weather, visa, emergency, booking, budget, and child-safety details through official or current sources before relying on them, and avoid entering sensitive family, finance, or future-travel details unless local persistence is acceptable.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (15)

Context-Inappropriate Capability

Medium
Confidence
91% confidence
Finding
The script prepends a hard-coded local filesystem path to Python's import search path, which changes module resolution in a way unrelated to the travel-planning feature itself. This can cause the program to import unintended or attacker-controlled modules from that directory if the environment is shared, compromised, or if the path is reused on another system, creating a code-execution risk during import time.

Description-Behavior Mismatch

Medium
Confidence
96% confidence
Finding
The skill metadata advertises real-time weather and booking-link features, but the implementation only returns static canned weather strings and generic app recommendations. In a travel-planning context, this can mislead users into relying on stale or nonexistent functionality when making time-sensitive travel decisions.

Description-Behavior Mismatch

Medium
Confidence
93% confidence
Finding
The manifest claims budget accuracy within 20%, but the code uses fixed style multipliers and hardcoded restaurant/activity cost templates with no calibration, destination-specific pricing, or validation. This creates a deceptive reliability claim that could cause users to underbudget trips and make poor financial decisions.

Description-Behavior Mismatch

Low
Confidence
89% confidence
Finding
The description promises emergency contacts and child-friendly activities, but the code only emits a generic reminder for emergency numbers and does not implement dedicated child-friendly planning. While not directly enabling code execution or data theft, this is unsafe product misrepresentation in a domain where families may rely on safety-related guidance.

Description-Behavior Mismatch

Low
Confidence
87% confidence
Finding
The skill presents itself as a general travel planner, but most activity and restaurant generation is hardcoded for Phuket, with all other destinations receiving generic templates. This can produce low-quality or misleading itineraries for arbitrary destinations, reducing trust and potentially causing poor travel choices.

Context-Inappropriate Capability

Low
Confidence
94% confidence
Finding
The script hard-codes a developer-specific absolute path into sys.path, which creates an environment-dependent import path and exposes local filesystem structure. In practice this can lead to unsafe module loading from unintended locations, portability failures, and accidental disclosure of sensitive developer environment details, even if it is not overtly malicious in this travel-planning context.

Missing User Warnings

Medium
Confidence
89% confidence
Finding
The README advertises itinerary sharing/export features but does not warn users that generated plans may contain sensitive personal travel data such as destinations, dates, budgets, family status, child-related details, and emergency contacts. This can lead to unintended disclosure if users share exported files or links without understanding the privacy implications.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The README documents weather and booking integrations without disclosing that destination, dates, or itinerary context may be transmitted to third-party services. In a travel-planning skill, such data can reveal future movements and preferences, increasing privacy and profiling risk.

Vague Triggers

Medium
Confidence
84% confidence
Finding
The trigger phrases are broad enough to match ordinary travel-related conversation, increasing the chance the skill activates when the user did not intend to invoke it. In a skill that can collect detailed trip information and potentially save or share outputs, accidental invocation can lead to unnecessary data collection or unintended side effects.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The skill advertises weather, booking links, expense tracking, export, and sharing features but does not warn users what data is sent externally, what is stored locally, or what actions may create persistent/shareable records. This lack of disclosure is risky in a travel planner because itineraries can contain highly sensitive data such as dates, destinations, children-related preferences, and contact details.

Vague Triggers

Medium
Confidence
90% confidence
Finding
The trigger list contains very generic phrases such as 'travel plan', 'travel planning', and common Chinese equivalents that are likely to appear in ordinary conversation, increasing the chance of unintended activation. In a skill that collects trip details and may produce links, recommendations, or planning actions, overbroad invocation can cause user confusion, privacy over-collection, or unauthorized skill engagement without clear intent.

Natural-Language Policy Violations

Medium
Confidence
78% confidence
Finding
The checklist assumes Chinese citizenship and applies visa guidance accordingly, without confirming the traveler's nationality. In a travel-planning skill, incorrect visa advice can materially affect travel compliance and may cause users to miss entry requirements or travel unprepared.

Missing User Warnings

Medium
Confidence
80% confidence
Finding
The skill writes travel diary templates to a predictable local directory under the user's home folder without clear consent or disclosure. In this context, diary content can include sensitive travel dates, destinations, and personal notes, so silent persistence increases privacy risk on shared or managed systems.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
The function saves itinerary content to disk in the user's home directory without an explicit warning that sensitive trip details will be stored locally. Travel itineraries can reveal destinations, dates, budgets, and routines, which can expose privacy and personal safety risks if the host is shared or compromised.

Missing User Warnings

Medium
Confidence
87% confidence
Finding
The expense tracker persists financial and travel information as JSON files on disk without clear user consent or disclosure. Because the stored data includes destination, dates, budget, and spending history, silent local storage meaningfully increases privacy exposure and could aid profiling of the user's travel and finances.

Static analysis

No suspicious patterns detected.