Trust Assessment
thingsboard received a trust score of 88/100, placing it in the Mostly Trusted category. This skill has passed most security checks with only minor considerations noted.
SkillShield's automated analysis identified 1 finding: 0 critical, 1 high, 0 medium, and 0 low severity. Key findings include Potential Command Injection via Unsanitized User Input in Shell Commands.
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 Unsanitized User Input in Shell Commands The skill documentation provides examples of `curl` commands that incorporate placeholders (e.g., `{deviceId}`, `{dashboardId}`, `{keys}`, `{attribute1}`, `{attribute2}`) and environment variables (`$TB_URL`, `$TB_USERNAME`, `$TB_PASSWORD`, `$TB_TOKEN`). If the LLM generates these commands by directly substituting untrusted user input into these placeholders or environment variables without proper sanitization, an attacker could craft malicious input (e.g., `123; rm -rf /`) to execute arbitrary shell commands on the host system. This is a common vulnerability when LLMs construct shell commands from user-provided data, as shell metacharacters in user input could alter the intended command execution flow. Implement robust input sanitization and validation for all user-provided values before they are interpolated into shell commands. Ensure that all arguments passed to `curl` are properly escaped to prevent shell metacharacter interpretation. Consider using a dedicated library or function for executing external commands that handles argument escaping automatically, rather than direct string concatenation. For environment variables, ensure they are sourced from trusted configurations and not directly from user input. | LLM | SKILL.md:56 |
Scan History
Embed Code
[](https://skillshield.io/report/4fbf54da734a229f)
Powered by SkillShield