В контроллере домена для Linux-систем FreeIPA устранен критический баг
Компания Red Hat поблагодарила эксперта Positive Technologies за обнаружение критической уязвимости в контроллере домена для Linux-систем FreeIPA, с помощью которого можно централизованно управлять учетными записями пользователей, устанавливать политики доступа и аудита.
FreeIPA входит в дистрибутив Red Hat Enterprise Linux, который применяют более 2000 организаций, а также лежит в основе ИT-продуктов других вендоров, включая отечественных.
Уязвимость, получившую идентификатор CVE-2025-4404 и 9,4 балла по шкале CVSS, обнаружил специалист Positive Technologies Михаил Сухов. Проблема угрожала FreeIPA версий 4.12.2 и 4.12.3. Успешная эксплуатация уязвимости могла бы позволить атакующему повысить свои привилегии в системе до администратора домена и получить доступ к чувствительным данным компании.
«Для эксплуатации уязвимости злоумышленнику потребовался бы доступ к учетной записи компьютера в домене FreeIPA. Завладев максимальными привилегиями на скомпрометированном узле, он смог бы прочитать содержимое файла, в котором хранятся ключи для доступа к системе. В результате успешной атаки нарушитель гипотетически получил бы возможность повысить свои привилегии до администратора домена. Это позволило бы ему управлять учетными записями и правами пользователей, а также открыло бы доступ к любым сведениям организации», — объясняет Михаил Сухов, старший специалист отдела тестирования на проникновение Positive Technologies.
Уязвимость возникла после того, как в 2020 году вендор ограничил возможность произвольного повышения пользователями своих прав в системе, которой также могли воспользоваться злоумышленники. После обновления был удален атрибут krbCanonicalName, что и открыло дорогу для возможных атак.
Для устранения ошибки необходимо обновить службу каталогов FreeIPA до версии 4.12.4.
Компаниям, которым не удается установить патч, рекомендуется настроить дополнительную проверку прав пользователей. Для этого следует включить обязательное использование PAC на всех серверах, управляющих доступом к протоколу аутентификации Kerberos. Затем необходимо присвоить атрибуту krbCanonicalName, относящемуся к учетной записи администратора, имя admin@REALM.LOCAL. Оно будет использоваться системой, чтобы корректно идентифицировать пользователя с повышенными привилегиями.