2013-04-18 26 views
2

我在尋找一種方法,使規則的MSG信息(規則已被觸發),以出現在錯誤和/或審計日誌文件,併發送回客戶端響應標題。 我明白,有相「味精」,但因此它並不能幫助我,這不發送回客戶端響應報頭信息。 我想看看在日誌中的HTML錯誤頁面的信息,我該怎麼辦? 感謝你的幫助, Vladi。配置錯誤頁面顯示了ModSecurity的日誌

回答

2

這是一個壞主意,讓客戶知道究竟錯在哪裏。黑客可以用它來解決您的安全框架。更好的方法是mod_unique_id組合和定製的錯誤頁面。步驟如下:

  • 使mod_unique_id與Apache配置
  • 創建你感興趣的(下面的例子)
  • 啓用對此那些在你的Apache配置(ErrorDocument 403 /<url_path_to>/403.php的HTTP返回代碼自定義錯誤頁例如)

下面是一個403錯誤頁面的例子,讓我們稱之爲403.php(不,一個純粹的靜態頁面將無法正常工作):

<?php 
$protocol = $_SERVER['SERVER_PROTOCOL']; 
header("$protocol 403 Forbidden"); 
header("Status: 403 Forbidden"); 
header("Connection: close"); 
$msg = $_SERVER["UNIQUE_ID"]; 
?> 
<HTML><HEAD> 
<TITLE>You have no access to this resource (403)</TITLE> 
</HEAD><BODY> 
<P>An error occured. Please tell the admin the error code: <?php echo $msg; ?></P> 
</BODY></HTML> 

這只是一個非常簡短的變型,沒有定型等(您可能要加強這方面的),但我順帶保持它的簡單理解。 $msg將打印一個唯一的代碼。客戶端可以告訴你這個代碼,你可以用它來查找確切的行中的錯誤日誌,在那裏你會看到哪些規則觸發它等