Trust Assessment
gumroad-pro received a trust score of 24/100, placing it in the Untrusted category. This skill has significant security findings that require attention before use in production.
SkillShield's automated analysis identified 5 findings: 2 critical, 0 high, 2 medium, and 1 low severity. Key findings include Arbitrary command execution, Unsafe deserialization / dynamic eval, Broad Environment Variable Access for Child Process.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The Manifest Analysis layer scored lowest at 26/100, indicating areas for improvement.
Last analyzed on February 13, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings5
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Arbitrary command execution Node.js child_process require Review all shell execution calls. Ensure commands are static (not built from user input), use absolute paths, and are strictly necessary. Prefer library APIs over shell commands. | Manifest | skills/abdul-karim-mia/gumroad-pro/handler.js:1 | |
| CRITICAL | Arbitrary command execution Node.js synchronous shell execution Review all shell execution calls. Ensure commands are static (not built from user input), use absolute paths, and are strictly necessary. Prefer library APIs over shell commands. | Manifest | skills/abdul-karim-mia/gumroad-pro/handler.js:13 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/abdul-karim-mia/gumroad-pro/handler.js:38 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/abdul-karim-mia/gumroad-pro/scripts/gumroad-pro.js:338 | |
| LOW | Broad Environment Variable Access for Child Process The `handler.js` script executes `gumroad-pro.js` using `child_process.spawnSync` and passes `process.env` as the environment for the child process. This grants the `gumroad-pro.js` script access to all environment variables of the parent process, even if it only explicitly requires `GUMROAD_ACCESS_TOKEN` or `API_KEY`. This could potentially expose other sensitive environment variables if they exist on the host system and are not strictly necessary for the child process. Pass only necessary environment variables to the child process. For example, construct a filtered environment object like `env: { GUMROAD_ACCESS_TOKEN: process.env.GUMROAD_ACCESS_TOKEN, API_KEY: process.env.API_KEY }` instead of `env: process.env`. | LLM | handler.js:13 |
Scan History
Embed Code
[](https://skillshield.io/report/26bf61eb8c34908f)
Powered by SkillShield