Security By Design: minimiser la surface d'attaque
La sécurité by design est une approche 360° du développement logiciel qui met l'accent sur la sécurité tout au long du processus de développement, au lieu de la traiter comme une réflexion après coup. Ce principe implique la mise en oeuvre de la sécurité à tous les niveaux du cycle de vie du développement logiciel (SDLC), y compris pendant la collecte des exigences, la conception et la mise en oeuvre.
« La sécurité dès la conception est une approche holistique du développement logiciel qui met l'accent sur la sécurité tout au long du processus. »
La sécurité by design consiste à minimiser la surface d'attaque potentielle, cela sous-entend que les développeurs doivent partir du principe que les utilisateurs commettront des erreurs et inclure dans leur code les méthodes de protection adéquates.
L'intégration de la sécurité dans les applications peut s'avérer difficile car certaines attaques sont complexes à anticiper par des êtres humains.
Une façon d'améliorer les chances d'éviter ces vulnérabilités est d'envisager la manière dont les attaquants pourraient essayer de pénétrer dans le système, puis de mettre en œuvre des contre-mesures en conséquence.
Un logiciel sécurisé by design
Dans le cadre du développement de services numériques secure by design, les développeurs ont la lourde tâche de sécuriser leurs applications. Ils doivent se protéger contre les attaques malveillantes tout en fournissant les fonctionnalités applicatives nécessaire.
La différence par rapport aux systèmes traditionnels est l'anticipation de la menace en amont plutôt que la réaction après coup. Dans l'ensemble cela permet de concevoir une architecture IT plus saine et plus sûre.
La difficulté de l'approche « security by design » réside principalement dans la capacité des développeurs à conserver la maitrise du système dans sa globalité. Il est donc essentiel de faire les bon choix au départ en limitant la surface d'attaque potentielle, et donc de limiter le nombre de composants tiers non maitrisés.
Gestion des dépendances et Audit
Une dépendance logicielle est souvent l'arbre qui cache la forêt, l'import d'une seule librairie peut entrainer une cascade de failles potentielles : une librairie dépend d'une autre, qui dépend d'une autre,...
Garantir et maintenir la fiabilité d'un système dépendra fortement des éléments qui le compose, c'est pourquoi un audit approfondi est nécessaire pour qualifier la surface d'attaque exposée par les composants tiers. Et ce, tout au long du cycle de vie de l'application.
Limiter la surface d'attaque
La solution Aeonics est en elle-même sécurisée by design, le nombre de dépendances est nul ce qui limite fortement la surface d'attaque.
Les microservices conçus par les développeurs bénéficient automatiquement d'un contexte de sécurité éprouvé. Les fonctionnalités déployées en mode serverless avec Aeonics bénéficient donc de-facto d'une approche secure by design.
Aeonics en tant qu'outil, simplifie le développement d'applications secure by design, tout en laissant les développeurs maitres de leur code.