VYPR
Unrated severityNVD Advisory· Published May 24, 2026

Totolink A8000RU Web Management cstecgi.cgi setLanguageCfg os command injection

CVE-2026-9386

Description

A vulnerability was identified in Totolink A8000RU 7.1cu.643_b20200521. Impacted is the function setLanguageCfg of the file /cgi-bin/cstecgi.cgi of the component Web Management Interface. Such manipulation of the argument lang leads to os command injection. The attack may be performed from remote. The exploit is publicly available and might be used.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

Totolink A8000RU firmware 7.1cu.643_b20200521 allows remote OS command injection via the `lang` parameter in the `setLanguageCfg` function.

Vulnerability

The setLanguageCfg function in /cgi-bin/cstecgi.cgi of Totolink A8000RU firmware version 7.1cu.643_b20200521 does not sanitize the lang argument before it is passed to CsteSystem, which executes the string using execv(). An attacker can inject arbitrary OS commands by crafting a POST request with a malicious lang value. This affects the web management interface of the router [1].

Exploitation

The attacker can send a remote HTTP POST request to /cgi-bin/cstecgi.cgi with the topicurl set to setLanguageCfg and the lang parameter containing backtick-enclosed OS commands. No authentication is required beyond a valid session cookie, which can be obtained through normal router access. The publicly available proof of concept uses lang: "ls>./setLanguageCfg.txt" to demonstrate command execution [1].

Impact

Successful exploitation grants the attacker arbitrary OS command execution on the affected router. This results in full compromise of the device, including the ability to read, modify, or delete files; install persistent backdoors; and potentially pivot to other devices on the local network. The integrity and confidentiality of the device and its data are impacted [1].

Mitigation

No official fix has been released as of the publication date. Users should monitor the vendor's download page for a firmware update [1]. Until a patch is available, restrict remote access to the web management interface by disabling remote management or using firewall rules to limit access to trusted IP addresses only.

AI Insight generated on May 24, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

1

Patches

0

No patches discovered yet.

Vulnerability mechanics

Root cause

"Missing input validation in the `sub_426EC0` function allows user-supplied `lang` parameter to be passed unsanitized into a system command execution path via `CsteSystem` and `execv()`."

Attack vector

An unauthenticated remote attacker sends a crafted POST request to `/cgi-bin/cstecgi.cgi` with the `topicurl` set to `setLanguageCfg` and the `lang` parameter containing injected OS commands wrapped in backticks [ref_id=1]. The router's web management interface processes the request without sanitizing the `lang` value, causing the injected command to be executed by the underlying system via `execv()` [ref_id=1]. The attack requires network access to the router's web interface, which is typically exposed on the local network.

Affected code

The vulnerability resides in the function `sub_426EC0` within the file `/cgi-bin/cstecgi.cgi` of the Totolink A8000RU firmware version 7.1cu.643_b20200521. The function reads the user-provided argument `lang` and inserts it into a buffer `s_` using `snprintf`, after which `s_` is passed to `CsteSystem`, which ultimately calls `execv()` to execute the constructed command [ref_id=1].

What the fix does

No patch is provided in the available references. The advisory does not include a fix or remediation from the vendor [ref_id=1]. To close this vulnerability, the application must validate and sanitize the `lang` parameter before using it in command construction, or avoid passing user-supplied input to system-level command execution functions like `CsteSystem` and `execv()` entirely.

Preconditions

  • networkAttacker must have network access to the router's web management interface (typically on the local network).
  • configThe router's web management interface must be enabled and reachable.
  • authNo authentication is required; the PoC does not include any authentication step.
  • inputAttacker supplies a crafted `lang` parameter containing OS command injection payloads.

Reproduction

1. Ensure the target Totolink A8000RU (firmware 7.1cu.643_b20200521) is reachable at an IP such as 192.168.6.2. 2. Send a POST request to `/cgi-bin/cstecgi.cgi` with the body `{"topicurl":"setLanguageCfg","lang":"`ls>./setLanguageCfg.txt`"}` and appropriate HTTP headers (Content-Type: application/x-www-form-urlencoded; charset=UTF-8). 3. After the request is processed, verify that a file named `setLanguageCfg.txt` has been created in the current directory, containing the directory listing output of the `ls` command [ref_id=1].

Generated on May 24, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

5

News mentions

0

No linked articles in our index yet.