T09 · Insecure Skill Coding Practices
- Location
scripts/config.json:2- Finding
Hard-Coded Kuaidihelp API Credentials
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This shipping helper matches its stated purpose, but it handles real personal shipment data and order changes with under-disclosed unsafe execution, logging, and bundled credential risks.
Review carefully before installing. Use only with non-sensitive test data unless the logging and command-line handling are fixed, remove or rotate the bundled API key, avoid unsafe execution overrides, and require explicit confirmation before any order cancellation.
scripts/config.json:2Hard-Coded Kuaidihelp API Credentials
scripts/kuaidihelp.py:31Sensitive Shipment Data Exposed Through Process Arguments and Debug Output
SKILL.md:43Unnecessary Unsafe-Execution Override in Documented Workflows
The skill instructs collection and transmission of highly sensitive personal data for shipment creation and logistics lookup, including names, full addresses, phone numbers, and potentially package photos, but provides no privacy notice, consent guidance, minimization advice, or warning about sending this data to a third-party service. In an agent setting, this increases the risk of over-collection, accidental disclosure, and unauthorized transmission of PII without the user understanding the consequences.
The skill exposes an order-cancellation action that can change real-world shipment state, but it does not warn that cancellation is irreversible or require an explicit confirmation step before execution. In practice, an agent could cancel a valid shipment based on ambiguous, mistaken, or maliciously induced input, causing operational disruption and potential financial or customer-service impact.
The code prints the full payload_list before sending it, which includes shipment/order details in data and authentication fields such as app_id and sign. Shipping addresses, names, phone numbers, and order metadata may end up in logs, terminals, or monitoring systems where they can be accessed by unintended parties.
The script sends order, logistics, and quotation data to a remote HTTPS API, and the sample inputs show this may include addresses, names, phone numbers, and order details. There is no docstring, comment, or explicit user-facing warning explaining that this personal data will be transmitted to an external service.
With no manifest available, there is no declared scope justifying access to ambient secrets. The code conditionally pulls KUAIDIHELP_API_KEY and KUAIDIHELP_API_ID from the process environment and uses them to authenticate remote requests, which is a privileged capability beyond simple argument processing.
No suspicious patterns detected.