La sécurité applicative?
Cet article a été publié en septembre 2016 dans Trait de génie, le magazine électronique du Réseau ÉTS, l’Association des diplômés de l’École de technologie supérieure bit.ly/2ygqExD ainsi qu’en avril 2017 sur le blogue de GoSecure (English version) : bit.ly/2hFb3NY
Parce qu’elles souhaitent demeurer en affaires, les entreprises misent sur la sécurité de leur périmètre, par exemple, afin de protéger leur fameuse recette secrète, les données confidentielles de leur précieuse clientèle, etc. Pour ce faire, les vendeurs de produits de sécurité informatique proposent plusieurs types de défense. L’intention est excellente et l’entreprise se sent alors en confiance, bien blottie au chaud derrière son pare-feu (firewall).
Cependant, il y a anguille sous roche. Les entreprises proposent sur Internet (donc à tout le monde, y compris aux gens malveillants) diverses applications web pour, entre autres, offrir des services et permettre d’effectuer des transactions en ligne. Ces applications peuvent prendre différentes formes telles qu’une version mobile pour les téléphones intelligents, un site Internet et des services web. La question est : outre la sécurité de l’infrastructure, quelle est l’arme de défense contre les pirates informatiques? Réponse : la bonne conception du code source de l’application. Voici : la sécurité applicative.
La sécurité applicative, pourquoi?
Une application peut être développée à l’interne ou par un sous-traitant, en plus d’être conçue avec des librairies et d’autres lignes de code déjà existantes et disponibles sur Internet. Imaginez votre propre application. Il s’y trouve sûrement un endroit où un champ texte est prévu pour que votre client puisse y entrer une donnée, que votre code source effectue une requête à votre base de données et que l’application lui retourne un résultat. Que se passe-t-il si le concepteur n’a pas validé ni traité la donnée entrée par l’utilisateur selon les bonnes pratiques de développement en sécurité applicative? Un attaquant pourrait découvrir la faille, l’exploiter et extraire votre célèbre recette secrète et/ou les données confidentielles de vos clients… Boum, vous faites la manchette des journaux, perdez la confiance de vos clients, et, bien entendu, tout ce brouhaha engendrera une perte financière.
La morale de l’histoire : toujours tenir pour acquis que vos applications sont la cible quotidienne d’attaques informatiques; d’où l’importance de la sécurité applicative.
Comment sécuriser votre code source?
Il existe des moyens concrets pour sécuriser le code source applicatif. Dans un premier temps, les gestionnaires de l’entreprise doivent accepter ce type de défense et les coûts qui y sont reliés. Il faut parler leur langage (c.-à-d. financier) et leur présenter les risques auxquels l’organisation fait face en cas d’intrusion. Ils doivent également savoir qu’il est beaucoup plus coûteux de corriger une faille de sécurité dans une application déjà existante sur Internet que lorsqu’elle est en phase de développement.
Deuxième étape : établir sa stratégie pour améliorer sa posture en matière de sécurité applicative. Idéalement, il faudra dresser le bilan de santé actuel de ses applications. Pour ce faire, les firmes externes en cybersécurité sont des candidates de choix pour fournir rapidement un rapport détaillé sur l’état actuel. Les résultats de tests d’intrusion, de revue de code de sécurité et d’analyse du cycle de vie du développement applicatif déjà en place deviennent les éléments clés pour prioriser les efforts de métamorphose. Selon le niveau de maturité en sécurité applicative de l’entreprise, une stratégie d’amélioration doit être mise en place et les travaux s’étaleront sur une période de 1 à 3 ans. L’objectif est d’inclure les activités de sécurité tout au long du processus, de la conception des applications à leur maintenance une fois exposées sur le web. Généralement, former les concepteurs sur les bonnes pratiques de développement en sécurité est le début de l’aventure.
En conclusion, pour une entreprise, réorganiser le cycle de vie du développement applicatif est un projet en soi. Il faut prioriser les éléments, planifier et organiser la mise en œuvre, et surtout procéder étape par étape. La clé du succès est de découvrir et de corriger les vulnérabilités de sécurité avant que les pirates informatiques le fassent.
Capsule « Diplômés & étudiants de l’ÉTS »
Plusieurs diplômés et étudiants de l’ÉTS s’impliquent bénévolement dans la communauté de la cybersécurité à Montréal en partageant leurs connaissances tout en faisant évoluer le domaine. Voici plusieurs exemples :
OWASP : Standard international de l’industrie en sécurité applicative (Open web Application Security Project), avec un chapitre actif à Montréal
Le site web d’OWASP est une encyclopédie de références, entre autres sur les bonnes pratiques de développement en sécurité applicative, en plus d’offrir une multitude d’outils gratuits. De plus, le chapitre OWASP Montréal offre mensuellement une conférence gratuite sur l’heure du midi traitant de divers sujets reliés à la sécurité applicative et présentée par les experts du domaine.
Sites web :
OWASP, Chapitre Montréal : owasp.org/index.php/Montréal
OWASP Global : owasp.org
NorthSec : Le plus grand événement de sécurité appliquée au Canada
Cet événement a pour objectif d’accroître les connaissances et les compétences techniques en sécurité des professionnels et des étudiants. Pendant les deux jours de conférence et de compétition (capture the flag, ou CTF), les participants s’affrontent dans des épreuves de cryptanalyse, de rétro-ingénierie, de recherche de failles applicatives, d’analyse réseau et d’étude de cartes à puce.
Site web : nsec.io
MontréHack : Ateliers pratiques sur la sécurité informatique
Chaque troisième lundi du mois, trois heures d’atelier complet sont données pour l’apprentissage et le partage de connaissances sur la sécurité informatique en travaillant sur des problèmes appliqués. La solution est présentée à la fin de l’atelier, et c’est gratuit. Pour la clientèle étudiante et professionnelle seulement.
Site web : montrehack.ca
L’équipe DCI de l’ÉTS : Compétitions en informatique
La délégation des compétitions en informatique (DCI) regroupe annuellement les étudiants de l’École de technologie supérieure les plus doués en informatique pour représenter l’université à des événements d’envergure régionale, nationale, et internationale. Leur fiche de pointage est très impressionnante; ils se classent toujours dans les premiers à la ligne d’arrivée.
Site web : dciets.com