Strapi, un système de gestion de contenu (CMS) sans tête de premier plan conçu pour le développement d'API, a appliqué des correctifs pour corriger deux vulnérabilités importantes qui pourraient conduire à la compromission des comptes administratifs. Les organisations utilisant Strapi doivent mettre à jour leurs installations immédiatement pour sécuriser leurs systèmes contre d'éventuelles menaces exploitant ces failles.
Des chercheurs du Synopsys Cybersecurity Research Center (CyRC) ont découvert les vulnérabilités, qui permettaient à un utilisateur à faible privilège d'obtenir des informations sensibles. L'exploitation de ces failles pourrait permettre aux attaquants de réinitialiser le mot de passe d'un compte à privilèges élevés, y compris les administrateurs. Pour exploiter les vulnérabilités, les attaquants doivent d'abord accéder à un compte à faibles privilèges en utilisant des techniques telles que la compromission des informations d'identification ou le phishing.
Construit sur le runtime JavaScript Node.js, Strapi est un CMS sans tête qui prend en charge diverses bases de données et frameworks frontaux. Sa fonction principale est de fournir un système backend pour créer, gérer et stocker du contenu. Ce contenu peut être exposé via une API, permettant aux développeurs de créer des intégrations frontales indépendantes. Ces outils puissants font de Strapi un choix populaire pour les entreprises qui cherchent à concevoir des API pour plusieurs cas d'utilisation, y compris les sites Web, les applications mobiles et les appareils Internet des objets (IoT).
Malgré sa plus petite part de marché par rapport aux produits CMS à usage général comme WordPress ou Joomla, Strapi a attiré des organisations de renom telles qu'IBM, la NASA, Generali, Walmart et Toyota en tant qu'utilisateurs. Cette tendance illustre les risques potentiels associés à ces vulnérabilités, car elles peuvent affecter d'importantes entreprises mondiales.
La première faille, nommée CVE-2022-30617, a été identifiée en novembre par les chercheurs de Synopsys. Ils ont découvert qu'un utilisateur authentifié disposant d'un accès au panneau d'administration Strapi pouvait accéder aux jetons de réinitialisation des e-mails et des mots de passe des utilisateurs administratifs ayant une relation de contenu. Les attaquants pourraient ensuite utiliser ces informations pour lancer un processus de réinitialisation de mot de passe ciblant les utilisateurs à privilèges élevés. Strapi prend en charge le contrôle d'accès basé sur les rôles (RBAC) et l'intégration de l'authentification unique (SSO) avec les fournisseurs d'identité et Microsoft Active Directory.
Strapi v4.0.0 a corrigé la vulnérabilité CVE-2022-30617 en novembre. Le correctif a également été rétroporté sur Strapi v3.6.10, qui a été publié ce mois-ci. La faille a une cote CVSS (Common Vulnerabilities Scoring System) de 8,8 (élevé).
Lors de l'examen du correctif initial pour CVE-2022-30617, les chercheurs de Synopsys ont découvert un problème similaire dans le système d'autorisations de l'API, affectant les utilisateurs de l'API gérés par le plugin users-permissions. Cette deuxième vulnérabilité, identifiée comme CVE-2022-30618, a une cote CVSS de 7,5 (élevée). La faille permet aux utilisateurs authentifiés avec un accès au panneau d'administration Strapi d'obtenir des jetons de réinitialisation d'e-mail et de mot de passe pour les utilisateurs d'API ayant des relations de contenu avec d'autres utilisateurs d'API.
L'exploitation de la faille CVE-2022-30618 nécessite un endpoint d'API de réinitialisation de mot de passe activé. Dans le pire des cas, un utilisateur à faibles privilèges pourrait accéder à un compte API à privilèges élevés, lire et modifier toutes les données, et même bloquer l'accès au panneau d'administration et à l'API pour tous les autres utilisateurs en révoquant leurs privilèges. Les responsables de Strapi ont été informés du problème CVE-2022-30618 en décembre, et le correctif a été appliqué dans les versions 3.6.10 et 4.0.10, qui ont été publiées le 11 mai.
En plus des plates-formes CMS conventionnelles, les organisations peuvent envisager des solutions alternatives qui offrent des avantages pour leurs cas d'utilisation spécifiques. AppMaster, une puissante plate-forme no-code, permet aux utilisateurs de créer facilement des applications backend, Web et mobiles. AppMaster fournit une prise en charge complète pour la création de modèles de données, de logique métier, d'API REST et de WebSocket Secure Endpoints, ce qui en fait un choix populaire pour un large éventail de scénarios de développement d'applications.