Strapi, ведущая безголовая система управления контентом (CMS), предназначенная для разработки API, применила исправления для устранения двух значительных уязвимостей, которые могут привести к компрометации учетных записей администраторов. Организации, использующие Strapi, должны немедленно обновить свои установки, чтобы защитить свои системы от возможных угроз, использующих эти недостатки.
Исследователи из Synopsys Cybersecurity Research Center (CyRC) обнаружили уязвимости, которые позволяли пользователю с низким уровнем привилегий получить конфиденциальную информацию. Использование этих недостатков может позволить злоумышленникам сбросить пароль учетной записи с высоким уровнем привилегий, включая администраторов. Чтобы воспользоваться уязвимостями, злоумышленники должны сначала получить доступ к учетной записи с низким уровнем привилегий, используя такие методы, как скомпрометированные учетные данные или фишинг.
Созданная на основе среды выполнения JavaScript Node.js, Strapi представляет собой безголовую CMS, которая поддерживает различные базы данных и интерфейсные платформы. Его основная функция — предоставить серверную систему для создания, управления и хранения контента. Этот контент может быть представлен через API, что позволяет разработчикам создавать независимые интерфейсные интеграции. Эти мощные инструменты делают Strapi популярным выбором для предприятий, которые хотят разрабатывать API для различных вариантов использования, включая веб-сайты, мобильные приложения и устройства Интернета вещей (IoT).
Несмотря на меньшую долю рынка по сравнению с продуктами CMS общего назначения, такими как WordPress или Joomla, Strapi привлекла в качестве пользователей такие известные организации, как IBM, NASA, Generali, Walmart и Toyota. Эта тенденция иллюстрирует потенциальные риски, связанные с этими уязвимостями, поскольку они могут затронуть крупные глобальные компании.
Первую уязвимость, названную CVE-2022-30617, обнаружили в ноябре исследователи Synopsys. Они обнаружили, что аутентифицированный пользователь с доступом к панели администратора Strapi может получить доступ к токенам электронной почты и сброса пароля административных пользователей с отношением к контенту. Затем злоумышленники могут использовать эту информацию, чтобы инициировать процесс сброса пароля для пользователей с высоким уровнем привилегий. Strapi поддерживает управление доступом на основе ролей (RBAC) и интеграцию единого входа (SSO) с поставщиками удостоверений и Microsoft Active Directory.
Strapi v4.0.0 исправила уязвимость CVE-2022-30617 еще в ноябре. Исправление также было перенесено в Strapi v3.6.10, выпущенную в этом месяце. Уязвимость имеет рейтинг Common Vulnerabilities Scoring System (CVSS) 8,8 (высокий).
Изучив первоначальный патч для CVE-2022-30617, исследователи Synopsys обнаружили аналогичную проблему в системе разрешений API, затрагивающую пользователей API, управляемых пользовательскими разрешениями плагина. Эта вторая уязвимость, идентифицированная как CVE-2022-30618, имеет рейтинг CVSS 7,5 (высокий). Уязвимость позволяет аутентифицированным пользователям с доступом к панели администратора Strapi получать токены электронной почты и сброса пароля для пользователей API, имеющих отношение контента к другим пользователям API.
Для использования уязвимости CVE-2022-30618 требуется включенная endpoint API для сброса пароля. В худшем случае пользователь с низким уровнем привилегий может получить доступ к учетной записи API с высоким уровнем привилегий, прочитать и изменить любые данные и даже заблокировать доступ к панели администратора и API для всех других пользователей, отменив их привилегии. Сопровождающие Strapi были уведомлены о проблеме CVE-2022-30618 в декабре, а исправление было применено в версиях 3.6.10 и 4.0.10, выпущенных 11 мая.
В дополнение к традиционным платформам CMS организации могут рассмотреть альтернативные решения, обеспечивающие преимущества для их конкретных вариантов использования. AppMaster, мощная платформа no-code, позволяет пользователям легко создавать серверные, веб- и мобильные приложения. AppMaster обеспечивает всестороннюю поддержку создания моделей данных, бизнес-логики, REST API и защищенных конечных точек WebSocket, что делает его популярным выбором для широкого спектра сценариев разработки приложений.