Trust Assessment
near-name-service received a trust score of 32/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: 2 critical, 0 high, 1 medium, and 1 low severity. Key findings include Arbitrary command execution, Unsafe deserialization / dynamic eval, Node lockfile missing.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The Manifest Analysis layer scored lowest at 63/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 Findings4
| 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/shaiss/near-name-service/scripts/nameservice.js:4 | |
| CRITICAL | Command Injection via unescaped user input in `exec` call The `registerName` function constructs a shell command string by directly interpolating user-provided values (`name` and `accountId`) without proper sanitization or escaping. This command is then executed using `child_process.exec`. An attacker can inject arbitrary shell commands by providing specially crafted input for `name` or `accountId`, leading to remote code execution on the host system. Avoid constructing shell commands by concatenating user input directly. Instead, use `child_process.spawn` with an array of arguments, which prevents shell interpretation of arguments. If `exec` must be used, ensure all user-supplied variables are thoroughly escaped using a robust shell escaping library (e.g., `shell-quote` or `shlex`) before interpolation. | LLM | scripts/nameservice.js:80 | |
| 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/shaiss/near-name-service/scripts/nameservice.js:72 | |
| LOW | Node lockfile missing package.json is present but no lockfile was found (package-lock.json, pnpm-lock.yaml, or yarn.lock). Commit a lockfile for deterministic dependency resolution. | Dependencies | skills/shaiss/near-name-service/package.json |
Scan History
Embed Code
[](https://skillshield.io/report/a4d2dd41d56589bb)
Powered by SkillShield