T08 · Insecure Dependencies
- Location
README.md:20- Finding
Unpinned Third-Party Dependency Installation
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This Amazon seller automation skill appears purpose-aligned, but needs review because it handles reusable seller credentials, exports sensitive commerce data, and can change live listing prices without strong safeguards.
Review before installing. Use a dedicated workspace, pin and lock the `amazon-sp-api` dependency, grant the Amazon app only the roles needed, keep the credential file private with owner-only permissions, avoid committing it, treat `--out` files and command output as sensitive, and run price updates only when you intend to change live marketplace listings.
README.md:20Unpinned Third-Party Dependency Installation
scripts/orders.js:54Sensitive API Results Exported Without Explicit Access Controls
The declared description presents a broad Amazon SP-API skill for operational seller workflows such as orders, inventory, listings, and pricing. The supplied code chunk does not implement any of those functions. Its actual purpose is authentication/client setup plus a connectivity test that lists seller marketplace participations. While this is related to Amazon SP-API access, it is materially narrower than the declared behavior. There are no unrelated malicious capabilities evident, but the advertised operational capabilities are not represented in this code chunk.
The code only implements one subset of the declared functionality: checking FBA inventory through the SP-API getInventorySummaries operation. It does not fetch orders, manage listings, or manage pricing in the supplied chunk. The marketplace/account aspect is partially consistent because it uses configured marketplace/auth data, but the primary behavior here is much narrower than the declared broad skill description. This is a description-to-behavior mismatch because the declared purpose overstates the implemented capabilities in the provided code chunk.
The supplied code does interact with Amazon SP-API and is consistent with the listings/pricing portion of the description, but it does not implement order retrieval or FBA inventory checks mentioned in the declared purpose. Its concrete behavior is limited to getListingsItem and patchListingsItem on a configured seller account and marketplace. Therefore the description overstates the implemented capabilities and scope for this code chunk.
The code chunk is narrowly focused on the Orders API. It parses CLI arguments for listing orders or getting one order, calls getOrders/getOrder/getOrderItems, prints results, and optionally writes them to a file. There is no code for FBA inventory, listings, or pricing operations, so the declared description materially overstates the implemented capabilities. While using a configured marketplace is consistent with Amazon SP-API usage, the claim that it works with any marketplace and seller account is broader than what this code chunk itself demonstrates.
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `orders.js` — Orders
Referenced artifact was not completely inspected
### `inventory.js` — FBA Inventory
Referenced artifact was not completely inspected
### `inventory.js` — FBA Inventory
Referenced artifact was not completely inspected
### `inventory.js` — FBA Inventory
Referenced artifact was not completely inspected
### `inventory.js` — FBA Inventory
The README instructs users to create a plaintext credential file containing an SP-API client secret and refresh token, but provides no warning to keep it out of version control or restrict file permissions. In an agent-skill context, this is dangerous because users may copy the example verbatim, commit secrets, or leave them readable on shared systems, leading to compromise of the seller account and API access.
The skill declares no explicit tool scope or permissions, yet it clearly depends on environment configuration and local credential file access via the AMAZON_SPAPI_PATH variable. In an agent ecosystem, missing scope declarations can cause the runtime to grant broader-than-expected access or make operators unaware that the skill reads sensitive secrets from the environment/filesystem.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
## Notes
- Tokens auto-refresh via LWA — no manual management
- Keep credential files at `chmod 600`
- Respect SP-API rate limits per endpoint
## Related
The script writes Amazon order summaries to an arbitrary user-supplied path with no warning or safeguards, and order metadata can still be sensitive business data. In an agent skill context, this increases the chance that customer/order information is silently persisted to insecure locations, shared workspaces, or logs where retention and access controls are weaker than the SP-API source system.
This path writes full order and item details directly to disk, which may include more sensitive data than the summary view, such as product, fulfillment, and potentially customer-associated order details. In the context of an Amazon SP-API skill, silently persisting this data creates a realistic confidentiality risk if the file is written to a broadly accessible path or retained longer than intended.
The usage examples include exporting order and inventory data to JSON files and updating listing prices, both of which can affect user data or business operations. The README does not include any caution that these commands write files locally or that the update action changes live marketplace data.
No suspicious patterns detected.