Trust Assessment
apify-market-research received a trust score of 33/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 4 findings: 1 critical, 2 high, 1 medium, and 0 low severity. Key findings include Command Injection via Unsanitized User Input in Shell Commands, Arbitrary File Write via User-Controlled Output Path, Excessive Permissions: Direct Shell Command Execution.
The analysis covered 4 layers: dependency_graph, manifest_analysis, llm_behavioral_safety, static_code_analysis. The static_code_analysis layer scored lowest at 33/100, indicating areas for improvement.
Last analyzed on February 11, 2026 (commit 0ea3e009). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings4
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Command Injection via Unsanitized User Input in Shell Commands The skill instructs the LLM to construct and execute shell commands using user-controlled variables such as `ACTOR_ID`, `JSON_INPUT`, and `YYYY-MM-DD_OUTPUT_FILE`. These variables are directly interpolated into `mcpc` and `node` commands without sufficient sanitization. An attacker could inject shell metacharacters (e.g., `;`, `&`, `|`, `$(...)`) into these inputs to execute arbitrary commands on the host system. Implement robust sanitization or escaping of all user-provided inputs before they are used in shell commands. For `ACTOR_ID` and `YYYY-MM-DD_OUTPUT_FILE`, ensure they are validated against a strict allowlist of characters or properly escaped for shell execution. For `JSON_INPUT`, ensure it is always passed as a valid JSON string and handled by the target script's JSON parser, not directly interpreted by the shell. | Unknown | SKILL.md:50 | |
| HIGH | Arbitrary File Write via User-Controlled Output Path The skill allows the user to specify an output filename (e.g., `YYYY-MM-DD_OUTPUT_FILE.csv`) which is then passed directly as the `--output` argument to the `run_actor.js` script. The `run_actor.js` script uses `writeFileSync` with this user-provided path without any validation or sanitization. This allows an attacker to write arbitrary data (the actor's output) to any location on the filesystem accessible to the agent, potentially overwriting critical system files or creating malicious files. Restrict the output file path to a designated, sandboxed directory. Validate the provided filename to ensure it does not contain directory traversal sequences (e.g., `../`) or absolute paths. Consider using a temporary file or a unique filename generated by the system rather than directly using user input for the path. | Unknown | SKILL.md:70 | |
| HIGH | Excessive Permissions: Direct Shell Command Execution The skill explicitly instructs the LLM to execute shell commands (`mcpc`, `node`) as part of its core functionality. This grants the LLM broad execution capabilities on the host system. When combined with user-controlled input, this capability directly leads to command injection and arbitrary file write vulnerabilities, as detailed in other findings. Minimize direct shell command execution. If shell execution is unavoidable, ensure all arguments derived from user input are strictly validated and properly escaped. Consider using a more constrained execution environment or a dedicated API for interacting with external tools rather than raw shell commands. | Unknown | SKILL.md:50 | |
| MEDIUM | Unpinned Dependency in Installation Instructions The skill's prerequisites instruct the user to install `@apify/mcpc` globally using `npm install -g @apify/mcpc` without specifying a version. This makes the installation vulnerable to supply chain attacks, where a malicious update to the package could be pulled in, or to compatibility issues if a future version introduces breaking changes. Pin the dependency to a specific version (e.g., `npm install -g @apify/mcpc@1.2.3`) to ensure consistent and secure installations. Regularly review and update pinned versions to incorporate security fixes. | Unknown | SKILL.md:16 |
Scan History
Embed Code
[](https://skillshield.io/report/d672a131e35d2426)
Powered by SkillShield