Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to LuCI with low-privilege account
-
DeliveryReach tailscale.do_login RPC method
-
ExploitInject $() payload via loginserver parameter
-
ExecutionOuter shell evaluates substitution as root
-
ImpactExecute arbitrary commands as root
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated LuCI account (PR:L) on a device running the luci-app-tailscale-community package, and the attacker must invoke the tailscale.do_login RPC method while supplying a malicious value in the loginserver or loginserver_authkey parameter containing a shell substitution like $(...) or backticks. The limiting factors are: valid (even low-privilege) web-UI credentials are mandatory, the vulnerable Tailscale community app must be installed and reachable, and the login/RPC flow must be exercised (reflected by the AT:P attack requirement); no victim user interaction is needed (UI:N). It is not exploitable remotely without authentication. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N, score 7.7) describes a network-reachable, low-complexity flaw that nonetheless requires an existing low-privilege authenticated session (PR:L) and carries an attack requirement (AT:P), meaning the attacker must already hold valid LuCI credentials and reach the Tailscale login flow. Impact is severe - full confidentiality, integrity, and availability loss (VC/VI/VA:H) via root command execution on the router. No EPSS score, KEV listing, or known public POC is present in the provided data, so this is a high-impact but not currently mass-exploited issue: real risk concentrates on devices where untrusted or lower-trust users hold LuCI accounts. The PR:L requirement and niche deployment footprint substantially temper the network attack vector, making this a privilege-escalation-to-root concern rather than an unauthenticated internet-wide risk. |
| Exploit ScenarioDerived | A user with low-privilege LuCI credentials (for example a guest or delegated admin account on a shared OpenWrt router) opens the Tailscale login action and supplies a crafted loginserver value containing a substitution such as $(id>/tmp/x) or a reverse shell. When do_login builds and runs the command as root, the injected substitution executes, granting root command execution on the device. No public POC is identified in the provided data, but the low complexity makes weaponization straightforward once credentials are held. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 29, 2026
Authenticated root command injection in the OpenWrt LuCI community Tailscale app (luci-app-tailscale-community) lets a logged-in web UI user run arbitrary OS commands as root through the tailscale.do_login RPC method. Because the user-supplied loginserver and loginserver_authkey values are placed inside a double-quoted shell string, $() and backtick substitutions are evaluated by the outer shell, turning configuration input into command execution. Reported by VulnCheck with a published GHSA advisory; no public exploit identified at time of analysis and the issue is not in CISA KEV.
RemediationAI
Patch available per vendor advisory - upgrade luci-app-tailscale-community to the fixed release described in GHSA-xwc5-mx58-rh35 (https://github.com/openwrt/luci/security/advisories/GHSA-xwc5-mx58-rh35); the exact fixed version is not stated in the available data and should be confirmed from that advisory and the VulnCheck writeup (https://www.vulncheck.com/advisories/luci-app-tailscale-community-command-injection-via-tailscale-do-login-rpc). Until patched, remove or disable the luci-app-tailscale-community package so the tailscale.do_login RPC is no longer exposed (trade-off: loses web-UI Tailscale management, though the CLI tailscale up still works), and restrict LuCI access to trusted administrators by limiting accounts and binding the web interface to the LAN/management network rather than any WAN or Tailscale-exposed interface (trade-off: remote admins must use a VPN or jump host). Avoid granting LuCI logins to lower-trust users, since any authenticated account can reach the vulnerable RPC.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
LuCI is the web management interface for OpenWrt routers, and this is a community-maintained add-on that integrates the Tailscale mesh VPN. LuCI exposes server-side actions via rpcd RPC methods that execute under root on the device. The flaw is a classic CWE-78 OS Command Injection: the do_login handler builds a shell command by interpolating attacker-controllable loginserver and loginserver_authkey parameters into a double-quoted string, where the shell still performs command substitution ($(...) and backticks) before tailscale ever parses its arguments, so quoting at the argument level does not stop the outer shell from executing injected commands.
Know when Luci gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable RPC needs a low-privilege LuCI login (PR:L), injection is straightforward (AC:L), and root command execution yields full C/I/A impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
luci-app-tailscale-community contains a command injection vulnerability in the tailscale.do_login RPC method that allows authenticated users to execute arbitrary commands as root. The vulnerability exists because user-controlled loginserver and loginserver_authkey parameters are improperly quoted within a double-quoted shell command, allowing shell substitutions like $() to be evaluated by the outer shell before argument processing.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
Stored cross-site scripting in OpenWrt's LuCI web interface lets an adjacent-network attacker inject executable HTML/Jav
In OpenWrt LuCI through 0.10, the endpoints admin/status/realtime/bandwidth_status and admin/status/realtime/wireless_st
LuCI openwrt-22.03 branch git-22.361.69894-438c598 was discovered to contain a reflected cross-site scripting (XSS) vuln
OpenWRT LuCI version git-22.140.66206-02913be was discovered to contain a stored cross-site scripting (XSS) vulnerabilit
In OpenWrt LuCI git-20.x, remote unauthenticated attackers can retrieve the list of installed packages and services. Rat
OS command injection in OpenWrt's luci-app-dockerman grants any authenticated user holding only the read ACL full root-l
Root command injection in OpenWrt's LuCI web interface (luci-proto-openvpn through 0.11.1) lets an authenticated user wi
Authenticated delegated LuCI sessions that hold the luci-app-advanced-reboot read ACL can execute arbitrary commands as
Privilege escalation to root in OpenWrt's luci-app-samba4 (LuCI web interface) lets authenticated delegated users invoke
Unauthenticated path traversal in OpenWrt's luci-app-bmx7 package exposes arbitrary files on affected routers via the bm
Ban-list poisoning in OpenWrt's luci-app-banip (banIP) before 1.8.10 lets an unauthenticated remote attacker steer the a
Stored cross-site scripting in OpenWrt's luci-app-upnp lets an unauthenticated LAN client persist a JavaScript payload t
EUVD-2026-40171
GHSA-qr7m-7592-rcvx
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB