
Sécuriser l'informatique sans serveur, le dernier paradigme du cloud [Q&A] – Un bon serveur Minecraft
La pénurie de compétences dans le cloud a fait de la sécurité un défi majeur pour les entreprises. En fait, pratiquement toutes les violations de données dans le cloud aujourd'hui sont dues à une erreur humaine plutôt qu'à un piratage génial. Les pirates informatiques ne se donnent même pas la peine de lancer des attaques dans le cloud public. ils recherchent simplement des systèmes mal configurés laissant les données exposées.
Dans ce contexte, un tout nouveau modèle de cloud computing prend forme: l'informatique sans serveur. Dans un monde où certifications dans le cloud et compétences en matière de sécurité font déjà défaut et causent un chaos dans le cloud, que va faire l'informatique sans serveur pour aggraver ce problème pour les entreprises? Est-il possible pour les entreprises d'éviter les mêmes erreurs avec ce nouveau paradigme qu'elles font dans les environnements de cloud traditionnels?
Pour éclaircir la situation, nous avons rencontré Joe Vadakkan, chef de la sécurité en nuage chez Optiv Security, le plus grand intégrateur de solutions de sécurité au monde.
BN: Qu'est-ce que l'informatique sans serveur?
JV: l'informatique sans serveur, ou FaaS (Function-as-a-Service), est un modèle d'informatique en nuage qui permet aux développeurs de déployer et d'exécuter des fonctions de code individuelles plutôt que de déployer des applications entières. Des services tels que AWS Lambda et Microsoft Azure Functions, dont la popularité ne cesse de croître, offrent des plates-formes FaaS qui font de l'informatique sans serveur et de l'informatique véritablement utilitaire une réalité en permettant aux développeurs de déployer des fonctions de code dans le cloud plutôt que des applications entières. l'utilisation exacte des ressources de ces fonctions dans un environnement entièrement automatisé, plutôt que de pré-payer pour la capacité d'exécuter des applications entières nécessitant une gestion humaine. Ainsi, au lieu de déployer une application sur une machine virtuelle discrète, les développeurs déploient leurs fonctionnalités d'application directement sur une plate-forme FaaS. Toutes les fonctionnalités de serveur traditionnelles sous-jacentes (calcul, mémoire, sauvegarde, stockage, etc.) sont extraites et gérées. par le fournisseur de cloud.
Ce modèle offre de nombreux avantages aux développeurs, notamment une réduction des coûts de sécurité, des économies de coûts, une productivité accrue et une mise à l'échelle automatique. C'est pourquoi nous constatons une accélération de l'adoption de ce nouveau paradigme du cloud.
BN: En quoi est-ce différent du cloud computing traditionnel?
JV: L'informatique sans serveur est un type d'informatique en nuage, mais il est important de noter deux différences majeures entre les deux modèles. Premièrement, l’informatique sans serveur automatise les tâches de sécurité et de gestion de la base de données, telles que l’application de correctifs, le stockage et la sauvegarde, que les utilisateurs finaux sont tenus de gérer manuellement dans un environnement cloud traditionnel.
La deuxième différence majeure entre les deux modèles informatiques réside dans la répartition des responsabilités entre le fournisseur de cloud et le propriétaire de l'application. Dans un environnement cloud traditionnel, les utilisateurs finaux sont responsables de la sécurisation des systèmes d'exploitation, des applications et des données. Avec l'informatique sans serveur, la responsabilité de la sécurisation de la plate-forme sous-jacente est en grande partie transférée au fournisseur de cloud. Les développeurs doivent donc uniquement se concentrer sur la sécurisation des données et de la couche de code.
BN: Les entreprises continuent de faire face à des problèmes de sécurité dans le cloud, et l’informatique sans serveur est désormais visible. Qu'est-ce qui rend difficile la sécurisation de ces environnements?
JV: D'abord, la bonne nouvelle. Dans la mesure où, dans un environnement sans serveur, la sécurité de l’infrastructure sous-jacente est déléguée au fournisseur de cloud plutôt qu’à l’utilisateur final, les développeurs peuvent s’appuyer sur l’expertise en sécurité du fournisseur de cloud plutôt que d’essayer de devenir eux-mêmes des experts. Cela devrait contribuer à améliorer les conditions de sécurité des entreprises, tout en permettant aux développeurs de se concentrer sur ce qu'ils font le mieux: écrire et déployer du code.
Cela dit, les environnements sans serveur comportent leur propre lot de problèmes de sécurité. Parmi eux, les principaux sont les développeurs qui déploient du code dans des environnements FaaS sans même consulter leurs organisations de sécurité, ce qui ouvre la porte à des risques importants d'attaques par modification / injection de code, etc. Par exemple, un mauvais acteur pourrait modifier le code ou le flux d'un programme pour dire «au lieu de faire X, faites Y» (pensez à modifier les signaux de télémétrie IoT dans l'injection), ce qui explose la surface d'attaque.
L’accès des utilisateurs et des fonctions est également une préoccupation majeure. Si les utilisateurs et les fonctions ont plus d'accès que nécessaire, les dégâts résultant d'une attaque seront bien plus graves que si les contrôles d'accès appropriés étaient appliqués.
BN: Comment les entreprises peuvent-elles élaborer des stratégies judicieuses de sécurisation des environnements sans serveur?
JV: Avant toute chose, les entreprises doivent donner la priorité à la sécurité au début de toute initiative métier sans serveur, au lieu de la laisser après coup. Nous commençons à voir plus d'organisations adopter cette approche avec un modèle DevSecOps.
Les autres éléments importants d’un environnement sécurisé sans serveur sont les suivants:
- Cryptage – Il n'est pas rare de voir des organisations stocker des informations «secrètes», telles que des clés d'API, des mots de passe et des paramètres de configuration, en texte brut. Dans le paysage sophistiqué des menaces d’aujourd’hui, cela n’est plus acceptable. Les équipes de sécurité doivent veiller à ce que les clés des fonctions soient gérées correctement, comme la fonctionnalité KMS, les magasins de paramètres et les gestionnaires lambda. Ils doivent également s'assurer que toutes les données, qu'elles soient au repos ou en transit, soient cryptées.
- Gestion des identités et des accès (IAM) – Trop souvent, les développeurs ont plus d'accès que nécessaire pour créer, déployer et modifier du code, et les fonctions disposent d'un accès universel à tous les «secrets» et ressources de tous les environnements. Les équipes de sécurité doivent identifier les personnes qui développent le code et les fonctions, puis mettre en œuvre les contrôles d’accès appropriés. Suivez le principe de l’accès le moins privilégié, qui ne donne aux utilisateurs que les droits d’accès dont ils ont besoin pour mener à bien leurs tâches. Les fonctions ne disposent que des privilèges nécessaires pour mener à bien la logique voulue. L'IAM est l'un des moyens les plus efficaces de segmenter les ressources et de limiter l'exposition en cas d'attaque.
- Sécurité au niveau du code – Avec l’informatique sans serveur, les cibles potentielles d’attaque ne sont plus au niveau du serveur; ils sont au niveau du code. Dans ces conditions, les équipes de sécurité doivent intégrer des contrôles de sécurité dans le code de l'application lui-même afin d'empêcher les attaques par injection de code et d'autres moyens d'exploitation.
- Solutions de surveillance et de journalisation en temps réel – Certains fournisseurs d'informatique sans serveur offrent des fonctionnalités de journalisation, mais elles ne sont souvent pas assez robustes pour assurer une surveillance complète de la sécurité et des audits. Le déploiement de solutions qui regroupent les journaux de divers services et services cloud sans serveur et les envoient ensuite à un système de gestion des informations et des événements de sécurité (SIEM) peut avoir un impact considérable sur la détection des menaces et la réaction aux incidents.
Plus important encore, les entreprises doivent prendre le temps d'identifier et de tirer des leçons des erreurs commises lors de la sécurisation d'environnements cloud, afin de ne pas les répéter dans un monde sans serveur.
Crédit photo: Jirsak / Shutterstock
Commentaires
Laisser un commentaire