Trust Assessment
bybit received a trust score of 73/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 1 finding: 1 critical, 0 high, 0 medium, and 0 low severity. Key findings include Multiple potential command injection vulnerabilities.
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 14, 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 | |
|---|---|---|---|---|
| CRITICAL | Multiple potential command injection vulnerabilities The skill demonstrates several patterns where untrusted input, if passed directly to shell commands, could lead to command injection. This allows an attacker to execute arbitrary commands on the host system where the skill is run.
1. **`generate_signature` function:** The `$params` variable is concatenated directly into `sign_string` (`"${timestamp}${API_KEY}5000${params}"`). If `$params` contains shell metacharacters (e.g., `$(evil_command)`), these would be executed by the `echo` command before being piped to `openssl`.
2. **`curl` URL parameters:** Variables like `CATEGORY` and `SYMBOL` are expanded directly into `curl` command URLs (e.g., `category=${CATEGORY}&symbol=${SYMBOL}`). If these variables contain shell metacharacters (e.g., `SYMBOL="BTCUSDT; rm -rf /"`), the injected commands would be executed by the shell after the `curl` command.
3. **`curl` POST data:** The `PARAMS` variable, which is intended to be a JSON string, is passed to `curl -d "$PARAMS"`. While the examples show hardcoded JSON, if `PARAMS` were constructed from untrusted input and contained shell metacharacters, it could lead to command injection. All variables originating from untrusted input that are used in shell commands (including URLs, command arguments, and strings passed to `echo` or `openssl`) must be rigorously sanitized or properly quoted to prevent shell metacharacter interpretation. For JSON payloads, use a robust JSON library to construct the string, and ensure the entire string is passed as a single, quoted argument to `curl -d`. For URL parameters, URL-encode all user-supplied values. For the `generate_signature` function, consider passing the raw `$params` string as a file or using `printf %s "$sign_string"` to avoid shell interpretation of `$sign_string`. | LLM | SKILL.md:46 |
Scan History
Embed Code
[](https://skillshield.io/report/d75e7b7a00157199)
Powered by SkillShield