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

Как защитить saslauthd от локальной атаки методом перебора?

В Интернете есть множество инструкций по использованию saslauthd. Я пробовал запустить службу. Я был удивлен, когда обнаружил, что /run/saslauthd/mux розетка и /usr/sbin/testsaslauthd оба доступны для непривилегированных пользователей. Поэтому когда у вас запущен saslauthd, это делает вашу систему уязвимой.

Каков предполагаемый способ ограничения грубой силы? Я пытался погуглить, но Google показывает только SMTP и IMAP, а не саму уязвимость saslauthd.

/run/saslauthd/mux розетка и /usr/sbin/testsaslauthd оба доступны для непривилегированных пользователей.

Да, потому что обычно некоторые службы, использующие SASL для аутентификации, также могут работать как непривилегированные пользователи.

Поэтому когда у вас запущен saslauthd, это делает вашу систему уязвимой.

Это настоящий скачок.

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

Как вы уже намекаете на то, что можно сделать:

  • не предоставляйте доступ к своим системам пользователям, которым нельзя доверять, и просто защищайте фактические сетевые службы, которые обращаются к SASL, от атак грубой силы, например, блокируя удаленных нарушителей (fail2ban - одна из таких реализаций)
  • в качестве альтернативы, поскольку saslauthd является только шлюзом к фактическому бэкэнду аутентификации, регистрировать неудачные попытки входа в систему на уровне учетной записи и (временно) блокировать учетную запись после ряда неудачных попыток входа в эту конкретную учетную запись.