CVE-2026-41255CKAN是一个开源数据管理系统,用于驱动数据中心和门户。在2.10.10和2.11.5版本之前,系统存在CSRF保护绕过漏洞。由于Flask-WTF的CSRFProtect机制被误用,攻击者可以通过未经身份验证的请求访问特定视图,从而在服务器进程的生命周期内错误地将该端点标记为不需要CSRF保护。此缺陷允许攻击者诱导受害者执行非预期的操作,破坏系统完整性。
该漏洞源于CKAN框架对Flask-WTF库中CSRFProtect组件的不当调用。CSRFProtect原本设计用于静态配置,但在CKAN的实现中,其exempt(豁免)属性被错误地处理为flask_app中间件的模块级变量。当攻击者发送一个未经身份验证的请求或使用特定令牌访问受保护的视图端点时,系统会将该端点错误地标记为“不需要CSRF保护”。由于这种状态改变是进程级别的(例如uWSGI的一个worker进程),一旦被设置,该端点在进程重启前将永久失去CSRF保护。攻击者可利用此机制,首先发送探测请求禁用目标端点的防护,随后诱导已认证的管理员点击恶意链接,从而绕过CSRF校验执行未授权操作,如修改数据或添加管理员账号。