放心地种下你的webshell 之 webshell隐藏小记



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
拿到webshell以后的第一件事儿,就是顺手把webshell时间属性改为和同目录下其它文件相同的时间戳,一般在大马里或其它的一些webshell管理工具都提供了类似的功能
尽量放在那些程序员和管理都不会经常光顾到的目录中,比如:各种第三方工具(phpmyadmin)的一些插件目录,主题目录以及临时目录等等……
webshell所在目录层级自然是越深越好,平时网站不出问题的话,一般四五级目录下很少会被人注意到……
webshell的名字尽量不要太招摇,尤其是像带有shell,spy,hack,0day,love,shit……这种很典型常见的关键字(我们渗透最最终的目的还是希望拿到自己想要的东西而不被人察觉,不要因为自己的无知和愚蠢,而造成一些不必要的麻烦),……,在给webshell起名字的时候尽量模仿着当前目录的一些名字特征来取,以混淆视听,比如,我们在目标网站目录中,发现有个叫'node.tpl.php'的文件,那我们就可以模仿他取个叫'plugins.tpl.php'的名字,这样相对容易蒙混过关
webshell里面尽量不要用带有类似eval这种的危险特征,如果是在linux中管理员只需要find grep 一句话就能锁定特征,除了eval,还有比如:exec,system,passthru,shell_exec,assert……这些函数都最好不要用,你可以尝试创建个自定义函数,然后调用它,函数里面可以接你的webshell参数,不仅能在一定程度上延长webshell的存活时间,也加大了管理的查找难度,可以暂时性躲避一些功能比较简陋的waf查杀,此外,我们也可以使用一些类似:call_user_func,call_user_func_array,诸如此类的回调函数特性来想办法构造我们的webshell,关于webshell免杀,后续会专门再说,这里先提一嘴
你也可以尝试直接把一句话函数插到目标网站自己的脚本文件里面,当然最好是一个非常不起眼的地方,比如:函数库文件,配置文件里面等等,然后你再到另一个导该函数库的脚本文件中去调用那个一句话…
如果已经拿到服务器权限,可以把网站日志中的所有关于webshell的访问记录以及渗透时造成的一些网站报错记录以及你自己的一些ip访问日志,顺手删掉或者替换都行,如果是linux那就很好办了,sed或者egrep几句话就搞定了,如果windows,嫌麻烦就清空吧,关于记录清理也是个比较大的问题,后续单独说
尝试利用静态文件(比如,各类图片,css,js,html,txt文件等等)隐藏一句话,然后用.htaccess 进行解析,不这过需要目标开启重写才行,例如.htaccess实现自解析,确实比较老套了,基于.htaccess实现的变种其实还有非常多,这里就不一一说了
利用php.ini或者user.ini来解析你的webshell,想必大家也已经用的比较多了,烂大街了
如果是大马的话,尽量把里面的一些注释和作者信息全部都去掉,比如intitle能搜到的各种信息等等,最好先通读代码,把里面的webshell箱子剔除一下,推荐用开源的大马,方便定制,记住,我们的webshell尽量不要编码,因为编码也并不能很好解决waf的问题,你知道的,正常的脚本文件是绝对不会编码的,一旦稍微有经验的程序员或者管理看到这些东西,肯定就会被发现,还有,大马中一般都会带有pass或者password类的字符,建议把这些敏感字段全部换成别的,因为管理依然可以通过这种方式快速定位到我们的webshell
养成好习惯,为了防止权限很快丢失,最好再上传几个备用webshell到不同的目录位置,注意,每个webshell的路径和名字千万不要都一样更不要在同一个目录下,多跳几层,传上去以后确定shell正常访问就可以了,不到万不得已不用去访问它,防止留的日志太多,暴露自己
在你已经有机器权限的情况下,还可以看看管理员还有没有自己写的一些webshell监测脚本,比如一些非常可疑的硬链接
上传图片马,然后再到另一个不起眼的地方尝试去包含它,也是烂大街的东西了,想必大家也已非常熟悉
如果有可能的话,可以抽空审计下目标代码,尝试在正常的代码中利用回掉的方式构造执行自己的webshell,这种没有任何文件的后门确实比较隐蔽
脚本执行完以后进行自删除,然后直接把webshell代码驻留在内存中,当然,这种方式有个非常大的弊端,一旦目标重启web服务就废了
尝试给webshell文件设置一些特殊属性
更多,待续……



小结:
    上面这些都是自己根据实际渗透中的一些经验以及基于前人的基础上,顺手整理的,不过,无疑中发现个很有意思的事情,不知道是哪位朋友拿着自己曾经残缺的笔记,发了出去,然后网上转的到处都是,嘿嘿……不过没关系啦,反正我在乎的只是技术本身,除此之外的东西,不值一提,当然,基于上面思路的变种肯定还会有非常非常多,也期待能和大家一起多交流,待续…