2013-08-23 115 views
0

我的PHP主機注入未知代碼。我不發佈整個文件,PHP處理代碼而不解碼

$ x0d =「b \ x61se \ x364 \ 137dec \ x6f \ 144 \ 145」;

PHP如何處理這行代碼而沒有任何函數來解碼。

\ x61 = a,什麼是\ x61? Web服務器如何理解這個角色?我嘗試用HEX/OCT編碼還不能提供我\ X61

我給裏面的代碼的例子,下面的代碼將執行sha1

$a = "s\x68\x61\061"; 
echo $a("hello"); 

*整個文件沒有任何eval()功能在裏面。

回答

1

好的。我提到這個post後,我明白它是PHP字符串類型。

http://www.php.net/language.types.string

轉義字符在雙引號

[0-7] {1,3}:指定正則表達式中的字符序列爲八進制符號表示的字符

\ x [0-9A-Fa-f] {1,2}:與正則表達式匹配的字符序列是以十六進制表示的字符

十六進制可以從這裏引用: http://www.ascii.cl/