RIPS: 自動分析 PHP 程式碼中的安全漏洞
阿恆
系統開發員整天提心吊膽程式有否安全漏洞,用人手檢查程式碼非常費時失事,加上限於經驗和知識,總難免掛一漏萬,Johannes Dahse 開發的 RIPS 把這種悶蛋的檢查工作自動化,可能對你有幫助。
RIPS 可以做甚麼?
根據官方網站的資料,RIPS 透過分析 PHP 程式碼,可以徵測以下安全漏洞:
- 執行程式碼 (code execution)
- 執行命令 (command execution)
- 跨網站攻擊程式 (cross site scripting)
- 標頭注入攻擊 (header injection)
- 檔案洩露 (file disclosure)
- 檔案包含 (file inclusion)
- 檔案操作 (file manipulation)
- LDAP 注入攻擊 (LDAP injection)
- SQL 注入攻擊 (SQL injection)
- POP 反序列化 (unserialize with POP)
- XPath 注入攻擊 (XPath injection)
- 其他
其他類似的工具
透過分析程式碼來徵測安全漏洞,RIPS 可能是第一個。其他類似的工具例如 W3AF、Subgraph Vega、Netsparker 等等,都是透過模擬瀏覽器操作向網站搜尋及發送特別設計的 URL 和表單資料,來政策安全性漏洞。
發展狀況
據原創者 Johannes 的個人網誌,他使用 RIPS 參與 The Gallery Project (一個用 PHP 寫成的圖片庫管理系統)一個有獎的尋找安全漏洞競賽,發現到三個漏洞,贏得 800 美元獎金。
RIPS 自從 2013 年 2 月發表版本 0.54 後便沒有更新,Johannes 在網誌上表示,現時 RIPS 的架構窒礙了它的進一步開發,其中對 PHP 語言的靜態分析特別需要動大手術,新版本已經如火如荼進行,雖然尚未能向外公開,但內部測試顯示它的效能比現在的版本更強大,功能更多,錯誤率更低。