Identification des menaces de sécurité des applications courantes
Objectifs de formation
Une fois cette unité terminée, vous pourrez :
- Décrire l’importance d’inventorier et de hiérarchiser les applications et leurs risques
- Répertorier les informations d’accès aux comptes clés que les ingénieurs en sécurité des applications doivent identifier
Présentation des applications et de leurs risques
L’utilisation des applications par les consommateurs et les entreprises a augmenté régulièrement au cours des dernières années et devrait continuer sur cette voie. Ces dernières années, le développement d’applications est devenu plus facile tout en nécessitant moins de ressources. Dans les grandes organisations, des équipes disséminées de développeurs peuvent coder, parfois même sans que les services informatiques et l’équipe sécurité le sachent. Si ces unités commerciales prennent également elles-mêmes leurs décisions d’achats technologiques, plusieurs solutions technologiques peuvent stocker les données de l’entreprise sans mettre en place beaucoup de normalisation et de contrôle.
De plus, alors que les entreprises poussent à ce que leurs projets logiciels soient menés plus rapidement, les développeurs doivent fournir des fonctionnalités métier à un rythme qui risque de mettre en péril la sécurité des applications et de leurs données. La nécessité de fournir rapidement des fonctionnalités pousse également à utiliser des processus plus automatisés, y compris l’automatisation de l’analyse de sécurité chaque fois que possible.
Cette double tendance souligne la nécessité qu’ont les ingénieurs en sécurité des applications d’aborder leur mission en identifiant d’abord les applications dans leur environnement et les risques qu’elles présentent. Tout comme une entreprise qui vend des produits physiques effectue un inventaire de ses entrepôts, les ingénieurs en sécurité des applications commencent par inventorier les applications dans leur environnement. L’identification des risques dans l’application vise à comprendre les menaces, les vulnérabilités et l’impact commercial de chaque application et à utiliser ces informations pour hiérarchiser les protections associées. L’Open Web Application Security Project (OWASP) fournit une multitude d’informations pratiques aux ingénieurs en sécurité des applications, notamment sur une approche d’évaluation des risques qui détermine les risques de sécurité les plus graves dans un environnement commercial donné.
Pour identifier un risque de sécurité, réfléchissez aux menaces impliquées, aux méthodes qui peuvent être utilisées, aux vulnérabilités qui peuvent être exploitées et à l’impact potentiel sur l’entreprise. Les ingénieurs en sécurité des applications connaissent toute une variété de risques et mettent en place des protections contre ces risques (dont certains sont décrits dans le Top 10 de l’OWASP). Dans les unités suivantes, vous en apprendrez plus sur quelques-uns d’entre eux, y compris l’injection, les scripts intersites (XSS), les mauvaises configurations de sécurité, l’authentification défaillante, le contrôle d’accès défaillant, l’exposition des données sensibles et la journalisation et la surveillance insuffisantes.
Suivi de l’accès aux applications
Lors de l’inventaire des applications et de leurs menaces, vulnérabilités, risques et impacts associés, vous avez déjà passé du temps à réfléchir aux acteurs responsables de ces menaces et à ce qu’ils veulent. Les ingénieurs en sécurité des applications doivent également réfléchir à la manière dont les attaquants pourraient accéder à un système pour voler des informations sensibles ou causer des dommages. Tout point d’entrée qu’un utilisateur légitime ou un non-utilisateur pourrait utiliser peut également être exploité par un attaquant. Il est crucial que l’ingénieur identifie et comprenne les différents types d’accès aux applications qui composent son environnement.
Les ingénieurs en sécurité des applications se posent les questions suivantes sur l’accès aux applications.
- Qui accédera à l’application ? Cette application est-elle destinée aux clients, partenaires commerciaux, employés ou fournisseurs tiers ? De quels types d’accès chacun de ces utilisateurs a-t-il besoin ? Quelles autorisations ou fonctions devront-ils exécuter ? Par exemple, l’application sera-t-elle utilisée pour effectuer des transactions financières ? Devra-t-elle être interopérable pour permettre l’accès à d’autres applications, ou à une session de navigation ?
- D’où les utilisateurs accéderont-ils à l’application ? Est-ce une application mobile ou de bureau ? Est-elle disponible uniquement pour les utilisateurs internes, tels que les employés sur un intranet d’entreprise ou est-elle disponible en externe (par exemple sur Internet) ? Les applications sensibles ont-elles été séparées des zones moins sensibles du réseau ?
- Quelles sont les fonctions d’administration privilégiées disponibles ? Quelles fonctions un administrateur peut-il exécuter et comment sont-elles contrôlées ? Comment ces comptes sont-ils surveillés ?
Lorsque vous pesez chacun de ces points, rappelez-vous que les individus malveillants peuvent potentiellement nuire à une entreprise en empruntant différents passages dans l’application. Les ingénieurs en sécurité des applications évaluent chacun de ces points d’entrée potentiels et les passages qu’ils ouvrent, puis ils mettent en place les protections appropriées. Dans le module suivant, approfondissons un peu la manière dont les applications peuvent être protégées, en commençant par la sécurisation du cycle de vie du développement logiciel.
Conclusion
Dans ce module, vous en avez appris davantage sur ce qu’est une application, nous avons expliqué les compétences dont les ingénieurs en sécurité des applications ont besoin et comment les ingénieurs en sécurité des applications identifient les applications, les risques, les vulnérabilités et les menaces spécifiques à l’environnement de leur organisation. Nous avons également donné un aperçu de certains scénarios courants de sécurité des applications. Dans le module Responsabilités de l’ingénieur en sécurité des applications, nous en apprendrons plus sur chaque scénario et sur la manière dont les ingénieurs en sécurité des applications s’en protègent en suivant le cycle de vie du développement logiciel (SDLC). Vous souhaitez en savoir plus sur la cybersécurité ? Consultez le centre de formation sur la cybersécurité sur Trailhead.