CVE-2022-36603
Description
InnoSilicon T3T+ t2t+_soc_20190911_151433.swu was discovered to contain a remote code execution (RCE) vulnerability in the checkUrl function.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
2- InnoSilicon/T3T+description
- Range: 20190911_151433
Patches
Vulnerability mechanics
Root cause
"Missing input sanitization in the checkUrl function — the older firmware passes user-supplied URL input directly into a shell command without escapeshellcmd(), enabling OS command injection."
Attack vector
An attacker must first authenticate to the InnoSilicon miner (e.g., using the undocumented guest/guest account [ref_id=1]) and obtain a valid JWT. Once authenticated, the attacker sends a crafted request to the `/api/checkUrl` endpoint with a payload containing shell metacharacters in the URL parameter. Because the older firmware does not use `escapeshellcmd()` [ref_id=1], the unsanitized input is passed directly to `shell_exec()`, allowing arbitrary OS commands to be executed on the device.
Affected code
The vulnerable code is in the `checkUrl` function within the InnoSilicon web interface (`/usr/share/factory/www`). The old version used `$ping_cmd = "ping ".$ping_url." -c 5";` without sanitization, while the newer version wraps the input with `escapeshellcmd()` [ref_id=1]. The route was defined as `$router->get('/api/checkUrl', 'Status','checkUrl');` in the API router (`/usr/share/factory/www/webif/index.php`) and was later commented out [ref_id=1].
What the fix does
The patch adds `escapeshellcmd()` around the user-supplied `$ping_url` variable before passing it to `shell_exec()` [ref_id=1]. In the vulnerable version the command was `$ping_cmd = "ping ".$ping_url." -c 5";` while the fixed version uses `$ping_cmd = escapeshellcmd("ping ".$ping_url." -c 5");` [ref_id=1]. This prevents shell metacharacters from being interpreted as command separators or operators. Notably, even after applying this fix, the vendor also commented out the checkUrl route in the API router, suggesting they no longer trust the endpoint [ref_id=1].
Preconditions
- authAttacker must authenticate to the miner (e.g., using the undocumented guest/guest account) and obtain a valid JWT.
- networkAttacker must have network access to the miner's web interface.
- inputThe vulnerable checkUrl endpoint must be enabled (present in older firmware versions).
Generated on May 28, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
1- jamesachambers.com/cryptocurrency-asic-miners-security-and-hacking-audit/mitrex_refsource_MISC
News mentions
0No linked articles in our index yet.