☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2023-26320

CVE-2023-26320 — Xiaomi Router external request interface vulnerability leads to stack overflow
📅 PUBLISHED: 2023-10-11 00:00 UTC 🔄 UPDATED: 2026-08-12 17:45 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.97%
👁️
0.97% probability
24.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
7.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2023-26320 is a command injection vulnerability affecting Xiaomi Router devices, disclosed with a CNA title of "Xiaomi Router external request interface vulnerability leads to stack overflow." The NVD description confirms an "Improper Neutralization of Special Elements used in a Command ('Command Injection')" flaw that allows remote attackers to achieve command injection against affected Xiaomi Router models. With a CVSS score of 7.5, this vulnerability is considered high severity, though the EPSS score of 0.00973 suggests a relatively low probability of active exploitation in the wild. Affected organizations are primarily home and small-office users of Xiaomi Router products who may face unauthorized remote access, device compromise, and potential use of the router as a pivot point for further network attacks.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Technical Analysis

The vulnerability is classified as CWE-78-style command injection, though the exact CWE ID is not provided in the official data. The CNA title reveals a critical detail: the flaw resides in an "external request interface" on Xiaomi Router devices, and exploitation leads to a "stack overflow." This dual-characterization suggests the attack chain involves two stages: first, the external request interface fails to properly neutralize special elements in commands; second, the injection triggers a stack overflow condition.

Based strictly on the provided data, the attack surface is the external (Internet-facing or LAN-facing) request interface of Xiaomi Router firmware. This interface processes incoming requests that contain command strings. The lack of proper input validation or sanitization on special shell characters (such as semicolons, pipes, ampersands, or command substitution operators) allows an attacker to inject operating system commands that execute with the privileges of the router's web/service process.

The stack overflow component indicates that the injected commands, or the malformed input itself, can cause the application to write beyond the bounds of a stack-allocated buffer. This secondary condition could be leveraged for arbitrary code execution or denial of service. However, the exact parameters, endpoints, and function names are not disclosed in the available data, and no patch details, affected version ranges, or vendor advisory specifics are provided — only a single-source CNA claim that a patch exists.

Affected versions are listed as an empty array, meaning no specific version range has been published. This is a significant gap in vulnerability intelligence. The attack vector is network-based (remote), consistent with the CVSS 7.5 score, which aligns with an AV:N/AC:L-style assessment typical of unauthenticated remote command injection flaws.

It is important to note that insufficient technical detail is available to specify the exact vulnerable function names, URL paths, or request parameters. Analysts should treat this as an unauthenticated remote command injection in a router management/interface process, with a secondary stack overflow condition that may amplify impact.

Exploitation Scenarios

No public PoC is available; the attack chain described below is inferred from the vulnerability class (command injection via an external request interface) and the CNA title's reference to stack overflow.

Step 1 — Reconnaissance and Target Identification: An attacker would begin by scanning the Internet or local network for exposed Xiaomi Router management interfaces. Common techniques include Shodan/Censys queries for Xiaomi router banners, default management ports (e.g., HTTP/HTTPS on common router ports), and default credential checks. Given the "external request interface" phrasing, the vulnerable functionality may be reachable without authentication in some configurations, or the attacker may first obtain credentials via default-password login attempts.

Step 2 — Vulnerability Trigger: The attacker crafts an HTTP request to the external request interface, embedding shell metacharacters in a parameter that the application passes to an underlying system command. Because the application does not properly neutralize special elements (per the NVD description), characters such as ;, |, $(...), or backticks are passed through to a shell or command executor. This is the command injection class trigger.

Step 3 — Payload Execution: At the vulnerability-class level, the attacker appends OS commands to the legitimate command string. For example, a payload of ; <malicious_command> or | <malicious_command> would execute the injected command with router process privileges. Common payloads include: downloading and executing a reverse shell, adding a backdoor user to the system, modifying firewall rules, or exfiltrating router configuration data (including Wi-Fi credentials). The stack overflow component suggests that even without full command execution, the malformed request may corrupt the stack and lead to arbitrary code execution or repeated reboots.

Step 4 — Post-Exploitation Impact: Successful exploitation grants the attacker command execution on the router. Since a router is a network choke point, the attacker can: (a) intercept, modify, or reroute traffic; (b) pivot into the internal LAN for lateral movement; (c) harvest credentials from unencrypted traffic or captive portals; (d) use the router as part of a botnet for DDoS or scanning campaigns; or (e) permanently brick or modify the device to persist access (e.g., via firmware modification).

Impact Assessment

