Remote Command Injection in GL.iNet GL-MT3000
Multiple unauthenticated remote command injection vulnerabilities in the GL.iNet GL-MT3000 router allow arbitrary code execution via the /cgi-bin/glc component. Public exploit code is available; patch firmware immediately.
CVE search metadata
CVE search record: CVE-2026-18685. Severity: critical. CVSS: 9.8. KEV: no. Product: GL-MT3000. Brief: Remote Command Injection in GL.iNet GL-MT3000. Brief link: https://feed.craftedsignal.io/briefs/2026-08-gl-inet-rce/
CVE search record: CVE-2026-18686. Severity: critical. CVSS: 9.8. KEV: no. Product: GL-MT3000. Brief: Remote Command Injection in GL.iNet GL-MT3000. Brief link: https://feed.craftedsignal.io/briefs/2026-08-gl-inet-rce/
What's new
Multiple critical command injection vulnerabilities have been identified in the GL.iNet GL-MT3000 router running firmware versions up to and including 4.4.5. Publicly available exploit code has been disclosed, significantly lowering the barrier for exploitation. Organizations deploying this hardware should prioritize applying firmware updates and restricting access to the management interface.
CVE-2026-18685 — set_upgrade in modem.so
A critical security vulnerability (CVE-2026-18685) has been identified in the GL.iNet GL-MT3000 router, specifically within the set_upgrade function located in the modem.so component, invoked via /cgi-bin/glc. This flaw enables unauthenticated, remote attackers to perform command injection, leading to full system compromise.
Attack Chain
- An attacker identifies an internet-facing GL.iNet GL-MT3000 router.
- The attacker sends a crafted HTTP request to the target device.
- The request targets the
/cgi-bin/glcbinary. - The input is passed to the vulnerable
set_upgradefunction withinmodem.sowithout proper sanitization. - The
set_upgradefunction processes the malicious input, leading to command injection. - The injected commands are executed by the underlying operating system.
- The attacker achieves arbitrary code execution with elevated privileges on the router.
Impact
Successful exploitation results in full remote control of the affected router. Attackers can leverage the compromised device to intercept network traffic, gain a foothold in the local network, or use the device as part of a botnet. Given the nature of these routers, this compromise presents a significant risk to the privacy and security of all connected clients.
CVE-2026-18686 — nas-web.add_user in nas-web RPC Wrapper
A critical command injection vulnerability, identified as CVE-2026-18686, affects the GL.iNet GL-MT3000 router. The vulnerability resides within the nas-web.add_user function of the nas-web RPC wrapper, which is accessible via the /cgi-bin/glc endpoint. The flaw allows an unauthenticated, remote attacker to trigger command injection by manipulating inputs sent to this specific RPC handler.
Attack Chain
- Attacker performs network reconnaissance to identify GL.iNet GL-MT3000 devices exposing the web administration interface.
- Attacker crafts a malicious HTTP request directed at the
/cgi-bin/glcendpoint. - The request targets the
nas-web.add_userfunction within the nas-web RPC wrapper. - The attacker injects shell metacharacters into the input parameters expected by the function.
- The application fails to sanitize the input, passing the attacker-supplied string directly to a system-level command execution routine.
- The router executes the injected commands with the privileges of the web service process.
- Final objective: The attacker gains remote code execution on the device, potentially leading to full system compromise or persistence.
Impact
Successful exploitation results in arbitrary command execution on the router with high-level privileges. This enables attackers to reconfigure the network device, exfiltrate sensitive configuration data, pivot into internal networks protected by the router, or deploy persistent malware. The vulnerability affects all users of GL-MT3000 running firmware version 4.4.5 or earlier, significantly increasing the attack surface for remote compromise.
Recommendation
- Identify all GL.iNet GL-MT3000 devices in the environment and verify the currently installed firmware version.
- Patch affected devices to the latest firmware version released by GL.iNet immediately to mitigate CVE-2026-18685 and CVE-2026-18686.
- Restrict access to the router's web management interface to trusted internal management subnets.
- Restrict access to the device web administration interface (
/cgi-bin/glc) to trusted management IP addresses via internal firewall rules. - Monitor edge device traffic for unusual HTTP requests targeting
/cgi-bin/glcoriginating from external sources. - Enable ingress monitoring on the network perimeter to identify HTTP POST requests directed at
/cgi-bin/glccontaining unexpected characters or command sequences (e.g., semicolons, pipe symbols, backticks). - Review network logs for unusual outbound connections originating from GL-MT3000 routers, which may indicate post-exploitation activity.
Immediate actions
Patch all GL.iNet GL-MT3000 devices to firmware version > 4.4.5
Threat Hunt
Identify all devices in inventory matching affected firmware range
Data: Asset management data
Mitigations
Block or restrict access to the web management interface of GL-MT3000 devices
CVE-2026-18685
Restrict external access to administration interface
CVE-2026-18686
Gaps
- Visibility into legacy management console logs
Detection coverage 1
Detects CVE-2026-18685 Exploitation - Potential Command Injection in /cgi-bin/glc
criticalDetects HTTP requests to the vulnerable /cgi-bin/glc endpoint which may contain injected shell commands.
Detection queries are available on the platform. Get full rules →
Indicators of compromise
2
url
| Type | Value |
|---|---|
| url | https://github.com/StrTzz123/iot_vul/tree/main/GL-iNet/MT3000/4.4.5/modem_set_upgrade_glc_rce |
| url | https://github.com/coconut652-7/IOT_Vul_Public/tree/main/Glinet/MT3000/nas-web/ADD_USER_ADD_SHARE |