2019年十大開源WEB應用防火牆點評
隨着WEB應用的爆炸式成長和HTTPS加密的普及,針對網絡應用層的攻擊,像SQL注入、跨站腳本攻擊、參數篡改、應用平台漏洞攻擊、拒絕服務攻擊等越來越多,傳統的防火牆檢測功能失效,所以對於網站來說,部署一個WEB應用防火牆十分重要,這方面商業產品很多,開源的也不少,這里筆者經過大量搜索,整理出2019年十大免費的開源大神產品供大家參考。
1、ModSecurity
ModSecurity最開始是一個Apache的安全模塊,后來發展成為開源的、跨平台的WEB應用防火牆。它可以通過檢查WEB服務接收到的數據,以及發送出去的數據來對網站進行安全防護。
最厲害的是著名安全社區OWASP,開發和維護着一套免費的應用程序保護規則,這就是所謂OWASP的ModSecurity的核心規則集(即CRS),幾乎覆蓋了如SQL注入、XSS跨站攻擊腳本、DOS等幾十種常見WEB攻擊方法。
目前已經支持Nginx和IIS,配合Nginx的靈活和高效,可以打造成生產級的WAF,是保護和審核WEB安全的利器,很多商業的WAF也是根據其修改而來。
項目地址:https://github.com/SpiderLabs/ModSecurity
2 、HiHTTPS
hihttps是一款少有的完整源碼的高性能SSL WEB應用防火牆( SSL WAF),采用epoll模式支持高並發,並且兼容ModSecurity正則規則,特點是簡單高效實用,非常值得初學者收藏。
hihttps雖然簡單,但防護功能一應俱全,包括:漏洞掃描、CC &DDOS、暴力破解、SQL注入、XSS攻擊、防爬蟲等,還有完善的網站文件黑白名單機制精確阻斷攻擊。
項目地址:https://github.com/qq4108863/hihttps
3、OpenWAF
OpenWAF是基於Nginx_lua API分析HTTP請求信息,由行為分析引擎和規則引擎兩大功能引擎構成,其中規則引擎主要對單個請求進行分析,行為分析引擎主要負責跨請求信息追蹤。
規則引擎的啟發來自modsecurity及freewaf(lua-resty-waf),將ModSecurity的規則機制用lua實現。
基於規則引擎可以進行協議規范,自動工具,注入攻擊,跨站攻擊,信息泄露,異常請求等安全防護,支持動態添加規則,及時修補漏洞。缺點是復雜,不適合不熟悉Nginx和lua語言的開發者。
項目地址:https://github.com/titansec/OpenWAF
4、FreeWAF
FeeWAF是一款開源的WEB應用防火牆產品,其命名為FreeWAF,它工作在應用層,對HTTP進行雙向深層次檢測:對於來自 Internet的 攻擊進行實時防護,避免黑客利用應用層漏洞非法獲取或破壞網站數據,可以有效地抵御黑客的各種攻擊,如SQL注入攻擊、XSS攻擊、CSRF攻擊、緩沖區 溢出、應用層DOS/DDOS攻擊等;同時,對WEB服務器側響應的出錯信息、惡意內容及不合規格內容進行實時過濾,避免敏感信息泄露,確保網站信息的可靠性。但項目已經很久沒更新了。
5、ESAPI WAF
這是OWASP ESAPI 項目提供的一個開源WAF,基於J2EE實現,其主要利用XML的配置方式驅動防火牆。安裝時,在WEB.xml中將ESAPIWEBApplicationFirewallFilter配置為filter,在應用程序之前和之后處理輸入和輸入。
6、unixhot
unixhot是使用Nginx+Lua實現自定義WAF,一句話描述,就是解析HTTP請求(協議解析模塊),規則檢測(規則模塊),做不同的防御動作(動作模塊),並將防御過程(日志模塊)記錄下來,非常簡單。
項目地址:https://github.com/unixhot/waf
7、Java WAF
用Java開發的WAF很少,我們發現一個使用Java開發的API Gateway,由於WAF構建在開源代理LittleProxy之上,所以說WAF底層使用的是Netty。功能上支持安全攔截、各種分析檢測、腳本(沙箱)、流控/CC防護等。不會C語言,是Java愛好者的福音。
項目地址:https://github.com/chengdedeng/waf
8、 Naxsi
Naxsi 是一款基於Nginx模塊的防火牆,有自己規則定義,崇尚低規則。項目由C語言編寫,需要熟練掌握Nginx源碼的才能看懂。
項目地址:https://github.com/nbs-system/naxsi
9、X-WAF
X-WAF是一款適用中、小企業的雲WAF系統,讓中、小企業也可以非常方便地擁有自己的免費雲WAF。核心基於openresty + lua開發,waf管理后台:采用golang + xorm + macrom開發的,支持二進制的形式部署。
項目地址:https://github.com/xsec-lab/x-waf
10、VeryNginx
VeryNginx 也是基於 lua_Nginx_module(openrestry) 開發,實現了高級的防火牆、訪問統計和其他的一些功能。 集成在 Nginx 中運行,擴展了 Nginx 本身的功能,並提供了友好的 WEB 交互界面。
項目地址:https://github.com/alexazhou/VeryNginx/
評價:
1、目前商業防火牆基本千篇一律的Nginx模塊,很多在openrestry上做二次開發,真正完整源碼的很少,hihttps算一個。
2、C是應用軟件防火牆的首選語言,主要是C天生和系統底層結合、速度塊、編譯出來的東西不大、支持高並發請求等優勢。
3、HTTPS是加密是大勢所趨,傳統的HTTP明文網站很快會被淘汰,基於SSL 的WEB應用防火牆是未來的重點。
4、WEB應用防火牆未來最大的趨勢是用人工智能的方法,精准判斷未知漏洞、未知攻擊,總體來說,在國家非常重視網絡安全的背景下,這個行業的發展空間還很大。