Back to skill

Security audit

航班查询 - 聚合数据

Security checks for vulnerabilities and agentic risk

Overview

This appears to be a straightforward flight-query helper that uses a third-party API key and sends user-supplied route/date details to that API, with credential-handling risks users should manage carefully.

Install only if you are comfortable sending flight search details to Juhe. Prefer setting the API key as an environment variable or managed secret, avoid passing it with --key, keep any .env file out of version control, and rotate the key if it may have been exposed.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Lp3

Medium
Category
MCP Least Privilege
Confidence
82% confidence
Finding
The skill declares runtime capabilities in metadata requirements (environment variable, Python, and an external API dependency) but does not explicitly declare permissions for network access, environment access, or file interaction. This creates a transparency and governance gap: users and the platform may not understand that user queries and API keys will be read and transmitted to a third party.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill sends user travel search data such as departure, destination, and travel date to a third-party API, but the documentation does not clearly warn users about external transmission or data handling. Travel itinerary data can be privacy-sensitive, and lack of notice reduces informed consent and may violate platform privacy expectations.

Credential Access

High
Category
Privilege Escalation
Content
# 方式一:环境变量(推荐,一次配置永久生效)
export JUHE_FLIGHT_KEY=你的 AppKey

# 方式二:.env 文件(在脚本目录创建)
echo "JUHE_FLIGHT_KEY=你的 AppKey" > scripts/.env

# 方式三:每次命令行传入
Confidence
95% confidence
Finding
The documentation instructs users to store the API key in a local .env file under the scripts directory. If that file is accidentally committed, exposed through backups, or read by other tooling, the credential can be stolen and abused for unauthorized API usage, quota exhaustion, or billing impact.

Credential Access

High
Category
Privilege Escalation
Content
export JUHE_FLIGHT_KEY=你的 AppKey

# 方式二:.env 文件(在脚本目录创建)
echo "JUHE_FLIGHT_KEY=你的 AppKey" > scripts/.env

# 方式三:每次命令行传入
python scripts/flight_query.py --key 你的 AppKey --departure BJS --arrival SHA --date 2025-06-18
Confidence
97% confidence
Finding
The example passes the API key directly on the command line via --key. Command-line secrets are often exposed through shell history, process listings, audit logs, and terminal recordings, making credential theft significantly easier on shared or monitored systems.

Static analysis

No suspicious patterns detected.