Douala, Capitale économique du Cameroun, est aussi par ailleurs la ville la plus prolifique en matière de Startups œuvrant dans le développement logiciel. Que ce soit des sites web, des Applications lourdes ou  mobiles. Personnellement j’en dénombre un peu plus d’une cinquantaine dans la ville (évidemment il y’en a bien plus) que je connais personnellement (ainsi que leurs installations), et un truc qui m’a particulièrement intrigué c’est  le manque de soin sécuritaire apporte lors du processus de production de ces applications, pour la plupart. Même constat a Yaoundé, et c’est aussi probablement le cas à Buea qui est un autre pole majeur de production logicielle chez nous. Bien plus, très peu travaillent avec une usine logicielle convenablement montée.

Apres avoir discuté avec plusieurs de ces développeurs, Gérants de boites de Dev et même des Responsables Informatique des entreprises clientes, il en ressort que la grande majorité, sinon quasi-totalité, est très peu sensibilisée sur les bonnes pratiques et les risques de sécurité potentiels en matière d’ingénierie logicielle et de protection de l’environnement de travail. La sécurité des applications y est, pour le moins, approximative pour la majorité nonobstant les risques inhérents que cela représente pour leurs clients qui œuvrent parfois dans des secteurs aussi sensibles que les banques, l’Industrie, les Administration publiques et les Télécoms.

La Sécurité d’un système d’information faisant appel à un ensemble de processus formant un tout, nous ne saurions en parler sans mentionner la sécurité applicative. Selon Wikipédia, La sécurité des Applications englobe des mesures prises tout au long du cycle de vie de l’application pour éviter les exceptions aux règles de protection d’une application ou du système sous-jacent (vulnérabilités) à travers des failles dans la conception, le développement, le déploiement, la mise à niveau ou la maintenance de l’application. De plus, cette discipline permet la mise en œuvre des moyens pour un renforcement de la qualité des Applications produites et/ou utilisées au sein du Système d’Information. De façon générale, la Sécurité Applicative se subdivise en deux parties principales :

  • La Sécurité des Applications développées par l’entreprise

Cette branche regroupe l’ensemble des méthodes mise en œuvre au cours du processus de la production des applications, de la conception à la phase de test des versions qui seront mises sur le marché. Elle concerne principalement les entreprises et personnes œuvrant dans l’ingénierie logicielle et fera l’objet particulier de notre attention.

  • La Sécurité des Applications utilisées au sein de l’entreprise

Ici il est principalement question pour l’équipe de Sécurité de l’entreprise d’avoir un inventaire logiciel complet des logiciels utilisés dans leur environnement, de les classer par ordre de criticité et de définir un planning d’audit de sécurité des dites logiciels. La mission impartie est de scruter ces applications, tout du moins les plus critiques, afin de déceler toutes éventuelles failles de sécurité et de prendre les mesures nécessaires pour les colmater, ceci généralement en  étroite collaboration avec les prestataires ayant produit ces applications ; sans oublier le contrôle pour l’application des patchs de sécurité publies de façon plus ou moins régulière par les concepteurs de produits logiciels.

Cet article est le premier d’une série qui portera principalement sur le premier cas présenté plus haut, c’est à dire, la Sécurité des Applications tout au long de leur processus de développement. Nous commencerons par les bases à savoir la sécurité du poste de travail du développeur,  jusqu’à l’adoption d’un modèle de développement sécurisé suivant le standard de notre choix, en passant par le mise en œuvre de notre infrastructure de développement et les facteurs environnementaux pas nécessairement directement lies à la sécurité au sens stricte du terme mais pouvant avoir un impact sur le produit final.