Comment atténuer les problèmes de sécurité liés à l'utilisation du no-code/low-code ?
L'émergence du low-code et du no-code dessine un avenir où la complexité de la programmation s'efface devant une accessibilité plus large. Cette innovation, significative dans l'univers de l'IT, n'échappe toutefois pas à des problématiques liées à la sécurité. Approfondissons ces aspects.
Les enjeux du low/no-code dans l’IT
L'incursion du low-code/no-code au sein du paysage informatique modifie de facto les dynamiques. Ces outils présentent un atout notoire : ils démocratisent l'accès au développement logiciel ; il s'agit moins de disposer d’une connaissance pointue en codage que de maîtriser des interfaces graphiques intuitives. Le défi demeure de s'approprier les compétences nécessaires pour générer des solutions performantes. Par ailleurs, l’efficacité et la rapidité qu'apportent ces outils laissent entrevoir des opportunités considérables.
Les principaux risques liés à l’utilisation du low/no-code
Alors que les plateformes low-code ou no-code facilitent le processus de développement et réduisent les délais de déploiement des applications, elles sont susceptibles d'engendrer des défis en matière de sécurité :
Externalisation du développement. Utiliser une plateforme low-code/no-code, c'est déléguer une large part de la création de code aux développeurs de la plateforme, créateurs des modules préconstruits. Cette externalisation, souvent insoupçonnée, pourrait rendre complexe l'application des règles de sécurité de l'organisation ou le respect des pratiques reconnues.
Mises à jour par des tiers. En externalisant le code, le processus de mise à jour s'en trouve également délégué. Il faut donc faire confiance aux développeurs de la plateforme pour gérer les vulnérabilités de sécurité au sein des modules fournis, et pour réaliser les mises à jour nécessaires. Il y a un risque de perte de contrôle sur la gestion des vulnérabilités connues dans les applications low-code.
Absence de contrôles de sécurité. Les plateformes low-code/no-code accélèrent la conception et le déploiement des applications, ce qui peut conduire à négliger les contrôles de sécurité appropriés.
Manque de validation des données. Ces plateformes sont fréquemment utilisées pour créer des applications manipulant des données métier. Si ces données ne sont pas correctement validées, l'application pourrait produire des résultats erronés. En sus, si les données ne sont pas stockées de façon sécurisée, elles deviennent vulnérables.
Développeurs inexpérimentés. Ces plateformes sont conçues pour permettre à tous, même sans grande expérience en programmation, de créer des applications. Cette démocratisation du développement n’est pas sans risque, notamment pour les « citizen developers » qui pourraient méconnaître des vulnérabilités ou des problèmes de conformité évidents pour des développeurs plus expérimentés.
Dépendance vis-à-vis du fournisseur. L'utilisation d'une plateforme low-code/no-code entraîne une forte dépendance vis-à-vis du fournisseur de la plateforme. Si ce dernier venait à disparaître ou à modifier ses conditions d'utilisation, cela pourrait impacter de manière significative les applications développées.
Compatibilité et intégration. Le développement low-code/no-code s'appuie sur des blocs préconstruits qui peuvent ne pas s'intégrer parfaitement avec les autres systèmes et technologies existants au sein de l'organisation. Ce manque d'intégration peut provoquer des failles de sécurité non anticipées.
Vous cherchez un poste ou une mission dans la cybersécurité ?
Comment atténuer les risques de sécurité liés à l’utilisation du low/no-code ?
Étant donné que les enjeux de sécurité mentionnés précédemment sont intrinsèques aux plateformes low-code/no-code, leur élimination totale est irréalisable. Toutefois, il reste possible de minimiser leur occurrence ou leur impact potentiel en adoptant certaines meilleures pratiques.
Déployer la rigueur nécessaire en matière de sécurité
Malgré la pression inhérente aux délais de production, il s'avère nécessaire d'accorder la priorité à la sécurité plutôt qu'aux délais de livraison. Il convient d'adopter des processus rigoureux et formalisés pour privilégier la sécurité et la conformité, à fortiori avec des plateformes low/no-code.
Mettre en place des tests de sécurité et exiger des SBOM
Le code utilisé dans les applications et environnements de développement low-code/no-code se trouve parmi les zones à risque majeures. Dans les contextes de développement traditionnels, les organisations orientées vers la sécurité réalisent des tests de sécurité sur le code et les packages d'applications à l'aide d'outils SAST et DAST.
Toutefois, ces outils ne se montrent pas toujours disponibles pour le développement low-code/no-code. Dans cette optique, la demande de résultats SAST et DAST concernant les composants back-end et le code s'impose comme une alternative.
En complément, il s'avère de plus en plus courant de requérir uneSBOM, qui énumère l'ensemble du code et des packages employés dans l'environnement du fournisseur, ainsi qu'une certification de surveillance continue des menaces et de gestion des vulnérabilités.
Conserver des développeurs qualifiés au sein de l'équipe
Les plateformes low-code ou no-code ne supplantent pas les développeurs qualifiés. Il reste donc indispensable de disposer de développeurs professionnels au sein de l'équipe pour superviser l'intégralité du processus de développement.
Sélectionner une plateforme de confiance
Lors du choix d'une plateforme, il convient d'évaluer les fonctions de sécurité qu'elle propose et la fiabilité de l'éditeur. Un historique marqué par de nombreux problèmes de sécurité ou une forte probabilité de rachat futur peuvent complexifier un projet.
Personnaliser les applications et ajouter des fonctions
Les plateformes low-code/no-code de qualité permettent de personnaliser les applications et d'ajouter des fonctions. En cela, elles offrent l'opportunité d'intégrer des contrôles de sécurité supplémentaires et de singulariser une application, la rendant de fait moins vulnérable aux tentatives d'exploitation de défauts éventuels.
Éviter les plateformes low-code pour les applications sensibles
Le développement low-code/no-code est certes intuitif et rentable, mais les applications où la sécurité et la conformité sont critiques ne constituent pas de bons candidats pour ces modes de développement.
Former les employés
En plus des stratégies d'atténuation, mettre en place une formation à la sécurité pour toute personne développant à l'aide d'outils low-code/no-code demeure incontournable compte tenu de la relative rareté des contrôles de sécurité intégrés et des capacités au sein de ces environnements, il est nécessaire que chacun comprenne les risques potentiels et œuvre pour les réduire ou les éviter dans la mesure du possible.
L'essor des plateformes low-code/no-code s'impose comme un tournant majeur. De fait, elles offrent aux entreprises une opportunité précieuse de catalyser leur transformation numérique, tout en démocratisant la création d'applications à un public plus large. A contrario, les risques en matière de sécurité ne sont pas à négliger, et chaque entreprise doit nécessairement s'y confronter.
Par ailleurs, il est désormais évident que le low-code/no-code va continuer à prendre de l'ampleur dans le domaine de l'IT. C'est la raison pour laquelle, il est plus que jamais nécessaire pour les entreprises de comprendre et de minimiser les risques associés à son utilisation. C’est en assurant une sécurité optimale que les entreprises pourront pleinement bénéficier des nombreux avantages de cette technologie en plein essor.
Article rédigé par Romain Frutos, rédacteur passionné par l’IT et les nouvelles technologies !
Commentaire (1)
Connectez-vous ou créez votre compte pour réagir à l’article.