Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Listing Image Optimizer

v1.0.1

Audit Amazon product listing images for non-square dimensions, auto-pad them to 2000×2000 white background, and push corrected images to live listings via SP...

0· 313·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The name/description match the included scripts (audit.js, pad_to_square.py, push_images.js). Required binaries (node, python3) and dependencies (Pillow, amazon-sp-api) are appropriate for the stated purpose. Minor mismatch: metadata declares no required credentials/env but the scripts expect an SP-API credentials file (amazon-sp-api.json) containing refresh token/client id/secret and sellerId — this is expected for SP-API use but wasn't declared in the registry metadata.
!
Instruction Scope
SKILL.md instructs installing packages, creating an SP-API credentials file, and running the three scripts — which is consistent with the code. But SKILL.md references a fix_title.js command that is not present in the file manifest (missing file). push_images.js intentionally spins up an HTTP server bound to 0.0.0.0 and serves files publicly for ~15 minutes; that behavior is within the claimed purpose (Amazon needs to crawl images) but is a data-exposure/vector risk and should be explicit to users. The scripts read the credentials file from a path set via AMAZON_SPAPI_PATH (or default ./amazon-sp-api.json) — the README/metadata did not declare this env var.
Install Mechanism
There is no automated install spec; the skill is instruction-plus-scripts. Dependencies are typical (pip Pillow, npm amazon-sp-api). No downloads from untrusted URLs or archive extraction are present in the package itself.
!
Credentials
The runtime requires SP-API credentials containing a refresh token, LWA client id/secret and seller/marketplace identifiers — these are sensitive and necessary for the declared purpose. However, the registry metadata lists no primary credential or required env vars, creating an omission that could mislead users about what secrets they must provide. The code also references optional env PRODUCT_TYPE and AMAZON_SPAPI_PATH; these env uses are not declared in metadata.
Persistence & Privilege
The skill does not request persistent/always-on privileges. It can run autonomously (default platform behavior) but does not modify other skills or system configs. Operationally, it opens a temporary public HTTP server (0.0.0.0) that serves image files for ~15 minutes — not persistent, but network-exposed and potentially accessible to anyone who can reach the host/port.
What to consider before installing
This skill appears to implement the advertised pipeline but has a few red flags you should consider before installing and running it: - Sensitive credentials: you must create an SP-API credentials file (refresh token, LWA client id/secret, sellerId). Treat this file like a secret — only place it on machines you control and do not expose it. The skill reads the file from AMAZON_SPAPI_PATH or ./amazon-sp-api.json; metadata did not declare this, so double-check before running. - Public HTTP server: push_images.js serves image files on 0.0.0.0 and advertises a public URL for Amazon to crawl. This will expose any files in the directory at that port while the server is running — consider using a trusted public hosting option (S3 with pre-signed URLs or a secure proxy) instead of opening a host/port on a VPS. - Missing file: SKILL.md documents a fix_title.js command but that file is not included. Expect incomplete/rough edges; review the scripts locally before use. - Verify dependencies: npm package amazon-sp-api and pip Pillow will be installed locally. Inspect package versions and consider running in an isolated environment (container or VM). - Best practices: run first on a test account, rotate/revoke SP-API tokens if you suspect exposure, and audit logs and network access. If you are uncomfortable exposing a public port, adapt the code to upload fixed images to S3 and use S3 URLs for SP-API updates instead of a local server.

Like a lobster shell, security has layers — review code before you run it.

latestvk97b0x5qacccqx43yxahkt85vn82044w

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

Binsnode, python3

Comments