The CVSS base score of 7.5 (High) reflects the remote, potentially unauthenticated nature of the vulnerability, with high confidentiality impact as a likely consequence of command injection. The vector, though not explicitly provided, is consistent with AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H — remote, low complexity, no privileges, no user interaction, but a scope of Unchanged since the compromise is limited to the router device itself, not necessarily adjacent systems (though post-exploitation lateral movement can extend the blast radius).

Business Impact: Xiaomi Router devices are widely deployed in home and small-office environments across Asia and globally. For enterprises, the risk is twofold: (a) employees using Xiaomi routers in home offices become entry points; (b) any Xiaomi router deployed on a corporate network (e.g., in breakrooms or labs) provides a direct network foothold. Since routers sit at the network edge, a compromise can expose all devices behind them, including IoT devices, workstations, and cloud-access credentials in transit.

Affected Systems: All Xiaomi Router models using firmware that includes the vulnerable external request interface. The absence of a published affected-version list increases risk — device owners cannot easily self-assess. The stack overflow element may also make the device susceptible to denial-of-service attacks without successful code execution, degrading network availability.

Blast Radius: In the worst case, an attacker with command execution on the router controls all traffic entering and leaving the network — enabling credential harvesting, DNS poisoning, and man-in-the-middle attacks. The EPSS score of 0.00973 (58.8th percentile) indicates that exploitation is not currently widespread, but the high CVSS score and unauthenticated remote reachability make this a priority to patch once firmware updates are confirmed available.

Detection Guidance

The absence of specific exploit signatures or public PoCs means detections below are grounded in the vulnerability class (command injection via HTTP request to a router management interface). Tune the rules to your environment and correlate with known Xiaomi router IP ranges and MAC prefixes.

Sigma Rule

title: Xiaomi Router Command Injection Attempt via External Request Interface
id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
status: experimental
description: Detects HTTP requests to Xiaomi router management interfaces containing shell metacharacter patterns indicative of command injection attempts.
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2023-26320
    - https://www.cve.org/CVERecord?id=CVE-2023-26320
author: Valtersit Threat Intelligence
date: 2024/01/01
logsource:
    category: webserver
    product: general
detection:
    selection:
        cs-method: 'GET'
        cs-uri-query|contains:
            - ';'
            - '|'
            - '$(("
            - '`'
            - '%3B'
            - '%7C'
            - '%24%28'
            - '%60'
        c-uri|contains: 'cgi-bin'  # inference; adjust based on your telemetry
    condition: selection
falsepositives:
    - Legitimate use of special characters in query strings for other applications
    - Malformed requests from non-malicious automated scanners
level: high
tags:
    - attack.t1190
    - attack.execution
    - cve.2023.26320

YARA Rule

rule CVE_2023_26320_Xiaomi_Router_Command_Injection
{
    meta:
        author = "Valtersit Threat Intelligence"
        description = "Detects exploit payload patterns targeting Xiaomi Router command injection (CVE-2023-26320)"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2023-26320"
        date = "2024-01-01"
        cve = "CVE-2023-26320"
        severity = "high"

    strings:
        $shell_meta_char = /[;|&]{1}[a-zA-Z0-9\s\/]+/ 
        $cmd_exec = /(cat|wget|curl|nc|busybox|mknod|chmod|echo)\s+[^\r\n]{1,64}/ ascii nocase
        $reverse_shell = /(\/bin\/sh|bash|sh|nc|telnet)\s+-[ci]/ ascii nocase
        $router_path = /(cgi-bin|router|api|cgi)/ ascii nocase
        $url_encode = /(%3B|%7C|%26|%24%28|%60)/ ascii nocase

    condition:
        uint16(0) == 0x0D0A and
        any of them and
        #shell_meta_char > 0
}

Note: This YARA rule is designed to scan network captures or proxy logs containing HTTP request text; for full PCAP scanning, apply per-flow reassembly before matching.

Suricata IDS Rule

alert http any any -> $HOME_NET 80 (msg:"CVE-2023-26320 Xiaomi Router Command Injection Attempt"; flow:to_server,established; content:"POST"; http_method; content:"/cgi-bin/"; http_uri; nocase; pcre:"/(?:%3B|%7C|\;|\|)[a-z0-9\s\/\$\(\)]*?\s{0,2}(?:cat|wget|curl|sh|nc|busybox|bash|echo|id|cd|ls)\b/i"; sid:2023263200; rev:1; reference:cve,2023-26320; reference:url,nvd.nist.gov/vuln/detail/CVE-2023-26320; classtype:attempted-admin; priority:1;)

Note: Adjust the URI pattern (/cgi-bin/) to match your observed Xiaomi Router management paths. If no path is known, remove the content modifier for this part and keep only the PCRE matching shell metacharacters combined with command keywords.

Elastic Detection

