Предотвращение атаки Sendmail Brute Force на Solaris 10

740
Andrew Case

Я хочу динамически блокировать определенные подключения, использующие один и тот же IP-адрес, на основе скорости или ограничения подключения. Возможно ли это с помощью Solaris / IPF или какого-либо расширения sendmail? Я хочу ограничить попытки входа в sendmail, чтобы предотвратить атаки методом перебора.

В Linux это легко обрабатывается на уровне брандмауэра iptables, но я не смог найти способ использовать ipf, чтобы ограничить его на уровне брандмауэра. Sendmail имеет встроенный лимит скорости и ограничения на соединение, но, похоже, он применяется ко всем пользователям, поэтому, если у нас DOS или DDOS, он блокирует всех наших пользователей, а не только злоумышленника.

4
Вы действительно требуете, чтобы sendmail не запускался в локальном режиме? Простое разрешение удаленного доступа к демону может быть опасным даже при ограниченных попытках входа в систему. Не говоря уже о том, что в наши дни даже дети-сценаристы могут использовать атаку методом грубой силы со смещением IP-адресов с помощью копилки в бот-сетях других людей. Blomkvist 12 лет назад 0
Yes, it really needs to be accessible remotely. I understand the security implications, I just need to mitigate them. Andrew Case 12 лет назад 0
когда sendmail когда-либо * не * используется в режиме удаленного доступа? Если бы мне нужен был локальный почтовый сервер, я бы просто удалил Sendmail и установил Exim. RapidWebs 9 лет назад 0

1 ответ на вопрос

1
Andy Lee Robinson

Я решаю эту проблему, добавив другое правило в syslog / rsyslog для передачи сообщений mail. * В fifo в / etc / mail / mailban / syslog_fifo

Затем я создал демон, чтобы читать syslog_fifo, анализировать сообщения sendmail и действовать на основании найденного. История каждого IP-адреса и активности отслеживается через таблицу MySQL с 1,5 миллионами (!) Строк. Оскорбительные ip-адреса добавляются в цепочку запретов в iptables на различные периоды / порты в зависимости от различных критериев, и жизнь продолжается сладко ...

Простая задача cron выполняется каждый час и освобождает старые IP-адреса и соответственно обновляет статус в базе данных.

Теперь я заставил программное обеспечение автоматически скомпилировать и очистить записи журнала, найти адрес ответственного за злоупотребление для ip, а затем отправить отчет, информирующий интернет-провайдера о необщительном поведении. Это работает примерно в 5% случаев, и помогает немного очистить сеть.

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

Я также использую другое подобное решение для атак ssh, pop3, httpd.

Я не знаю ни одного другого программного обеспечения, которое делает это, но я мог бы помочь вам разработать решение, хотя я больше всего знаком с RedHat / Fedora.

Похожие вопросы