近年來(lái)隨著 Web 應(yīng)用程序的盛行,Web 安全逐漸成為社會(huì)關(guān)注的焦點(diǎn),網(wǎng)絡(luò)安全漸成一項(xiàng)必須要關(guān)注的問(wèn)題。而其中 Web 安全漏洞的發(fā)現(xiàn)與修復(fù)是保證網(wǎng)絡(luò)安全的重要工作之一,其中之一就是審計(jì) Web 應(yīng)用程序。而本文主要就是針對(duì)一種開源 PHP 應(yīng)用程序?qū)徲?jì)工具 Fothee 的使用與介紹。
Fothee 是一款基于命令行的 PHP 應(yīng)用程序?qū)徲?jì)工具,其使用簡(jiǎn)潔,易于上手,能夠在短時(shí)間內(nèi)對(duì) Web 應(yīng)用程序進(jìn)行基礎(chǔ)進(jìn)行審計(jì),幫助用戶發(fā)現(xiàn)潛在的漏洞隱患。使用 Fothee 的方式很簡(jiǎn)單,只需要在終端輸入以下命令:
php fothee.php -t "目標(biāo)網(wǎng)站URL" -c "cookie數(shù)據(jù)"其中 -t 參數(shù)指定要審計(jì)的目標(biāo)網(wǎng)站,-c 參數(shù)指定傳遞的 Cookie 數(shù)據(jù),詳細(xì)使用方法可在 Fothee 的官方Github頁(yè)面中查看。
Fothee 可以審計(jì) Web 應(yīng)用程序的代碼中存在的漏洞,如 XSS、SQL注入、文件上傳、文件包含等漏洞。例如,在對(duì)一個(gè)存在 SQL 注入漏洞的應(yīng)用進(jìn)行審計(jì)時(shí),使用 Fothee 輸入命令后,輸出結(jié)果如下:
▼ SQL Injection Check Type: Union Based SQL Injection Parameter: $_GET['id'] Evidence: [id]' order by 1-- Quote: http://test/test.php?id=[id] Type: Union Based SQL Injection Parameter: $_GET['age'] Evidence: [age] '>0 order by 1-- Quote: http://test/test.php?age=[age] Type: Union Based SQL Injection Parameter: $_GET['id'] Evidence: [id]' and 1=1 union select 1,2,3,4,version()-- Quote: http://test/test.php?id=[id]
可以看到,F(xiàn)othee 掃描出這個(gè)應(yīng)用程序中存在的三個(gè) SQL 注入漏洞分別出現(xiàn)在 $_GET['id']、$_GET['age'] 參數(shù)的傳遞中。對(duì)于開發(fā)人員,這些提示可以幫助其發(fā)現(xiàn)程序中的問(wèn)題,及時(shí)修正;而對(duì)于安全人員來(lái)說(shuō),可以通過(guò)分析這些結(jié)果,找出對(duì)應(yīng)漏洞的利用方式,并提出有效的排除方案。Fothee 的輸出結(jié)果直接指向了漏洞所在位置,讓用戶可以省去繁瑣的手動(dòng)查找。
綜上所述,F(xiàn)othee 是一款非常實(shí)用的審計(jì)工具,能夠快速掃描出 PHP 應(yīng)用程序中存在的漏洞。但是,它的度量指標(biāo)比較簡(jiǎn)單,可能無(wú)法識(shí)別出一些復(fù)雜的漏洞。所以一般來(lái)說(shuō),為了能夠更好地確保 Web 應(yīng)用程序的安全性,需要搭配使用多個(gè)審核工具,以發(fā)現(xiàn)不同的漏洞類型,從而達(dá)到更全面和有針對(duì)性的審計(jì)效果。