Skip to main content

Découverte de la sécurité des applications

Objectifs de formation

Une fois cette unité terminée, vous pourrez :

  • Décrire ce qu’est une application
  • Définir la sécurité des applications et son rôle dans le développement d’applications

Qu’est-ce qu’une application ?

Si vous avez déjà utilisé un ordinateur, vous avez utilisé une application. Pour en donner une définition, une application est un logiciel qui exécute une ou plusieurs tâches et permet une interaction directe avec l’utilisateur. Voyons concrètement ce que cela signifie en examinant des exemples d’applications et leur utilisation.

Les applications se présentent sous de nombreuses formes, telles que les programmes de base de données, les navigateurs Web, les clients de messagerie, les feuilles de calcul, les lecteurs multimédias, les traitements de texte et les logiciels de retouche d’images/photos (pour n’en nommer que quelques-unes). Chacun de ces logiciels permet à un utilisateur d’interagir directement avec l’application. Par exemple, lorsque vous utilisez un logiciel de traitement de texte, vous interagissez directement avec l’application lorsque vous saisissez, supprimez ou copiez/collez du texte. Vous interagissez avec les applications de différentes manières, que ce soit sur un ordinateur à l’aide d’un logiciel de retouche photo comme Photoshop, en interagissant avec une application mobile sur votre smartphone ou en effectuant des opérations commerciales sur une application bancaire en ligne. C’est assez simple, n’est-ce pas ? 

Les développeurs créent des applications de deux manières différentes. Ils développent du code propriétaire qui n’est pas partagé en dehors d’une organisation, ou bien ils développent du code via des projets open source, qui sont conçus et développés de manière publique et collaborative avec des développeurs qui travaillent ensemble. 

Les applications open source permettent aux développeurs d’utiliser, d’étudier et de modifier le logiciel et ainsi, de l’adapter et de l’appliquer à des utilisations diverses. Il existe toute une communauté qui se consacre au développement de projets open source. Si devenir ingénieur en sécurité des applications vous intéresse, contribuer à des projets open source est un excellent moyen d’acquérir une expérience pratique dans le développement et la sécurité des applications tout en renforçant vos compétences et en en faisant la démonstration. Ainsi, vous comprendrez mieux comment les applications sont développées et fonctionnent, et commencerez à comprendre le rôle de la sécurité des applications dans le cycle de vie du codage et du développement logiciel.

Le rôle de la sécurité des applications

Dans la pile technologique d’une organisation, la couche application est celle qui est la plus proche de l’utilisateur. Elle permet une interaction avec l’utilisateur et offre donc la plus large surface d’attaque par des intrus. De ce fait, un nombre relativement important de failles de sécurité sont le résultat de vulnérabilités au sein des applications. 

Les applications peuvent également représenter un trésor de données à caractère personnel qu’un assaillant aimerait voler, falsifier ou détruire, dont des informations personnelles identifiables (PII) telles que les noms, les données d’identification nationale (dont les numéros de sécurité sociale) et les adresses e-mail. C’est pour cela que la protection des applications est un élément clé de la cybersécurité, afin de minimiser les risques de perte de données et les impacts financiers, de réputation, de confidentialité ou juridiques qui en résultent pour une organisation et ses clients. 

Les ingénieurs en sécurité des applications doivent penser comme des assaillants pour comprendre comment une application pourrait éventuellement être utilisée à mauvais escient, tout en s’assurant que les saisies faites par des utilisateurs légitimes sont assainies, validées et traitées en toute sécurité par l’application. 

Les ingénieurs en sécurité des applications se concentrent sur la protection des applications afin d’empêcher les assaillants d’accéder aux données sensibles. Puisqu’il est beaucoup plus facile et moins coûteux de trouver les failles de sécurité dans les premiers stades du développement des logiciels, ils doivent réunir les exigences en matière de sécurité avant de commencer tout travail de conception ou de développement.

Une ingénieure observe à la loupe un insecte (bogue), sur un ordinateur portableLes ingénieurs en sécurité des applications collaborent avec les équipes de développement et les unités commerciales pour aider à concevoir, créer, documenter, coder, tester, déployer et maintenir des applications sécurisées. Le processus de conception et de création d’applications est connu sous le nom de cycle de vie du développement logiciel (SDLC). Dans le cadre de ce processus, les développeurs d’applications sont responsables des étapes de documentation et de programmation (codage). Ils écrivent le code source qui permet à une application d’effectuer les tâches souhaitées. Les ingénieurs en sécurité des applications s’associent aux développeurs d’applications et à d’autres acteurs du SDLC pour protéger les applications en diagnostiquant, documentant et corrigeant les vulnérabilités de sécurité dans les applications.

Généralement, dans une organisation, l’objectif principal d’un développeur d’applications est de produire du code fonctionnel aussi rapidement que possible pour répondre aux besoins de l’entreprise. Pour cette raison, l’écriture de code sécurisé n’est parfois pensée qu’après coup. C’est là que les ingénieurs en sécurité des applications peuvent être extrêmement utiles : en intégrant la sécurité dans le processus de développement afin que les données sensibles restent protégées. Ce faisant, ils visent à garantir qu’une application offre ce que l’on appelle communément la triade CIA : confidentialité, intégrité et disponibilité. 

Par exemple, les ingénieurs en sécurité des applications aident les développeurs à concevoir et à déployer l’application tout en respectant une authentification appropriée (pour protéger la confidentialité des données), en transférant les informations sensibles en toute sécurité pour empêcher qu’elles ne soient modifiées (intégrité) et en garantissant que les utilisateurs peuvent accéder à leurs données (disponibilité). 

Les ingénieurs en sécurité des applications sont souvent intégrés à une équipe de développement d’applications et conseillent les concepteurs et développeurs. Ils s’assurent que les exigences des applications comprennent des considérations de sécurité, ils suggèrent des protocoles d’authentification sécurisés pendant la phase de conception, ils mettent en œuvre des revues de code pour vérifier l’absence de vulnérabilités de sécurité courantes, ils testent les applications avant le déploiement et ils conseillent sur le calendrier et les méthodes de correction des vulnérabilités.

Dans cette unité, vous avez appris ce qu’est une application et comment le développement d’applications et le volet sécurité fonctionnent concrètement ensemble. Dans l’unité suivante, vous découvrirez l’impact commercial de la sécurité des applications, les compétences dont les ingénieurs en sécurité des applications ont besoin et les situations courantes de la sécurité des applications.

Ressources

Formez-vous gratuitement !
Créez un compte pour continuer.
Qu’est-ce que vous y gagnez ?
  • Obtenez des recommandations personnalisées pour vos objectifs de carrière
  • Mettez en pratique vos compétences grâce à des défis pratiques et à des questionnaires
  • Suivez et partagez vos progrès avec des employeurs
  • Découvrez des opportunités de mentorat et de carrière