2015-02-06 141 views
1

編輯:我最後的舉動是刪除空格和一些其他修改。仍然沒有結果關於owasp規則的語法錯誤

我爲modsecurity-crs規則創建了whitelist.conf。

我把簡單的代碼

<LocationMatch "/"> </LocationMatch>

結果是

的httpd:上/usr/local/apache/conf/httpd.conf的420行語法錯誤:語法錯誤在/usr/local/apache/conf.d/mod_security.conf的第14行:/usr/local/apache/modsecurity-crs/activated_rules/whitelist.conf第1行的語法錯誤:/ usr/local/apache/modsecurity -crs/activated_rules/whitelist.conf:1:未關閉。 [失敗]

它怎麼會是語法錯誤? 我真的很滿意。

注意:如果我把一個空的失敗,不fai和obviosly什麼都不做。 如果放</LocationMatch>失敗是關於不檢測<LocationMatch>開標籤。

似乎根本不承認</LocationMatch>。這裏 例子https://wordpress.org/support/topic/disable-mod-security

更新: 我真的覺得捆綁(在某些主機包我就不提了)CSR確實包含了一些錯誤,因爲我用它沒有修改好,所以,什麼是從一開始就錯了。在閱讀沒有任何東西使它工作後,所以我簡單地離開了那個託管軟件。我不希望對於最新的CSR而言,這種奇怪的行爲並沒有自定義的調整。謝謝。

+0

包括從whitelist.conf什麼情況下? – covener 2015-02-14 12:12:31

+0

文件'/ usr/local/apache/conf.d/mod_security.conf'加載目錄'/ usr/local/apache/modsecurity-crs/activated_rules /'中的所有文件。 我剛剛創建了一個新規則,並且出現錯誤。我已經嘗試過「空」的價值,仍然得到這一點。如果你真的把文件留空,不會失敗。 我的目標是將白名單下的ID放在允許wordpress與mod_sec一起工作。 你可以在這裏看一個例子https://www.thefanclub.co.za/how-to/how-disable-modsecurity-rules-drupal-and-wordpress – erm3nda 2015-02-14 17:28:03

+0

真的是一個奇怪的問題。我從零開始設置了一個本地ModSecurity(2.9.0),包括OWASP基本規則,並添加了一個whitelist.conf,其中包含您發佈的博文中描述的'LocationMatch'排除規則,並且它毫無問題地工作。你還可以從httpd.conf和mod_security.conf發佈失敗的配置行嗎?文件夾'activated_rules'是否還包含'base_rules'目錄中的所有其他OWASP規則,並且您是否在'activated_rules'目錄中包含了'modsecurity_crs_10_setup.conf'文件? – derhansen 2015-02-17 18:55:10

回答

3

首先你必須找到哪個規則阻止了你的腳本。

您可以找到錯誤和規則ID對

觸發一個事件的ModSecurity(檢測)的所有請求或塞雷爾語錯誤記錄(「RelevantOnly」)的文件「modsec_audit.log」登錄到這文件。

此文件必須在/usr/local/apache/logs/modsec_audit.log位於或/var/log/httpd/modsec_audit.log

打開文件:在/ usr /本地/ Apache/ModSecurity的-CRS /activated_rules/whitelist.conf

所以,你可以禁用該文件或文件與此代碼的規則:必須更換patchtofile

<LocationMatch "/patchtofile"> 
    SecRuleRemoveById 000000 
</LocationMatch> 

>文件你上了車modsec_audit.log錯誤,並且需要用您在日誌文件中找到的規則ID替換000000。你必須爲每個文件和錯誤找到這個。

你也可以爲你想整個目錄禁用規則:

<LocationMatch "/patchtodir"> 
    SecRuleRemoveById 000000 
</LocationMatch> 

與目錄補丁替換patchtodir和替換規則ID太

+0

我瞭解它是如何工作的。我用EMPY LocationMatch試了一下,結果是'activated_rules/whitelist.conf:1:未關閉' 如果我不把內容放在whitelist.conf上,就不會出現問題。 – erm3nda 2015-02-18 20:01:22

+0

爲什麼你嘗試使用空LocationMatch?你必須說,做什麼。沒有設置正確的配置就無法工作!您必須在關閉它之前在locationmatch標記中使用一個選項!像SecRuleRemoveById – Achilles 2015-02-18 21:05:57

+0

我確定我們的第一個問題是我的BAD英語。我有SAY。首先,我嘗試了正常的方式,使用所需規則的ID來禁用它。結果?一個很大的失敗。因爲我不相信魔法的力量,所以我發現問題終於結束了我發佈的例子。當你清楚看到TAG已關閉時,我得到了解析問題。這是我的問題。 – erm3nda 2015-02-19 07:11:03