基于PHP的應(yīng)用面臨著各種各樣的攻擊:
XSS:對(duì)PHP的Web應(yīng)用而言,跨站腳本是一個(gè)易受攻擊的點(diǎn)。攻擊者可以利用它盜取用戶信息。你可以配置Apache,或是寫(xiě)更安全的PHP代碼(驗(yàn)證所有用戶輸入)來(lái)防范XSS攻擊
SQL注入:這是PHP應(yīng)用中,數(shù)據(jù)庫(kù)層的易受攻擊點(diǎn)。防范方式同上。常用的方法是,使用mysql_real_escape_string()對(duì)參數(shù)進(jìn)行轉(zhuǎn)義,而后進(jìn)行SQL查詢。
文件上傳:它可以讓訪問(wèn)者在服務(wù)器上放置(即上傳)文件。這會(huì)造成例如,刪除服務(wù)器文件、數(shù)據(jù)庫(kù),獲取用戶信息等一系列問(wèn)題。你可以使用PHP來(lái)禁止文件上傳,或編寫(xiě)更安全的代碼(如檢驗(yàn)用戶輸入,只允許上傳png、gif這些圖片格式)
包含本地與遠(yuǎn)程文件:攻擊者可以使遠(yuǎn)程服務(wù)器打開(kāi)文件,運(yùn)行任何PHP代碼,然后上傳或刪除文件,安裝后門(mén)??梢酝ㄟ^(guò)取消遠(yuǎn)程文件執(zhí)行的設(shè)置來(lái)防范
eval/assert:這個(gè)函數(shù)可以使一段字符串如同PHP代碼一樣執(zhí)行。它通常被攻擊者用于在服務(wù)器上隱藏代碼和工具。通過(guò)配置PHP,取消eval等函數(shù)調(diào)用來(lái)實(shí)現(xiàn)
Sea-surt Attack(Cross-site request forgery,CSRF??缯菊?qǐng)求偽造):這種攻擊會(huì)使終端用戶在當(dāng)前賬號(hào)下執(zhí)行非指定行為。這會(huì)危害終端用戶的數(shù)據(jù)與操作安全。如果目標(biāo)終端用戶的賬號(hào)用于管理員權(quán)限,整個(gè)Web應(yīng)用都會(huì)收到威脅。
這里介紹上述加粗的幾種攻擊的方法
一、各種webshell
隨著業(yè)務(wù)量的增大,越來(lái)越多的黑客來(lái)攻擊掃描,網(wǎng)站安全性日益重要,一不留神就被黑客控制了服務(wù)器,最常見(jiàn)的方式就是通過(guò)POST請(qǐng)求來(lái)上傳木馬文件,從而達(dá)到可以執(zhí)行任意命令,如果被控制就大事不妙了
所以還是要正視服務(wù)器的安全
最流行的一種后門(mén)叫做一句話木馬,其形式如下所示: