2013-04-18 4 views
2

Я ищу способ сделать сообщение об msg правиле (которое было вызвано), чтобы оно появилось в файлах журнала ошибок и/или аудита и отправлено обратно клиенту в заголовки ответов. Я понимаю, что есть фаза «msg», но она не отправляется обратно клиенту в заголовках ответов, поэтому мне это не помогает. Я хочу просмотреть информацию о журнале на странице ошибки в html, что я могу сделать? Благодарим вас за помощь, Vladi.Конфигурировать страницу ошибки, чтобы показать журнал modsecurity

ответ

2

Плохая идея сообщить клиенту, что именно случилось не так. Хакер может использовать это, чтобы обойти вашу инфраструктуру безопасности. Гораздо лучший подход - это комбинация mod_unique_id и настраиваемых страниц ошибок. Шаги:

  • позволяет mod_unique_id с конфигурацией апача
  • создавать собственные страницы ошибок для возврата HTTP коды вы заинтересованы в (например, ниже)
  • включить те, в вашем апаче конфигурации (ErrorDocument 403 /<url_path_to>/403.php для этого пример)

Вот пример страницы 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 напечатает уникальный код. Клиент может рассказать вам этот код, и вы можете использовать его для поиска точной строки в вашем журнале ошибок, где вы увидите, какое правило вызвало его и т. Д.

Смежные вопросы