今天我們來聊一下那些又黑又惡心的PHP小偷。對于從事PHP開發的工程師來說,小偷是一個極其頭疼的問題。因為當我們做完一個項目,把代碼部署到服務器上之后,代碼被黑客盜取的情況時有發生。那么我們這些PHP開發工程師究竟如何應對這些PHP小偷呢?下面,我們就來一一探討一下!
在PHP的開發中,我們常用的一些數據庫連接,比如mysql_connect(),mysql_query()等,都有可能被小偷所利用。我們比較常見的是竊取這些數據庫連接的用戶名、密碼等信息。因此在開發中,我們必須要加強對數據庫連接信息的保護。比如可以在數據庫連接后立即銷毀連接字符串,或者使用加密算法對其進行加密,從而避免其他人的竊取。
$dbconn = mysql_connect( $server, $username, $password, $new_link, $client_flags ); mysql_query( "SET NAMES 'utf8'" ); mysql_select_db( $database, $dbconn ); mysql_close( $dbconn );
此處我們可以使用一些函數來保護數據庫連接字符串。例如:
function secure_db_conn( $server, $username, $password, $new_link = true, $client_flags = 0 ) { $conn = mysql_connect( $server, $username, $password, $new_link, $client_flags ); mysql_query( "SET NAMES 'utf8'" ); mysql_select_db( $database, $conn ); $password = sha1( $password ); $conn_string = $server . '|' . $username . '|' . $password . '|' . $database; return $conn; }
這樣,我們就可以通過這個函數來生成字符串連接數據庫。這個字符串在包裝成擴展名為.inc文件,放在比如/header文件夾下等等,防止被非法獲取。
當然,小偷還有其他的方式。比如時常有些程序在搭建的瞬間有些漏洞,可以被黑客通過輸入一些特殊字符可以在無需數據庫密碼就可以訪問SQL數據庫。這樣,我們在開發中要非常注意各項參數的設置,要確保參數輸入正確。同時,我們還要重視代碼中的安全問題,加強對其的保護,從而最大限度地保護我們的客戶的數據庫資料的安全。
對于已被PHP小偷入侵的網站,我們可以考慮升級PHP版本,這樣可以利用更高級的安全性更強的PHP運行環境和更完善的PHP安全函數,盡可能地防止小偷的入侵打擊。同時我們還可以考慮加入PHP加密插件,比如lsencrypt(http://www.lsencrypt.com/),來增強對信息的保護和加密。
維護php程序的安全是一個戰略性問題,在開發過程中,我們還需要充分考慮如何消除潛在的安全問題。我們可以通過常規的XSS、SQL注入、Cross-Site Request Forgery (CSRF)等技術來保護我們的程序安全。保護程序安全是一個持久性的工作,不斷地進行系統完善,只有這樣才能更好地防止小偷的偷竊行為。
總的來說,PHP小偷會對我們的客戶數據資料造成非常大的威脅。因此,我們應該時刻關注安全問題,提高安全性和管理能力,并隨時關注程序的行為,及早發現和消除安全隱患,及時處理小偷的偷盜行為。只有這樣,我們才能保護我們開發中的代碼免受小偷的威脅。