sequence by source.ip with maxspan=10s
  [ http where event.category == "web" and http.request.method == "POST" or http.request.method == "GET"
    and http.request.uri contains "cgi" and (
        http.request.body.text.contains(";") or
        http.request.body.text.contains("|") or
        http.request.body.text.contains("`") or
        http.request.body.text.contains("$(") or
        http.request.uri contains "%3B" or
        http.request.uri contains "%7C"
    )
  ]
  [ process where event.category == "process" and process.name in ("sh", "bash", "nc", "wget", "curl", "busybox") ]

Note: The second event assumes you have endpoint visibility on the router, which is uncommon. For network-only detection, remove the second event and rely on the HTTP signature alone, optionally correlating with outbound connections from the router to suspicious IPs on uncommon ports (e.g., 4444, 1337) within a short time window.

Splunk SPL Query

index=proxy OR index=firewall 
| where match(_raw, "(?i)(cgi-bin|router|cgi)") 
  AND match(_raw, "(?i)(%3B|%7C|%26|%60|%24%28|;|\||`|\$\()") 
  AND match(_raw, "(?i)(\b(cat|wget|curl|sh|bash|nc|busybox|echo|id|uname|reboot)\b)")
| stats count earliest(_time) as first_seen latest(_time) as last_seen by src_ip, dest_ip, src_port, dest_port, _raw
| sort - count
| eval score = if(count > 5, "CRITICAL", if(count > 2, "HIGH", "MEDIUM"))

Wazuh OSSEC Rule

<group name="xiaomi_router,">
  <rule id="584644" level="12">
    <decoded_as>json</decoded_as>
    <field name="url">\.*cgi.*\.*</field>
    <regex>(%3B|%7C|%26|%60|%24%28)</regex>
    <regex>(cat|wget|curl|sh|bash|nc|busybox|echo|id)</regex>
    <description>CVE-2023-26320 - Xiaomi Router command injection attempt detected</description>
    <mitre>
      <id>T1190</id>
    </mitre>
    <group>attack_execution,</group>
  </rule>
</group>

Note: The Wazuh rule assumes you have a web/HTTP log decoder feeding JSON-format events; adjust the field names (url) to match your Wazuh log parser configuration.

Mitigation & Patch Guidance

Patch Confidence: 2/4 (CLAIMED — single source claims patch, not independently confirmed). Treat patch availability with skepticism; verify directly with Xiaomi support or firmware update channels before relying on it.

1) Immediate Mitigations:

  • Restrict remote access to the router management interface: disable remote management/WAN-side access if not strictly required. Enable only LAN-side management.
  • Place the router behind a firewall that blocks unsolicited inbound traffic to the management interface (ports 80/443/8080 if exposed).
  • Change default administrator credentials immediately; ensure strong, unique passwords.
  • Disable UPnP and any automatic port-forwarding features that may expose the vulnerable external request interface.
  • Monitor router logs daily for suspicious access patterns or unexpected reboots.

2) Patch/Upgrade Steps:

  • Check the Xiaomi Router firmware update channel (MiWiFi app or router web UI) for a new firmware release addressing this CVE. The CNA has claimed a patch exists; verify the published firmware version and its release notes.
  • If no official update is available, contact Xiaomi support directly to request a patch status confirmation.
  • After updating or applying any workaround, reboot the router and re-verify management interface exposure.

3) Long-Term Hardening:

  • Segment IoT/home-office router networks from core corporate assets; treat home routers as untrusted perimeters.
  • Replace Xiaomi Router devices in enterprise-adjacent roles with business-grade routers that have documented security advisory processes.
  • Implement centralized monitoring of router configuration and firmware versions; enforce update policies where possible.
  • Conduct periodic network scans to detect exposed router management interfaces and unexpected open ports across the estate.

References

  1. NVD Entry — CVE-2023-26320: https://nvd.nist.gov/vuln/detail/CVE-2023-26320
  2. CVE.org Record — CVE-2023-26320: https://www.cve.org/CVERecord?id=CVE-2023-26320
  3. CISA Known Exploited Vulnerabilities Catalog — CVE-2023-26320 is not listed (as of this report date); monitor the catalog for future additions: https://www.cisa.gov/known-exploited-vulnerabilities-catalog
  4. Xiaomi Router Security Advisories — check https://www.mi.com/global/support/ or the MiWiFi portal for official firmware/security notices (no direct advisory URL was available from the CNA data at time of writing).

No known threat actor campaigns or exploit-in-the-wild evidence were identified in the provided data. The EPSS score (0.00973) and absence of CISA KEV listing indicate low current exploitation activity; however, given the remote reachability and high CVSS score, this may change if a PoC surfaces publicly.

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2023-26320/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.