pixy php,Pixy - PHP 原始码的弱点分析工具 | 鬼仔's Blog鬼仔's Blog
來源:資安之眼
XSS 及 SQL injection 已成為當(dāng)前網(wǎng)頁應(yīng)用程式的主要問題,本站也介紹過一些免費(fèi)的小工具,像是網(wǎng)頁程式執(zhí)行后的 Wapiti 滲透工具,執(zhí)行中的 PHPIDS 入侵偵測工具,而這次的工具則是執(zhí)行前的 Pixy原始碼檢測工具。
Pixy是一套以 Java 開發(fā) PHP 原始碼掃描工具,主要用以自動發(fā)掘 XSS 及 SQL injection 問題,只要作業(yè)系統(tǒng)已安裝了Java SE6,解壓縮后即可執(zhí)行,在 run-all.pl (如果你的環(huán)境有安裝 Perl) 或是 run-all.bat (僅供Windows) 后面接上你的 PHP路徑檔名即可進(jìn)行分析,而結(jié)果將以文字報告形式在畫面上輸出,提供摘要及可能的弱點(diǎn)列表,針對弱點(diǎn)部份,由于作者期望能讓使用者瞭解問題發(fā)生的前后因果關(guān)系,因此採用了 dotty 格式的圖形描述語言輸出。
以下面的 php 程式為例,$y 的問題是衍生于 $x 取得未適當(dāng)過濾的輸入值:
$x = $_GET['x'];
$y = 'hello ' . $x;
echo $y;
?>
這樣的弱點(diǎn)關(guān)系圖會在分析后產(chǎn)生于 graphs 目錄中,并提供精簡的 min 及詳盡的 dep 版本,可下載 Graphviz,并利用其中的 dot 工具將 .dot 檔案轉(zhuǎn)換(do layout)為其他格式的圖檔。
在分析的過程中,程式會自動載入 include、require 的 php 檔案一併分析,如果你原本的程式是利用網(wǎng)站的路徑,可能就要視狀況修改為相對路徑或硬碟路徑。而在分析所得報表中,xss 漏洞會以類似下列方式羅列:引用
Vulnerability detected!
– conditional on register_globals=on (此弱點(diǎn)僅存在于 register_globals 開啟時)
– xxx.php:15 (弱點(diǎn)存在檔名及行號)
– Graph: xss1 (關(guān)系圖產(chǎn)生于 graphs\xss_xxx.php_1_dep.dot)
另外分析過程中,pixy 會將 PHP 內(nèi)建函數(shù)之輸出認(rèn)定為可能存在弱點(diǎn),若因此在分析時產(chǎn)生過多的警告,可自行修改 config\model_xss.txt,定義內(nèi)建函數(shù)之風(fēng)險,設(shè)為 0 即認(rèn)定該函數(shù)沒有問題。
如果還是覺得麻煩,作者也提供了網(wǎng)頁模式,可直接貼上或上傳你的原始碼,并立即取得弱點(diǎn)分析及關(guān)系圖,但這種方式僅提供 XSS 分析,而不包含 SQL injection 的部份,此外當(dāng)然也無法處理程式中的 include 檔案。
下載地址:http://pixybox.seclab.tuwien.ac.at/pixy/index.php
總結(jié)
以上是生活随笔為你收集整理的pixy php,Pixy - PHP 原始码的弱点分析工具 | 鬼仔's Blog鬼仔's Blog的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GitHub是什么样的网站 (分享```
- 下一篇: 摄影测量与计算机视觉--历史与发展