modsecurity黑白名單以及規則檢測模式配置
( 一、黑白名單)
百度ip, 查詢出口 ip ,編輯 /usr/local/nginx/conf/modsecurity/modsecurity.conf 檔案 ( 也可以自定義一個檔案 , 在自定義檔案里加入規則集,防止破壞原生的 modsecurity.conf 檔案 ) 。
# 黑名單攔截規則:
SecRule REMOTE_ADDR "@ipMatch 220.112.124.125" "id:1238,phase:1,log,auditlog,deny,status:403"
{ REMOTE_ADDR 遠端地址, 訪問者 ip }
# 黑名單攔截加重定向規則:
SecRule REMOTE_ADDR "@ipMatch 220.112.124.125" "id:1239,phase:1,log,auditlog, redirect:http://modsecurity.cn/practice/intercept.html "
# 取消某個規則 ID :
1 、 49.234.128.215/?id=1 AND 1=1 ( 模擬簡單的 SQL 注入 )
2、 SecRuleRemoveById 949110
# 白名單釋放規則:
SecRule REMOTE_ADDR "@ipMatch 220.112.124.125" "id:1000,phase:1,pass,nolog,ctl:ruleEngine=Off"
{ Ctl 改變當前事務的配置 (ctl 臨時修改 ModSecurity 配置 ) 例如 = 》 ctl:ruleEngine=off 代表關閉攔截模式,所有規則失效。 }
(二、 規則檢測模式)
傳統檢測模式- 自主規則 :
傳統檢測模式所有規則都是“閉環”的模式;規則之間不共享資訊。它僅使用其當前的單個規則邏輯進行檢測。如果規則觸發,它將執行當前規則中指定的中斷 / 記錄日誌操作。
優點 :速度快(因為直接阻斷了,停止進一步處理)。
缺點 :誤報/ 漏報率比較高。
異常評分檢測模式 - 協作規則概念:
這種改進的檢測模式的核心理念是實施協作檢測和延遲阻塞。它會進行事務性異常評分記錄。
另外,每個規則還將儲存關於每個規則匹配的後設資料(例如規則ID ,攻擊類別,匹配位置和匹配資料)在唯一 TX 變數內。
使用ModSecurity 的 setvar 動作增加異常分數。
· Critical : 異常得分5 ,表示可能應用程式攻擊,主要由 93x 94x 檔案生成。
· Error : 異常得分4 ,表示可能資料洩露,主要有 95x 檔案生成,暫不支援 nginx 和 nginx plus 。
· Warning : 異常得分3 ,表示可能惡意客戶端,主要由 91x 檔案生成的。
· Notice: 異常得分2 ,表示可能違反協議,主要由 92x 檔案生成。
以圖種的 critical 為例: 嚴格等級為“ critical ”的每個 CRS 規則都會將每次規則匹配的事務異常分數提高 5 分。
優點 :
允許使用者設定適合他們的閾值 - 不同的網站可能有不同的阻止閾值。
對阻止的信心增加 - 由於更多檢測規則導致異常評分,評分越高,您越有信心阻止惡意事務。
缺點 :
對於普通使用者來說使用更為複雜。
日誌監控指令碼可能需要不斷更新才能正確分析。
攻擊操作 :
1 、 49.234.128.215/?id=1 AND 1=1 ( 模擬簡單的 SQL 注入 )
接著分析日誌以及crs-setup 指令碼檔案:
2、 更改閾值,編輯crs-setup.conf 檔案(變為傳統模式)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31537832/viewspace-2689109/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 配置ModSecurity防火牆與OWASP規則防火牆
- ModSecurity 自建規則之路
- Firewalld 白名單配置方法
- go Casbin配置檔案,以及匹配規則Go
- 配置資料庫監聽白名單資料庫
- nginx域名訪問的白名單配置梳理Nginx
- 通過白名單iptables限制ip規避漏洞
- 規則引擎模式 - upperdine模式
- make的模式規則模式
- 【java規則引擎】規則引擎RuleBase中利用觀察者模式Java模式
- MVC自定義檢視規則MVC
- MySQL之MGR白名單MySql
- Laravel忽略白名單和黑名單Laravel
- docker上面部署nginx-waf 防火牆“modsecurity”,使用CRS規則,搭建WEB應用防火牆DockerNginx防火牆Web
- javascript變數的宣告以及命名規則JavaScript變數
- Nginx的location配置規則梳理Nginx
- Orace RAC安裝-Oracle Linux 5和6 ASM的UDEV SCSI規則配置-測試規則(udevtest)OracleLinuxASMdev
- oracle 設定監聽白名單,並且怎麼設定白名單地址Oracle
- 【java規則引擎】簡單規則的rete網路示意圖Java
- Oracle 11g/12c 監聽器白名單的配置Oracle
- if測試和語法規則
- Apache之Rewrite和RewriteRule規則梳理以及http強轉https的配置總結ApacheHTTP
- modSecurity 安裝
- 專案筆記之訂單號生成規則以及方法,第一篇!筆記
- C語言的本質(37)——makefile之隱含規則和模式規則C語言模式
- MLeakFinder使用總結及白名單
- restful鑑權白名單匹配urlREST
- 單向鏈路檢測模式消除交換機誤診斷模式
- 嵌入式Linux可用的防火牆——iptables:實現ip白名單、mac地址白名單Linux防火牆Mac
- 完美黑蘋果配置清單及安裝教程蘋果
- Nginx URL重寫規則配置詳解Nginx
- 如何在 Linux 中配置 firewalld 規則Linux
- 記一次eslint規則配置EsLint
- Docker 埠對映防火牆規則配置Docker防火牆
- Linux自帶防火牆開啟IP白名單的的配置詳解Linux防火牆
- 開放封閉原則與規則引擎設計模式 - devgenius設計模式dev
- 通過規則引擎跟蹤Java執行狀態的檢測工具:BytemanJava
- APP隱私合規檢測:APP