Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Primary rating from Vendor (mitre) · only source for this CVE.
CVSS VectorVendor: mitre
Lifecycle Timeline
3DescriptionCVE.org
Mercusys AC12G (EU) V1 router with firmware AC12G(EU)_V1_200909 uses a static authentication nonce that does not change between requests from the same source IP. Combined with the predictable XOR-based password encoding (securityEncode function), this allows an attacker to reverse captured authentication tokens to recover the plaintext password.
AnalysisAI
Authentication token recovery in Mercusys AC12G (EU) V1 routers running firmware AC12G(EU)_V1_200909 allows network-based attackers to decrypt captured login credentials and recover plaintext administrator passwords. The flaw stems from a static authentication nonce that never rotates for requests originating from the same source IP, combined with a weak XOR-based password encoding routine (securityEncode). A public advisory exists on GitHub, but no public exploit code or active exploitation has been identified at the time of analysis.
Technical ContextAI
The Mercusys AC12G is a consumer/SOHO dual-band Wi-Fi router whose web management interface relies on a client-side encoding function named securityEncode to obfuscate credentials before transmission. This routine performs a reversible XOR operation against a nonce supplied by the server; because that nonce is static per source IP and never re-randomized, the cipher reduces to a trivial substitution that an observer with the nonce and the encoded token can invert. The underlying weakness is classified as CWE-327 (Use of a Broken or Risky Cryptographic Algorithm) - both the choice of XOR as the protective primitive and the failure to use a fresh, unpredictable challenge defeat the intended authentication-token protection. The CPE entry in NVD is the placeholder cpe:2.3:a:n/a:n/a:*, meaning no formal CPE has yet been assigned to the device, so automated asset matching against this CVE will not work.
RemediationAI
No vendor-released patch is identified at time of analysis - neither Mercusys nor TP-Link (its parent) has published a firmware advisory referenced in the available data, so administrators should monitor https://www.mercusys.com for an updated firmware build superseding AC12G(EU)_V1_200909 and apply it as soon as it is released. As compensating controls, restrict access to the router's web management interface to a trusted wired LAN segment by disabling remote/WAN management and any Wi-Fi-based admin access (trade-off: administrators must be on-LAN to configure the device); place the router behind a separate trusted network or VLAN so adjacent guests cannot observe authentication traffic; set a long, high-entropy admin password that is unique to this device so that recovered credentials cannot be reused elsewhere (trade-off: does not prevent recovery, only limits credential reuse blast radius); and, where feasible, replace the device with one that uses TLS for management and a properly randomized per-session challenge. The researcher advisory at https://github.com/Tymbark7372/MERCUSYS-AC12G/blob/master/advisories/CVE-2026-36609.md should be consulted for technical detail on the securityEncode routine.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-34148
GHSA-wmgq-9q82-422r