PHP後門的隱藏技巧測試報告
最近很多朋友都在問我是否能把我那一句話木馬隱藏到HTML或圖片裡,其實把一句話木馬插入到PHP檔案中就已經很隱蔽了,如果說硬是要放到HTML檔案或圖片裡,就接著往下看這篇的篇測試報告吧。要知道如果光把PHP語句放到圖片裡是無論如何也不能執行的,因為PHP只解析擴展名為php的檔案。所以說要能使隱藏在圖片裡的PHP語句執行。我們就的藉助PHP中的調用函式 :include 、require 等。
我們還記得前些日子把木馬隱藏到圖片的文章吧。也就是在PHP檔案里用include("x.gif")這樣的語句來調用隱藏在圖片的木馬語句。ASP中語句也類似。看似非常隱蔽但直接調用圖片對稍微懂點PHP的人就不難發現可疑之處。由於URL 里用GET方式很難傳遞參數,這就使得插入木馬的性能得不到發揮。
Include 函式在PHP中使用的比較頻繁,所以引起的安全問題也實在太多,例如PHPWIND1.36的漏洞就是因為include後面的變數沒做過濾引起的。由此我們就可以構造類似的語句來插入到PHP檔案中。然後把木馬隱藏到圖片或HTML檔案里,可以說隱蔽性就更高了。如在phpwind論壇里插入下面的語句: 一般管理員是無法看出來的。
有了include 函式來輔助幫忙我們就可以把PHP木馬隱藏到 諸如 txt、html和圖片檔案等很多類型的檔案里來了。因為txt、html和圖片檔案這三種類型的檔案最無論在論壇還是文章系統里是最為常見的了,下面我們就依次來做測試。
首先建立一PHP檔案test.php 檔案內容為:
$test=$_GET['test'];
@include 'test/'.$test;
?>
Txt檔案一般都是說明檔案,所以我們把一句話木馬放到目錄的說明檔案里就OK了。隨便建立一個TXT檔案t.txt。我們把一句話木馬貼上到t.txt檔案里。然後訪問 http://localhost/test/test.php?test=../t.txt 如果你看到t.txt的內容就證明Ok了, 然後把在lanker微型PHP後門客戶端 木馬地址添入 http://localhost/test/test.php?test=../t.txt 密碼里添入cmd就可以了,執行返回的結果都可以看到。
對於HTML的檔案,一般都為模版檔案。為了使插入到HTML的檔案的木馬能被調用執行而且不被顯示出來,我們可以在HTML里加入一個隱藏屬性的文本框 ,如: 然後使用方法同上。執行的返回結果一般都可以查看源檔案看到。 如使用查看本程式目錄功能。查看源檔案內容為 我可以得到目錄為 C:\Uniserver2_7s\www\test。
下面我們說說圖片檔案,要說最為毒的一招莫過於把木馬隱藏到圖片裡。我們可以直接對一個圖片進行編輯,把插入到圖片末尾
經測試一般都不會對圖片造成影響。然後同樣方法客戶端木馬地址添入
我們查看PHP環境變數 返回的是結果是原圖片。
這裡可能要和我們想像的結果有些差距了,其實命令已經運行了,只是返回的結果看不到而已,因為這是真正的GIF檔案,所以是不會顯示返回結果的,為了證明是否真的執行了命令我們 執行上傳檔案命令。果不出所料,檔案已經成功上傳到伺服器上。這樣偽造的優點是隱蔽性好。缺點也自然不用說了是沒回顯。如果你想看到返回的結果,那就拿出記事本偽造一個假的圖片檔案吧。
到這裡就基本測試完了,怎樣隱蔽PHP後門就看你自己的選擇了。