SAMLSSO插件认证绕过CVSS9.8CVE-2026-15981

admin 2026-08-04 06:33:22 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: WordPress插件miniOrangeSAML2.0SSO(≤5.4.4)存在严重认证绕过漏洞(CVE-2026-15981,CVSS9.8)。根本原因是PHP松散比较将openssl_verify()返回的-1视为true,导致任意构造的SAML响应可绕过签名验证。攻击者无需凭证即可获取管理员会话cookie。建议立即升级至5.4.5或以上版本。 综合评分: 90 文章分类: 漏洞分析,WEB安全


cover_image

SAML SSO 插件认证绕过 CVSS 9.8 CVE-2026-15981

原创

ikun ikun

爱坤sec

2026年7月29日 02:30 马来西亚

在小说阅读器读本章

去阅读

⚠️ SAML SSO 插件认证绕过 CVSS 9.8

CVE-2026-15981  miniOrange SAML 2.0 SSO ≤ 5.4.4  无需登录直接接管管理员

⚠️ CVSS 9.8 CRITICAL

攻击向量:网络 | 攻击复杂度:低 | 所需权限:无 | 用户交互:无

漏洞描述

WordPress 插件 miniOrange SAML 2.0 Single Sign On – SSO Login(以下简称 SAML SSO)在 ≤ 5.4.4 版本中存在严重认证绕过漏洞。

根本原因:插件在验证 SAML 响应签名时,使用了 PHP 的松散比较(loose comparison)来判断 openssl_verify() 的返回值。该函数在签名验证失败时会返回 -1,而松散比较将 -1 视为 true,导致任意构造的恶意 SAML 响应都能通过签名校验。

攻击者可构造一个特殊的 SAMLResponse 直接获取任意用户的 WordPress 会话 cookie,无需任何凭证即可登录管理员账户。

影响版本

插件:miniOrange SAML 2.0 Single Sign On – SSO Login

版本:≤ 5.4.4

类型:WordPress 插件

CWE:CWE-287(认证不当)

修复版本

SAML SSO ≥ 5.4.5

FOFA 语法

body="miniOrange" && body="saml" && body="wp-content/plugins"

漏洞分析

问题出在 mo_saml_validate_signature() 函数的签名验证逻辑中:

// PHP 代码片段
$verify = openssl_verify($data, $signature, $pubKey, OPENSSL_ALGO_SHA256);

// 松散比较:-1 被当作 true
if ($verify == true) {
    // 通过验证,设置认证 cookie
    wp_set_auth_cookie($user->ID, true);
}

openssl_verify() 返回值说明:

1  = 签名验证通过
0  = 签名验证失败
-1 = 错误(如算法不匹配、密钥格式错误等)

使用 == true(松散比较)时,PHP 会将 -1 转换为布尔值 true。攻击者只需构造一个带有错误签名算法的 SAML 响应,使 openssl_verify() 返回 -1,即可绕过认证。

漏洞复现

攻击流程

Step 1. 构造恶意的 SAMLResponse XML
        包含损坏的签名(使用无效算法或格式错误的密钥)

Step 2. POST 到 WordPress SAML 回调端点
        POST /wp-login.php?action=miniorange-saml-response
        SAMLResponse=<base64编码的恶意SAML响应>

Step 3. 插件调用 openssl_verify() 验证签名
        由于使用了无效算法,openssl_verify() 返回 -1

Step 4. 松散比较将 -1 视为 true
        if ($verify == true) → 通过!

Step 5. 插件调用 wp_set_auth_cookie()
        攻击者获得管理员会话 cookie,无需密码即可登录

PoC 使用

git clone https://github.com/Nxploited/CVE-2026-15981.git
cd CVE-2026-15981
pip install -r requirements.txt

python CVE-2026-15981.py https://target.com

PoC 仓库

https://github.com/Nxploited/CVE-2026-15981  (Nxploited)

参考链接

NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-15981
PoC: https://github.com/Nxploited/CVE-2026-15981

⚠️ 安全提示

本文仅用于安全研究与学习目的。请勿用于非法用途。请在授权环境中测试。

— EOF —


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:爱坤sec ikun ikun《SAML SSO 插件认证绕过 CVSS 9.8 CVE-2026-15981》

评论:0   参与:  0