Développement des applications mobiles : une approche fonctionnelle au détriment de la sécurité ?

La mobilité est une réalité au sein des entreprises, et la sécurité des applications devient leur cheval de bataille. Il est primordial de prendre conscience que les applications d'entreprise ne se limitent plus au réseau de l'entreprise.

Aujourd'hui, les employés et collaborateurs utilisent leurs smartphones, d’entreprise ou personnels, mais également d’autres périphériques professionnels pour des raisons personnelles: naviguer sur Internet, faire des achats en ligne, accéder aux réseaux sociaux, jouer en ligne pendant la pause déjeuner par exemple, démultipliant les vecteurs et les risques d'attaques potentielles et créant de véritables défis de sécurité pour les entreprises.

Les attaques logicielles: un danger sous-estimé

Lorsque l’on égare ou perd son téléphone ou sa tablette, on ressent directement le danger de voir ses informations personnelles consultées ou volées, en raison d'une identification non chiffrée, d'un stockage non sécurisé ou de données en cache. Mais ce danger est souvent moins perceptible pour les attaques logicielles. Et pourtant!

Lorsque les employés téléchargent des applications depuis un Store d’applications, celles-ci deviennent potentiellement autant de points d’entrées pour les pirates informatiques qui pourraient installer des logiciels malveillants sur le smartphone ou reconfigurer les paramètres de proxy. Pire encore, des employés peuvent se connecter via des réseaux publics et non sécurisés. Des cybercriminels peuvent ainsi facilement voler des informations potentiellement sensibles.

La sécurité des applications: encore au stade de réflexion

Vous le savez, les cyberattaques sont légion et touchent désormais tous types d’entreprises. Ce que vous n’appréhendez sans doute pas, c'est que 84% des brèches de sécurité exploitent les vulnérabilités au niveau de la couche d'application[1].

Et si la sécurisation des applications est une réelle une prise de conscience pour certains, cela représente encore une réflexion pour la plupart: plus de 33% des applications exposées n'ont jamais été testées en matière de sécurité[2].

La nécessaire rapidité de développement, au détriment de la sécurité

Le système d’information traverse une transformation majeure en termes d’infrastructure, aussi importante que le passage du «mainframe» aux architectures client / serveur et à l’Internet. Parmi ces changements, une des transformations les plus significatives a été la nouvelle capacité des entreprises à élaborer des systèmes et des logiciels personnalisés beaucoup plus rapidement, avec une flexibilité accrue et à moindre coût que ce qui était possible pendant l'ère du mainframe.

De même, on attend des développeurs qu’ils livrent les nouvelles applications ou versions de plus en plus rapidement ! Alors même que la sensibilisation à la sécurité des applications augmente, les équipes de développeurs se tournent vers des processus plus agiles pour rationaliser davantage les flux de travail et réduire le délai de mise sur le marché. Mais dans cette course à la rapidité, il n’est pas rare que ces équipes sautent certaines étapes destinées à identifier les vulnérabilités au niveau du code avant qu'il ne soit livré.

Intégrer des tests de sécurité tout au long du cycle de développement

Pour accélérer les livraisons exemptes de vulnérabilités et pour que la sécurité ne freine leur croissance, les entreprises doivent intégrer des points de contrôle de ces vulnérabilités tout au long du cycle de déploiement de l’application, à l’instar de l’approche SDLC en matière de développement logiciel.

En effet, plutôt que de mettre des pansements pour corriger les éventuelles failles, il est important de considérer la sécurité dès le développement du code (SAST), mais aussi lors de l’évaluation et de la mise en production (DAST), et enfin sécuriser le serveur d’applications web (RASP).

L’automatisation, du DevOps au DevSecOps

A l’instar de l’approche DevOps, qui consiste à rapprocher les équipes de développement et d'opérations, les entreprises doivent désormais appliquer une approche DevSecOps de manière beaucoup plus systématique, en y ajoutant les équipes de sécurité.

L’une des fonctions mise en avant dans l’approche DevOps est l’automatisation. Celle-ci va également s’appliquer avec succès au DevSecOps. En effet, la sécurité peut bénéficier de l'automatisation en s’intégrant avec les outils de livraison et de contrôle de code, la configuration et la gestion des correctifs, la journalisation et la surveillance des événements, la gestion des utilisateurs et des privilèges, et l'évaluation de la vulnérabilité dans les processus DevOps.

Les équipes de sécurité sont souvent perçues comme un frein aux implémentations agiles, mais elles sont assurément des atouts précieux dans le mouvement DevOps. Même si elle en est encore à un stade naissant, l’approche DevSecOps offre l’opportunité de mieux coordonner les équipes de développement, les équipes des opérations informatiques et les analystes de sécurité, que la production du code ultra rapide soit l’objectif immédiat ou non.

[1] Source: “Most Cyber Attacks Occur From This Common Vulnerability,” by Tim Clark, Forbes, March 2015

[2] Source: “Mobile Application Developers Not Investing in Security” study, by HPE, March 2015