WordPress 3.6-4.5.2 Authenticated Revision History Information Disclosure

漏洞危害

WP允许作者发布一种带密码验证的文章,该漏洞可绕过密码保护查看内容。

WordPress 3.6-4.5.2 Authenticated Revision History Information Disclosure_第1张图片

代码分析

官方修复方案,仅修改了检查的权限,将读权限改为写权限。
https://github.com/WordPress/WordPress/commit/a2904cc3092c391ac7027bc87f7806953d1a25a1

WordPress 3.6-4.5.2 Authenticated Revision History Information Disclosure_第2张图片

检查权限失败会break,此时 $redirect="edit.php",会跳到编辑文章的界面。

if ( ! empty( $redirect ) ) {
    wp_redirect( $redirect );
    exit;
}

如果验证权限成功,会将 $redirect 重置为false,从而未跳转而是直接显示请求的页面内容,导致加密的内容被输出。

漏洞利用

触发该漏洞的入口为wp-admin/revision.php所以要用户登入。

exp:
http://[WP-HOST]/wp-admin/revision.php?revision=[PAPER_ID]&action=view

WordPress 3.6-4.5.2 Authenticated Revision History Information Disclosure_第3张图片

你可能感兴趣的:(wordpress,代码分析,漏洞,渗透测试)