существует ли модуль PAM для поисков DNSBL?

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

Я искал Модуль PAM, который проверяет Удаленный IP-адрес Хоста по Черному списку DNS (DNSBL).

Мой вариант использования - это... В то время как программное обеспечение IDS может ответить после обнаружения датчика, сканирования уязвимости или атаки перебором -

некоторые сервисы (i.e. Apache2, proFTPd, Sendmail, SpamAssassin) включайте модуль DNSBL или функцию, которые помогают значительно сократить число машин, которые могут участвовать в нападении. это делает это путем блокирования известный зараженный или машины зомби, общедоступные прокси, и TOR выходит из релейных узлов (например).

Другие, к моему знанию, не делают. Dovecot/Saslauthd не включайте такую функциональность. Они часто предназначаются в атаках перебором моей сети. они обслуживают, все еще покрыты системой IDS, но переносят значительное большинство нападений.

С Модулем PAM, который проверяет удаленный IP хоста, во время аутентификации, против DNSBL... эффективно, ВСЕ сервисы могли иметь этот дополнительный слой устойчивости против распределенной атаки перебором или датчик (ограничение возможных машин, которые могут использоваться в упомянутом нападении),

Я задаюсь вопросом, существует ли существующий Модуль PAM для служения этой цели? и в противном случае почему это было пропущено разработчиками?

Это был бы невероятно простой модуль, который (по-моему), мог служить большой цели..

На данный момент я имею, записал сценарий, который взаимодействует через интерфейс с PAM (через "pam_exec.so" модуль). По некоторым причинам это не работает (просто заставляет Bash отказывать). Когда я получаю шанс, я планирую попробовать "pam_script.so" модуль вместо этого..

Я был бы готов записать Модуль PAM, чтобы сделать это, но не уверен, как трудно это должно получить часть программного обеспечения в Репозитории Ubuntu или Debian.

Спасибо

2
задан 29 June 2014 в 06:47
3 ответа

Я не знаю о таком модуле. На второй вопрос (почему) я буду искать ответы, которые в первую очередь основаны на мнении, так как не могу придумать окончательных причин, почему такой модуль PAM не мог существовать.

Ниже приведены конструктивные соображения, которые я определил при оценке целесообразности:

  • Скорость: Должна не задерживать входы и выходы. ssh+PAM уже находится в плохом месте , когда речь идет о задержках DNS в настройках по умолчанию. Я бы сказал, что DNS поиск на каждом сервере должен производиться параллельно, чтобы избежать таймаутов стека друг на друга.
  • Retries Are Bad: Использование библиотеки C для DNS поиска нормально до тех пор, пока повторные попытки считаются находящимися в компетенции /etc/resolv.conf. Если повторные попытки DNS реализованы, модуль не должен использовать С-библиотеку для DNS-поиска. Конечным результатом будут вложенные операции повторных попыток
  • /etc/resolv.conf: Пространство RFC1918 (и т.п.) всегда должно получить свободный проход, так как бесполезно передавать эту информацию в DNSBL.
  • Lockout Considerations: Что происходит, когда весь DNS недоступен? Всегда ли модуль не может войти в систему, запрещая личный IP? Это должно быть задокументировано.
  • Генерация ошибок журнала, если вы вызываетесь в стеке auth. Стек auth используется для аутентификации. Этот модуль не используется для аутентификации. Решения в обход стека auth (SSH auth, GSSAPI auth и т.д.) аннулируют модуль, если пользователь поместит его туда.
1
ответ дан 3 December 2019 в 11:42

Вы могли бы реализовать это без особых проблем, но это плохая идея.

Во-первых, давайте вспомним, что такое PAM: это система для обработки логинов пользователей . Аутентификация, авторизация, учёт и т.д.

Итак, где это предложение падает:

  1. Это будет замедлять легальные логины. Обычно замедление будет незаметным, так как DNS поиск не занимает столько времени, но они могут занять несколько секунд или просто тайм-аут полностью. Что вы делаете, когда это происходит? Вы отказываете законному пользователю?
  2. Более того, полностью блокирует законные логины, даже когда все работает идеально . Многие пользователи имеют несчастье находиться на динамических IP-адресах, и они сами могут находиться на вредоносном компьютере, который участвует в бот-сети, что приводит к занесению IP-адреса в список DNSBL, или недавно получили IP-адрес, который является списком DNSBL, даже если они сами чистые.

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

.
0
ответ дан 3 December 2019 в 11:42

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

Что касается публикации программного обеспечения, это может помочь.

Мне никогда не везло с основными репозиториями, но у rpmforge (сейчас repoforge) есть несколько довольно простых способов участия. Смотрите здесь.

Для debian / ubuntu я не видел ни одного большого стороннего репозитория. Все они, кажется, специфичны для конкретного продукта. Мои вещи, казалось бы, никогда не подходили, и я никогда не мог оправдать запуск своего собственного публичного репозитория.

Я склонен оставлять всё, что нужно упаковать для производных debian, на github.

.
1
ответ дан 3 December 2019 в 11:42

Теги

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