Trust Assessment
newsapi-search received a trust score of 90/100, placing it in the Trusted category. This skill has passed all critical security checks and demonstrates strong security practices.
SkillShield's automated analysis identified 1 finding: 0 critical, 1 high, 0 medium, and 0 low severity. Key findings include Potential Command Injection via User-Controlled Arguments.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. All layers scored 70 or above, reflecting consistent security practices.
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 Findings1
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Potential Command Injection via User-Controlled Arguments The skill's documentation demonstrates that user-provided query strings and other parameters are passed directly as arguments to `node` scripts (e.g., `node scripts/search.js "query"`). If the underlying `scripts/search.js` or `scripts/sources.js` do not properly sanitize or escape these arguments before using them in internal shell commands (e.g., via `child_process.exec` or `spawn` with a shell option), an attacker could inject arbitrary shell commands, leading to remote code execution. The underlying `scripts/search.js` and `scripts/sources.js` files must rigorously validate and sanitize all user-provided arguments. When executing external commands, prefer using `child_process.spawn` with an array of arguments (e.g., `['node', 'scripts/search.js', userQuery]`) instead of a single command string, to prevent shell interpretation of user input. Avoid using `shell: true` with user-controlled input. | LLM | SKILL.md:15 |
Scan History
Embed Code
[](https://skillshield.io/report/4b9ead04f6737eba)
Powered by SkillShield