Back to skill

Security audit

apiguru-amazon-data

Security checks across malware telemetry and agentic risk

Overview

This is a disclosed Apiguru Amazon-data client with paid/API-key options and optional MCP setup notes that require user choice and are not automatic.

Use the included probe.py path unless you have separately reviewed the MCP package. Provide an Apiguru API key only when you intend to bill that account, set a cost cap before batches, and remember that feedback posts are public if you use that command.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:188
Finding
Optional Fetch-at-Launch Execution of Unaudited Registry Packages## Vulnerability Details **File Location**: `SKILL.md`, lines 188–199 **Vulnerability Type**: Third-party package supply-chain risk **Risk Level**: Medium ### Vulnerable Code ```markdown **3. Fetch at launch (`uvx` / `npx`).** Convenient, and the weakest of the three: the launcher resolves and executes a package from a public registry every time the client starts. Pinning the version — which the snippets below do — stops it silently moving to a newer release, but it does not protect you from a compromised publisher account or registry. ```json { "mcpServers": { "apiguru": { "command": "uvx", "args": ["apiguru-mcp==1.1.5"] } } } ``` or, with Node instead of Python, `"command": "npx", "args": ["apiguru-mcp@1.1.5"]`. ``` ### Technical Analysis These optional instructions cause `uvx` or `npx` to resolve and execute a package obtained from a public registry whenever the MCP client starts. Version pinning prevents automatic selection of a newer version, but it does not authenticate the selected artifact or protect against compromise of the publisher account, registry, package metadata, or distribution infrastructure. The referenced MCP implementation is not included in this project and is explicitly described as outside the Skill's audit scope. Consequently, its executable behavior cannot be established from the reviewed artifact. Although the documentation acknowledges the risk and presents `scripts/probe.py` as the preferred implementation, the fetch-at-launch examples remain directly actionable and do not enforce artifact hashes or a reviewed lockfile. The core `scripts/probe.py` implementation does not exhibit this issue: it uses the Python standard library, does not download or execute code, limits network requests to fixed Apiguru origins, and refuses redirects. ### Attack Path 1. An attacker compromises the package publisher account, public registry, package artifact, or relevant distribution infrastructur ...[truncated 1116 chars]
Remediation
## Remediation Suggestions 1. Remove fetch-at-launch `uvx` and `npx` configurations from the recommended workflow. 2. Continue to make the reviewed, standard-library-only `scripts/probe.py` implementation the default and supported execution path. 3. If local MCP deployment remains necessary, publish a reviewed lockfile containing hashes for the package and all transitive dependencies. 4. Require installation from an authenticated, controlled artifact source with mandatory integrity verification rather than resolving packages at runtime. 5. Record and verify the exact artifact digest before every deployment or upgrade; a version number alone is insufficient. 6. Separate installation from execution so package review occurs before the component is allowed to run. 7. Execute the MCP component in a sandbox or container with: - no unrelated credentials in its environment; - read-only or narrowly scoped filesystem access; - no host-level administrative privileges; - outbound access restricted to explicitly required Apiguru endpoints; - resource and process limits. 8. Require a new security review whenever the package version, artifact digest, dependencies, permissions, or network destinations change.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep

VirusTotal

65/65 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.