PHP 5.4是PHP語言的一個重要版本,但它也被破解了。原本作為開源語言的PHP 5.4被廣泛應用于Web開發和服務器端編程。但是,低成本的攻擊技術讓黑客有了進入開發者所付出巨大努力的軟件的機會。PHP 5.4破解也不例外。
PHP 5.4包括了許多重要的安全功能,例如一些強制的安全設置,SSL連接以及對數據庫安全方面的改進等。但從長遠來看,題外話并不重要,因為如果大規模網絡攻擊變得可行,那么破解PHP 5.4的數量最終也會增加。
在PHP 5.4中,為了防止攻擊者利用變量過多的情況下發起XSS攻擊,增強的對全局變量的管理。但是,經過簡單的代碼解析,這些變量過濾器可以很容易地繞過。例如:
<?php
$str = $_POST["str"];
$str = filter_var($str, FILTER_SANITIZE_STRIPPED);
eval($str);
?>
通過eval()函數執行任意代碼的攻擊者可以輕松地繞過由filter_var函數過濾的代碼,因為它只是刪除了字符串中的非法字符并返回。但是不管是$argv還是$_POST數據,它們都可能會被攻擊者利用。
除了攻擊者利用代碼執行漏洞,還有利用上傳文件漏洞的方式,向服務器上的敏感目錄上傳惡意代碼。偽造文件和字體這類攻擊已經非常老套,同樣,黑客可以利用上傳漏洞輕易獲得PHP文件,并且在使用被破解的PHP版本的服務器上執行該文件。例如:
<?php
if(isset($_GET['upload'])){
$name = $_GET['upload'];
move_uploaded_file($_FILES["file"]["tmp_name"],$name);
include($name);
}
?>
雖然以上PHP代碼的操作并不是直接執行由攻擊者上傳的文件,該文件需要先被上傳到服務器上,通過抓取符合條件的請求并其作為GET參數傳遞,黑客可以獲得任意系統權限。因此,其他因為上傳漏洞而獲得的腳本在PHP 5.4中都需要加強防范。
綜上所述,PHP 5.4雖然是最受歡迎的Web開發語言之一,但也飽受惡意攻擊的困擾,不斷地遭受破解。因此,開發者和服務器管理員需要密切關注最新版本的PHP和安全注意事項,并采取各種措施保護服務器不受攻擊。