Основатель Binance Чанпэн Чжао (CZ) предупредил операторов серверов о критической уязвимости аутентификации OpenSSH, затрагивающей некоторые системы Alpine Linux, и призвал их установить исправления безопасности после того, как разработчики обнаружили, что этот недостаток существовал почти 10 лет.
Краткое содержание
- Основатель Binance CZ призвал операторов серверов немедленно устранить уязвимость обхода аутентификации OpenSSH, существующую уже десять лет.
- Недостаток затрагивает некоторые Linux-серверы на базе musl, использующие аутентификацию по паролю без включённой защиты PAM при входе.
- Злоумышленники могли получить доступ к уязвимым учётным записям, используя пароли чрезмерной длины, не зная их фактических учётных данных или закрытых ключей.
- OpenSSH выпустил версию 10.6p2, а Alpine Linux опубликовал исправления безопасности для затронутых выпусков операционной системы.
- Некоторые облачные конфигурации Alpine могли предоставлять административные привилегии, хотя публично подтверждённых случаев эксплуатации не сообщалось.
В публикации на X от 6 ноября Чжао привлёк внимание к проблеме безопасности после того, как OpenSSH и Alpine Linux выпустили исправления 5 ноября. Уязвимость может позволить злоумышленникам получить доступ к определённым учётным записям, не зная их паролей, включая учётные записи, обычно настроенные на приём только SSH-ключей.
«Ошибка безопасности OpenSSH в Alpine Linux, которая существует уже 10 лет. Примените исправления, если вы ещё этого не сделали», — написал CZ.
Предупреждение касается уязвимости программного обеспечения, затрагивающей некоторые конфигурации серверов. Ни публикация Чжао, ни уведомления о безопасности не устанавливают, что системы Binance были скомпрометированы через этот недостаток.
Уязвимость OpenSSH позволяет несанкционированный доступ к уязвимым Linux-серверам
Согласно официальному уведомлению о безопасности, злоумышленники могут обойти аутентификацию на затронутых серверах Alpine Linux, передав пароль длиной от 257 до 1 024 байт.
Уязвимость затрагивает системы, работающие под управлением OpenSSH без подключаемых модулей аутентификации (PAM), при условии, что аутентификация по паролю остаётся включённой и существуют определённые конфигурации учётных записей.
Злоумышленнику необходимо знать имя пользователя учётной записи, в поле хранимого пароля которой содержится звёздочка, указывающая на то, что пароль не установлен. На машине должна быть другая локальная учётная запись с совместимым хешем пароля SHA-256 или SHA-512.
При этих условиях сервер может принять пароль чрезмерной длины, даже если он не соответствует легитимным учётным данным. В уведомлении указано, что для эксплуатации требуется только одно подключение, без повторных попыток подбора пароля.
Однако не каждый сервер Alpine Linux уязвим. Системы, использующие PAM для проверки паролей, системы с отключённой аутентификацией по паролю и контейнеры без запущенного SSH-сервера не затронуты.
Недостаток может распространяться за пределы Alpine на другие дистрибутивы Linux, использующие musl libc, включая некоторые конфигурации OpenWrt, Buildroot и Yocto.
OpenWrt обычно использует Dropbear для SSH-подключений, который, по словам исследователя, не затронут этой конкретной проблемой.
Исследователь безопасности объясняет десятилетнюю ошибку аутентификации
Исследователь безопасности Озгюн Кюльтекин из Wakefield выявил уязвимость, которую он назвал «*sshole», и проследил её происхождение до изменений, внесённых между 2012 и 2016 годами.
В своём техническом описании Кюльтекин объяснил, что функция хеширования паролей musl возвращает звёздочку, когда пароли превышают её предел обработки в 256 байт.
OpenSSH может заимствовать соль пароля другой учётной записи при проверке учётных записей без действительных хешей паролей. Комбинация создаёт ситуацию, когда возвращённая звёздочка совпадает с полем хранимого пароля, позволяя недействительному входу успешно завершиться.
Исследователь связал это поведение с изменением в OpenSSH, внесённым в июле 2016 года для устранения отдельной проблемы безопасности, связанной с обнаружением имени пользователя.
OpenSSH признала уязвимость в примечаниях к выпуску, но отнесла первопричину к коду за пределами SSH-сервера.
«Мы считаем, что первопричина этой ошибки находится вне sshd», — заявила команда разработчиков в своём уведомлении о безопасности.
Разработчики описали новый выпуск как обходное решение, которое не позволяет ошибке аутентификации предоставлять доступ.
Облачные образы Alpine Linux подвержены возможному получению root-доступа
Некоторые облачные образы Alpine Linux вызывают дополнительное беспокойство, поскольку учётная запись, раскрытая через уязвимость, может иметь административные права.
В рекомендации Alpine указаны образы tiny-cloud версий с 3.18.11 по 3.24.3 как потенциально затронутые. Их учётная запись alpine по умолчанию имеет доступ без пароля к утилите doas, которая позволяет пользователям выполнять команды с административными привилегиями.
Хотя эти образы не уязвимы при первой загрузке, добавление учётной записи с совместимым хешем пароля может создать условия для эксплуатации.
Злоумышленник, успешно получивший доступ к учётной записи alpine, затем мог бы использовать её существующие разрешения для получения root-доступа.
В рекомендации эти конфигурации отличаются от систем, в которых прямой вход под root остаётся ограниченным. Настройки OpenSSH по умолчанию предотвращают вход под root по паролю, хотя другая скомпрометированная административная учётная запись всё ещё может обеспечить повышенные привилегии.
Раскрытие информации происходит на фоне того, как CZ продолжает выпускать предупреждения о безопасности для пользователей криптовалют. 5 ноября crypto.news сообщил о его предупреждении относительно мошеннического сайта Trust Wallet, созданного для обмана пользователей с целью подключения их кошельков.
OpenSSH выпускает экстренное исправление безопасности
OpenSSH выпустила версию 10.6p2 5 ноября для устранения обхода аутентификации. Alpine Linux опубликовала исправленные пакеты, охватывающие текущие выпуски и более старые версии вплоть до 3.16.
В её рекомендации администраторам предписывается обновить затронутые пакеты и перезапустить службу SSH, поскольку установка обновления сама по себе не заменяет работающий серверный процесс.
Операторам, которые не могут обновиться немедленно, разработчики рекомендуют отключить аутентификацию по паролю, установив PasswordAuthentication no и перезапустив sshd после подтверждения работоспособности доступа по SSH-ключу.
Alpine определила версии 3.21.10, 3.22.8, 3.23.8 и 3.24.4 как выпуски, содержащие исправленные пакеты.
Администраторам было рекомендовано проверить журналы аутентификации SSH на предмет неожиданного доступа по паролю к учётным записям, которые не должны принимать пароли.
В рекомендации по безопасности указано, что операторам, которые не могут исключить несанкционированный доступ, следует рассматривать затронутую машину как скомпрометированную.






