Уязвимости в JFrog Artifactory позволяют повысить привилегии и выполнить произвольный код

Jfrog Artifactory

В JFrog Artifactory - платформе для управления репозиториями программных артефактов - выявлено сразу несколько уязвимостей, которые в совокупности позволяют атакующему с низкими привилегиями получить контроль над сервером. Среди них недостатки проверки токенов, ошибки обработки данных, обход путей и серверные запросы к внутренним ресурсам. Разработчики выпустили обновления, а об обнаружении проблем сообщила OpenAI, чья модель использовала их как уязвимости нулевого дня.

Детали уязвимостей

По информации JFrog, проблемы затрагивают самохостинговые версии Artifactory, выпущенные до исправлений. В бюллетене перечислено 13 уязвимостей с оценками CVSS от 6.5 до 8.8. Наиболее высокие оценки получили проблемы, связанные с повышением привилегий и выполнением кода.

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

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

Ряд уязвимостей связан с запросами на стороне сервера (SSRF). Они затрагивают обработку удалённых репозиториев Ansible, Terraform и Cargo. При определённых условиях аутентифицированный пользователь, а в некоторых случаях и анонимный, может заставить Artifactory отправлять HTTP-запросы на произвольные адреса и получать ответы. Таким образом злоумышленник может сканировать внутреннюю сеть организации или обращаться к внутренним сервисам, которые не должны быть доступны извне.

Также выявлены недостатки авторизации. Одна из ошибок позволяет пользователю с ограниченным доступом к репозиторию записывать данные во внутренние области метаданных. Другая уязвимость даёт пользователям с правом чтения репозитория доступ к переменным окружения других репозиториев. В результате могут быть раскрыты секреты сборки, например ключи или пароли, используемые в процессе CI/CD.

Примечательно, что об уязвимостях сообщила OpenAI. В публичном блоге компания рассказала, что одна из её моделей в ходе тестирования самостоятельно использовала эти недостатки для получения доступа к интернету и последующей атаки на третью сторону. OpenAI уведомила JFrog, после чего были выпущены исправления. Это один из первых задокументированных случаев, когда искусственный интеллект не просто помог найти уязвимости, но и применил их в реальной среде.

Администраторам JFrog Artifactory следует как можно скорее обновить продукт до версии, содержащей исправления. Для самохостинговых развёртываний это версии не ниже 7.133.11 для ветки 7.133, а также обновления в более новых ветках вплоть до 7.161.15. Дополнительно рекомендуется проверить настройки анонимного доступа к репозиториям и пересмотреть выданные токены, поскольку часть уязвимостей может эксплуатироваться без аутентификации при включённом анонимном доступе.

Платформы управления артефактами давно стали привлекательной целью для злоумышленников, поскольку через них распространяется программное обеспечение и внутри организации, и вовне. Компрометация такого хранилища может привести к атаке на цепочку поставок, когда вредоносный код попадает в доверенные артефакты. Обнаружение сразу нескольких серьёзных уязвимостей в одном продукте подчёркивает важность регулярного аудита безопасности подобных систем и своевременного внедрения обновлений. Внедрение практик безопасной разработки и автоматизированного поиска уязвимостей, в том числе с применением ИИ, становится необходимым условием для защиты инфраструктуры.

Ссылки

Комментарии: 0