Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Wordpress_cve-2019-9787_defense — 这是 WordPress 上 cve-2019-9787 的重复出现以及一种基于哈希的防御。 | Kitploit
工具/GitHubGitHub/sijiahi/wordpress_cve-2019-9787_defense
漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试
GitHubsijiahi/wordpress_cve-2019-9787_defense

Wordpress_cve-2019-9787_defense

这是 WordPress 上 cve-2019-9787 的重复出现以及一种基于哈希的防御。

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
35年前尚未审核

Wordpress_cve-2019-9787_defense

注意

这是由 Sijia Zhang(https://github.com/sijiahi) 和 Bowen Zhou(https://github.com/KonjakZhou) 共同完成的项目。

**前提条件:

1 复现攻击:

root@kitploit:~
- 在 http://localhost/wp-admin/ 下配置并安装 Wordpress5.0;
- 以管理员身份登录 WordPress,并发布至少一篇文章;
- 打开 mal.html(需配置在其他域名下,或直接在浏览器中以文件形式打开),点击提交请求(submit request)。
- 若成功,将被重定向到包含“cilick me”评论的文章页面,当鼠标悬停在该评论上时,会弹出提示窗口表示攻击成功。

2 防御:

root@kitploit:~
- 替换 /wp-includes 目录下的文件,并在 /wp-includes/js 中添加 JavaScript 脚本。
- 将模拟文章文件放置在 WordPress 域名下,打开模拟文章页面以测试 PINGBACK/TRACEBACK 功能。
- 若成功,将被重定向到包含“legal anchor”评论的文章页面;
- 从另一个域名打开 mal.com,测试 CSRF 攻击。

**修改的代码:

  • comment-template: JS 脚本 添加了提取、计算和添加 doggyNonce 的脚本;
  • functions: PHP 脚本 添加了提取属性的脚本;
  • pluggable: PHP 脚本 添加了验证 doggyNonce 的脚本。
  • comment: PHP 脚本 修改了请求处理逻辑。

**这是对 WordPress 上 CVE-2019-9787 的复现及基于哈希的防御。

0 简介:

为了防御 WordPress 上的 CVE-2019-9787,引入了一个名为 doggyNonce 的新字段。 当管理员尝试使用 PINGBACK 功能,且无法提供 _wp_unfiltered_html 时,我们要求管理员使用其 cookie 对其上传的标签属性进行签名。这将帮助我们防御 CSRF 攻击,并确保上传标签属性的完整性。

1 防御:

WordPress 自动接受没有正确 CSRF token 的评论作为 PINGBACK 和 TRACEBACK 请求。使用白名单过滤器过滤该评论,提取 href 字段并重新构建“a 标签”。 为了防御此漏洞,主要考虑两点: 1. 服务器无法区分非法的 CSRF 请求与合法的 PINGBACK/TRACEBACK 请求。 2. CSRF 攻击者在“a 标签”的 href 字段中注入代码,标签属性在过滤后被更改。 doggyNonce 是一个依赖于 *cookie(wp-setting-time-$uid) 和 *上传的 href 属性 的哈希值: doggyNonce=Hash(*上传的 href 属性, *cookie) 需要指出的是,doggyNonce 扮演了管理员对上传 href 属性签名的角色。

**特别提醒

root@kitploit:~
1. 'mal.html' 用于模拟 CSRF 攻击,因此应放置在 WordPress 域名之外的域名下;
2. 'post.html' 用于模拟 PINGBACK/TRACEBACK 功能,因此应放置在 WordPress 的同一域名下;
下载工具