Snort: пользователи не могут войти в систему, если включено правило брутфорсинга в WordPress.

Я получил это правило брутфорсинга в WordPress от https://rules.emergingthreats.net/open/snort-2.9.0/rules/emerging-web_server.rules

alert tcp $ EXTERNAL_NET any -> $ HTTP_SERVERS $ HTTP_PORTS (msg: «ET
WEB_SERVER WordPress Вход в систему обнаружен брутфорс «;
Поток: to_server, установлено; Содержание: «/ сор-login.php»; NoCase;
fast_pattern; http_uri; Содержание: «POST»; http_method;
Содержание: «журнал | 3d |»; http_client_body; Содержание: «PWD | 3d |»;
http_client_body; Порог: введите оба, отслеживать by_src, считать 5, секунд
60; ClassType: попытка-разведывательный; с.и.д.: 2014020; ред: 3;)

Когда я изменяю его с ‘alert’ на ‘reject’, я не могу войти в систему. (Говорит, что соединение сброшено) Я не совсем понимаю, что означает правило. (Что я понимаю, так это то, что при входе в систему он ищет log или 3d в методе post / get. Посмотрите на client_body pwd 3d. попытку-разведки означает, что кто-то «исследует» сервер)

Только один пользователь может войти в WordPress, когда используется «отклонить». У трех других пользователей есть "ERR_CONNECTION_RESET" в хроме.

0

Решение

Правило, скорее всего, написано не очень хорошо, поэтому вы получаете ложные срабатывания на законных входах в систему. Правило, вероятно, нуждается в пересмотре, чтобы оно не блокировало попытки легитимного входа в систему, или вы должны оставить его как предупреждение и просто исследовать каждое, чтобы предупредить, было ли это попыткой повторного входа или нет.

Чтобы уточнить, что ищет это правило:

Содержание: «/ сор-login.php»; NoCase; fast_pattern; http_uri;

Это ищет страницу входа в URI, т.е. «http://example.com/wp-login.php»

Содержание: «POST»; http_method;

Это ищет метод POST, поэтому это будет запрос на публикацию чего-то вроде приведенного выше URL.

Содержание: «журнал | 3d |»; http_client_body;

Как вы и предлагали, это не поиск содержимого «log» или 3d, когда вы используете вертикальные каналы в правилах содержимого snort, это означает, что он ищет шестнадцатеричное значение того, что находится внутри вертикальных каналов. Это на самом деле ищет содержимое «log =», поскольку 3d равно «=» при преобразовании из hex в ascii. Вы можете использовать сайт, как этот преобразовать гекс в ascii. Так что это, по сути, поиск переменной в теле клиента http, называемой «log».

Содержание: «PWD | 3d |»; http_client_body;

Это ищет содержимое «pwd =» в теле клиента.

Порог амортизируется и не должен использоваться (вместо него следует использовать обнаружения_фильтр), но он просто определит, когда генерировать предупреждение.

Правило, скорее всего, пытается найти кого-то, кто пытается получить информацию о том, где хранятся журналы для сервера, так как «pwd» обычно ссылается на «печать рабочего каталога», а журнал — это файл журнала, так что я предполагаю, что есть своего рода эксплойт в WordPress, который позволяет кому-то отправить специально созданный запрос, и сервер вернет свой текущий каталог и файл, в который он входит, или что-то в этом роде.

Этот контент или запрос могут быть общими для определенных серверов WordPress, поэтому вы, вероятно, захотите изменить это правило, чтобы он не искал контент, который также будет в законных запросах.

Когда вы изменяете это, чтобы отклонить, snort отправляет пакет сброса, когда это правило выдает предупреждение, именно поэтому клиенты получают сообщение сброса в chrome.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]