Назад | Перейти на главную страницу

Пароли в лог-файлах modsec

Есть ли какие-либо передовые методы или подходы, которые я могу предпринять, чтобы предотвратить запись определенных данных (например, паролей) в файлы журнала mod-security?

На наш сервер Apache (и на серверную часть Karaf) поступает вызов, который, кажется, иногда запускает правило безопасности мода. Этот вызов включает пароль как один из параметров URL.

Как я могу заставить mod-security сообщать о правиле, но подавлять определенную информацию из журнала? Очевидно, я хочу знать, что правило сработало, но я беспокоюсь о том, чтобы оставить конфиденциальные данные в журнале.

Вот пример (хитрый бит находится во второй строке): -

--0a6bf76f-C--
userName=fred.bloggs%40whatever.com&password=SHOULDNTBEHERE&%3Asubmit=1
--0a6bf76f-F--
HTTP/1.1 200 OK
Ajax-Location: ./home
Content-Type: text/xml;charset=ISO-8859-1
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Pragma: no-cache
Cache-Control: no-cache, no-store
Set-Cookie: rememberMe=deleteMe; Path=/; Max-Age=0; Expires=Sat, 18-Apr-2015 08:06:08 GMT
Strict-Transport-Security: max-age=15768000
Vary: Accept-Encoding
Content-Encoding: gzip
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked

--0a6bf76f-E--
<ajax-response><redirect><![CDATA[./home]]></redirect></ajax-response>
--0a6bf76f-H--
Message: Warning. Pattern match "(.*?)=(?i)(?!.*secure.*)(.*$)" at RESPONSE_HEADERS:Set-Cookie. [file "/etc/modsecurity/activated_rules/modsecurity_crs_55_application_defects.conf"] [line "99"] [id "981185"] [msg "AppDefect: Missing Secure Cookie Flag for rememberMe."] [tag "WASCTC/WASC-15"] [tag "MISCONFIGURATION"] [tag "http://websecuritytool.codeplex.com/wikipage?title=Checks#cookie-not-setting-secure-flag"]
Message: Warning. Pattern match "(.*?)=(?i)(?!.*httponly.*)(.*$)" at RESPONSE_HEADERS:Set-Cookie. [file "/etc/modsecurity/activated_rules/modsecurity_crs_55_application_defects.conf"] [line "83"] [id "981184"] [msg "AppDefect: Missing HttpOnly Cookie Flag for rememberMe."] [tag "WASCTC/WASC-15"] [tag "MISCONFIGURATION"] [tag "http://websecuritytool.codeplex.com/wikipage?title=Checks#cookie-not-setting-httponly-flag"]
Apache-Handler: proxy-server
Stopwatch: 1429430768382701 63597 (- - -)
Stopwatch2: 1429430768382701 63597; combined=13093, p1=317, p2=11903, p3=242, p4=130, p5=395, sr=110, sw=106, l=0, gc=0
Response-Body-Transformed: Dechunked
Producer: ModSecurity for Apache/2.6.3 (http://www.modsecurity.org/); OWASP_CRS/2.2.5.
Server: Apache
WebApp-Info: "default" "-" ""

--0a6bf76f-Z--

Это Apache 2.2, работающий на Ubuntu 12.04.

Спасибо.

Вам следует настроить правило Sanitize:

https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#sanitiseArg

5kKate пароль находится в разделе C, который является телом запроса. Вот где должны быть пароли для запросов POST. Я согласен, что вы не должны использовать их в URL-адресах через запросы GET (в этом случае они должны быть в разделе B журнала аудита).

Вы можете настроить mod_security, чтобы отключить регистрацию URL-адреса запроса. Это буква B, которую я удалил из приведенной ниже конфигурации.

SecAuditLogParts ACIFHZ

Вы можете прочитать больше здесь: http://resources.infosecinstitute.com/analyzing-mod-security-logs/

Однако более серьезная проблема заключается в том, что вы отправляете пароли в открытом виде в URL-адресе. Я не так хорошо знаком с Karaf, но был бы удивлен, если бы у них не было более безопасного способа аутентификации.