как установить правила в модуле mod_security в Apache - PullRequest
0 голосов
/ 29 августа 2018

Может кто-нибудь помочь мне с установкой правил, чтобы я получал только те данные, которые публикуются с помощью POST. У меня есть форма, в которой я отправляю имя и адрес электронной почты. Я хочу сохранить только ту часть, которая будет сохранена в файле журнала. В моем сценарии я просто хочу данные ниже в моем файле журнала: -

--29000000-C--
name1=ssn&email1=ssn%40gmail.com
--29000000-F--
HTTP/1.1 200 OK
X-Powered-By: PHP/7.2.4
Content-Length: 16
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8

Мой нынешний mod_security выглядит так: -

<IfModule security2_module>
#Enable the module.
SecRuleEngine On
SecAuditEngine on

#Setup logging in a dedicated file.
SecAuditLog C:/wamp64/bin/apache/apache2.4.33/logs/website-audit.log

#Allow it to access requests body.
SecRequestBodyAccess on
SecAuditLogParts ABIFHZ

#Setup default action.
SecDefaultAction "nolog,noauditlog,allow,phase:2"

#Define the rule that will log the content of POST requests.
SecRule REQUEST_METHOD "^POST$" "chain,allow,phase:2,id:123"
SecRule REQUEST_URI ".*" "auditlog"

</ifmodule>

1 Ответ

0 голосов
/ 29 августа 2018

Я нашел решение своего вопроса. Мы можем установить ниже поле согласно нашему требованию: -

SecAuditLogParts ABIFHZ

В моем случае я установил поле как: - SecAuditLogParts C

однако будет отображаться как: -

--84670000-A--
[29/Aug/2018:14:49:58 +0200] W4aWdqHJuCcOQzTIgCiEqAAAAD8 127.0.0.1 60735 127.0.0.1 80
--84670000-C--
name1=red&email1=red%40yahoo.com
--84670000-Z--
...