Low-code, no-code et zero-code sont des mots à la mode dans l’univers des applications professionnelles puisque des utilisateurs ordinaires effectuent des tâches autrefois réservées aux développeurs. La fonctionnalité requise est assemblée à partir de modèles tout prêts, l’interface est conçue dans un éditeur WYSIWYG si nécessaire et la logique du programme est décrite à l’aide de diagrammes simples ou d’extraits de code très courts. Un utilisateur qui a quelques connaissances en informatique peut très bien gérer tout ça sans avoir suivi une formation spécifique. Le low-code aide à réduire le temps consacré au développement d’une application mobile simple, en passant de six mois à quelques semaines seulement, alors qu’il ne faut compter que quelques heures pour concevoir un nouveau rapport ou la page promotionnelle d’une boutique en ligne.
De nombreuses plateformes no-code sont disponibles : Bubble pour développer des applications mobiles, Webfloz pour concevoir les sites, et Parabola et Airtable pour la partie d’analyse et de science des données. Tous ces systèmes aident les entreprises à réduire les coûts en informatique et à accélérer le développement des fonctions commerciales.
Il y a tout de même quelques inconvénients, et les risques en cybersécurité sont les plus importants. Pour que les données et les processus de l’entreprise soient sécurisés, ces risques doivent être minimisés dès la mise en place de la plateforme low-code. Voici les éléments à prendre le plus en compte.
Les comptes qui ont des privilèges
La mini-application que votre entreprise développe sur la plateforme low-code ou no-code a souvent besoin d’accéder à plusieurs bases de données et ressources informatiques. Généralement, elle s’exécute grâce aux privilèges du créateur et tous les utilisateurs ultérieurs de l’application réalisent les actions en ayant les mêmes accès. Dans cette situation, les attaques d’élévation de privilèges ne sont qu’à un saut de puce et il sera difficile de déterminer qui est responsable de l’activité malveillante en consultant le registre.
Comment réduire les risques
- Adoptez le principe du moindre privilège pour toutes les bases de données et connexions API du système no-code.
- Utilisez des comptes différents pour les utilisateurs de la mini-application. Il est inacceptable d’utiliser les identifiants du développeur de l’application.
- Introduisez des mesures de connexion spéciales pour savoir qui utilisait l’application lorsque les bases de données et les APIs ont été consultées.
Une autorisation incorrecte
Presque toutes les plateformes low-code utilisent le concept connecteur/connexion, ce qui leur permet d’avoir accès aux bases de données et aux autres applications qui se trouvent au sein de l’entreprise. L’architecture de ces systèmes ne donnent pas à l’utilisateur un contrôle direct sur la connexion après qu’il a donné son accord pour l’établir. La connexion peut être réutilisée pour faire d’autres requêtes pour les mêmes données, qu’il s’agisse d’un autre utilisateur ou que ce soit à partir d’une autre mini-application.
Comment réduire les risques
- Rafraîchissez régulièrement les jetons d’autorisation des systèmes associés à la plateforme no-code.
- Surveillez activement les connexions utilisées.
- Réécrivez les mini-applications mal programmées qui utilisent des connexions « empruntées ». Désactivez les connexions qui ne sont pas nécessaires.
- Suivez le principe du moindre privilège.
- Formez les utilisateurs de l’entreprise pour qu’ils comprennent les risques liés à un accès trop vaste aux données de l’application.
Les données sont divulguées ou modifiées
Étant donné que les plateformes no-code ont un accès étendu aux données, les mini-applications programmées par des personnes non spécialisées peuvent partager plus de données que ce que le développeur souhaitait. Les erreurs dans les processus de traitement ou de synchronisation des données entre les systèmes peuvent provoquer une corruption involontaire et étendue des données et peut donner lieu à des copies non autorisées.
Comment réduire les risques
- Limitez l’accès aux données, minimisez l’écriture et supprimez les autorisations.
- Réduisez la liste des employés qui peuvent créer et modifier les connexions, et établissez des règles d’accès.
- Surveillez les données transférées par la plateforme no-code afin d’identifier les quantités excessives dans les meilleurs délais.
Des paramètres de sécurité incorrects
Des bugs dangereux et de mauvaises configurations peuvent apparaître dans le code de la mini-application : accès au stockage des fichiers sans chiffrement, stockage des clés API ou d’autres secrets dans le code de l’application ou accès aux systèmes de l’entreprise sans une véritable authentification. Étant donné que de nombreuses applications low-code sont faciles à analyser, les cybercriminels peuvent rapidement extraire toutes les informations et les utiliser pour lancer des attaques puis voler les données.
Comment réduire les risques
- Veillez à la conformité avec les meilleures pratiques de l’industrie pour configurer les applications et conserver vos secrets.
- Formez les utilisateurs de l’entreprise qui développent des applications no-code pour qu’ils suivent ces pratiques.
- Adoptez d’autres mesures de sécurité au niveau de l’infrastructure. Limitez les méthodes d’accès non sécurisées et surveillez les requêtes anormales de systèmes no-code.
Le mauvais nettoyage de la saisie
La plupart des applications low-code ont un type d’interface qui vous permet de saisir des données ; par exemple, les coordonnées saisies dans le formulaire d’un tout nouveau site. La vérification des formulaires de saisie est souvent insuffisante ou inexistante, ce qui laisse la porte ouverte aux classiques attaques d’injection SQL.
Comment réduire les risques
- Formez les utilisateurs de l’entreprise. Les mini-applications qu’ils créent doivent vérifier et nettoyer toutes les informations entrantes, qu’il s’agisse d’un texte, d’un fichier CSV ou de toute autre chose.
- Déployez des outils supplémentaires de nettoyage des données. Par exemple, lorsque vous transférez les données des requêtes SQL de la plateforme low-code à la base de données.
Des modules vulnérables
Beaucoup de plateformes no-code ont une architecture modulaire avec leurs propres composants de stockage pour les projets de l’utilisateur. Les vulnérabilités de ces composants sont souvent très graves et s’aggravent parce qu’elles ne peuvent pas être suivies ni rapidement mises à jour à l’aide des outils standards. Ces modules peuvent même être infectés par un cheval de Troie si le développeur est piraté.
Comment réduire les risques
- Nettoyez régulièrement la plateforme. Vous devez supprimer les plug-ins, les modules et les composants que vous n’utilisez pas.
- Limitez la liste des composants que les utilisateurs peuvent utiliser.
- Faites un inventaire de tous les composants utilisés et surveillez les vulnérabilités et les sorties de nouvelles versions.
- Utilisez des systèmes de protection spécialement conçus pour votre plateforme low-code, comme Wordfence pour WordPress.
Un traitement des données illégal
Les bases de données stockées par les mini-applications sont parfois sujettes aux conditions générales d’une plateforme low-code spécifique, ce qui signifie que les administrateurs de l’entreprise ne contrôlent pas totalement l’emplacement et le contenu des données. Cette situation peut être une infraction aux lois locales relatives au stockage de certains types de données, comme le RGPD.
Comment réduire les risques
- Formez les utilisateurs de l’entreprise pour qu’ils connaissent les règles de base relatives au traitement des données.
- L’équipe de sécurité informatique doit vérifier toutes les applications qui ont potentiellement accès à des données sensibles.
Les applications oubliées
De par leur nature, les applications no-code sont faciles à créer et peuvent être laissées pour qu’elles s’exécutent en toute discrétion. Par exemple, si un employé quitte l’entreprise, sa mini-application s’exécute encore et crée des rapports journaliers. Ou bien, un collègue pourrait continuer à s’en servir sans que les équipes informatiques et de sécurité informatique ne le remarquent.
Comment réduire les risques
- Tenez un répertoire détaillé des mini-applications, de leurs propriétaires et des utilisateurs finaux.
- Supprimez les applications et les connexions qui ne sont pas nécessaires. Vérifiez la liste des utilisateurs autorisés et enlevez ceux qui n’ont plus besoin de l’application.