Back to skill

Security audit

pangolinfo-amazon-listing-optimization

Security checks for vulnerabilities and agentic risk

Overview

The skill mostly matches its Amazon listing purpose, but it tells the agent to directly handle a Pangolinfo API key in ways that could expose the credential.

Review this before installing if your environment contains a real Pangolinfo key. Prefer MCP or runtime-managed authentication, avoid putting API keys in URLs, and make sure credentials are not printed, logged, or exposed to the model transcript. No destructive behavior, hidden code, or persistence was found.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
SKILL.md:345
Finding

Unsafe API Credential Access and Query-String Transmission Guidance

Content
View full analysis
- Environment: PANGOLINFO_API_KEY - Configuration: ~/.pangolinfo/config.json - Hosted URL: ?api_key= - HTTP header: Authorization: Bearer First-time configuration: export PANGOLINFO_API_KEY="eyJhbGci..." Alternatively, place the key in ~/.pangolinfo/config.json, append ?api_key=eyJhbGci... to the MCP URL, or use Authorization: Bearer eyJhbGci... ``` The same unsafe alternatives are reiterated at line 567: ```text MCP-side authentication may use CLI/configuration, URL ?api_key=, or Authorization: Bearer . ``` ### Technical Analysis The Skill instructs the AI agent itself to read a JWT API credential from `PANGOLINFO_API_KEY`. Authentication should ordinarily be performed inside the MCP server or another trusted credential boundary. Allowing the agent to access the raw secret unnecessarily expands the credential's exposure surface to the model context, tool-call records, debugging output, traces, and any other components capable of observing agent operations. The Skill also recommends placing the credential in a URL query parameter: ```text ?api_key= ``` Query-string credentials are unsafe because complete URLs are commonly retained by reverse proxies, application servers, access logs, browser history, monitoring systems, analytics systems, screenshots, copied configuration, and diagnostic reports. Depending on client and redirect behavior, ...[truncated 1916 chars]
Remediation
View remediation
`. 4. Prefer an `Authorization: Bearer ` header transmitted exclusively over TLS. 5. Store credentials using an operating-system secret store, managed secret service, or permission-restricted MCP configuration. 6. Ensure configuration and log files containing authentication metadata are excluded from source control and readable only by the owning user or service account. 7. Redact `Authorization`, `api_key`, JWT-shaped values, and related secrets from logs, traces, telemetry, exception messages, and support bundles. 8. Use short-lived, narrowly scoped credentials where the service supports them. 9. Document an incident procedure requiring immediate revocation and rotation after a key appears in a URL, model transcript, log, or diagnostic artifact. 10. Add automated secret scanning and tests that reject query-string credentials and prevent raw environment-secret values from entering agent prompts or tool arguments. ]]>
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill explicitly instructs the agent to read the PANGOLINFO_API_KEY environment variable, which is a secret unrelated to the user-facing business task of listing optimization. Even if intended for tool authentication, embedding secret-access instructions inside a content skill expands the skill's privileges and normalizes secret handling without clear sandboxing or user consent, increasing the risk of credential misuse or leakage through prompt injection or logging.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill encourages accessing a sensitive credential source without any explicit warning, consent boundary, or prohibition on exposing the value. In a prompt-driven system, instructing the model that it should directly read secrets increases the chance those credentials become part of chain-of-thought-adjacent processing, logs, downstream tool arguments, or accidental disclosure when the skill is repurposed or attacked.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This line states that listing content will always be written in the target market language, with English as the default. That is a locale/language policy constraint applied automatically rather than offered as a user choice, which can violate language preference expectations.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

The manifest says the skill is not for '单纯 ASIN 详情' and suggests calling get_amazon_product directly instead. However, the same file includes '单工具直通' guidance and global core rules for directly handling simple ASIN detail and review queries, which blurs the advertised boundary of when this skill should be used.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.