luci-app-travelmate - 通过 UCI 脚本参数的任意命令执行 漏洞概述 CVE: CVE-2026-58652 CVSS: 7.7 CVSS v4 Vector: CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:NVC:H/VI:H/VA:H/SC:N/SI:N/SA:N CWE: CWE-78 Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') 日期: 7/2/2026 严重性: HIGH 影响: luci-app-travelmate <= 2.4.5-r3; travelmate <= 2.4.5-r3, 2.4.6-1 参考: - GitHub Security Advisory: GHSA-p35r-3323-6q91 - https://github.com/openwrt/luci/commit/f85102548ee8325b1d581a0327b210b5f7670829 - https://github.com/openwrt/luci/commit/491f1df06645c4e07576d4a9f0622e9ce6d300c - https://github.com/openwrt/luci/commit/71d92bcc9edbcf95858c8e82a8ff5d5750005a2 - https://github.com/openwrt/luci/commit/0627b412e63a760c4bc9c845b73d48f33ac10 - https://github.com/openwrt/luci/commit/06e457a1a76a9010195e6ea6fc0b8e6e3b07f71 信用: ZwCrazyThursday 描述: luci-app-travelmate(和 travelmate 包)包含一个权限提升漏洞:持有 luci-app-travelmate 写 ACL 的 LuCIpcd 会话被授予 config-write UCI 写访问权限以访问 travelmate 配置。虽然 LuCI UI 将自动登录脚本选择器限制为 /etc/travelmate/*.login,但这只是一个前端限制。后端 travelmate 服务(以 root 运行)读取原始 UCI 'script' 和 'script_args' 值并执行配置的脚本路径,当 captive-portal auto-login 分支(f_check() 在 travelmate-functions.sh 中)被触发时。具有委托写权限的攻击者可以设置脚本为 /bin/sh 和 script_args 以攻击者控制的参数,导致以 root 身份执行任意命令。在 luci-app-travelmate/travelmate 2.4.5-r3 中确认;sink 仍然存在于 travelmate 2.4.6-1 中,且没有修补版本。 影响范围 luci-app-travelmate <= 2.4.5-r3 travelmate <= 2.4.5-r3, 2.4.6-1 修复方案 目前没有已知的修补版本。