Replaçons l'Homme au cœur de la sécurité informatique !

Les experts de la sécurité informatique doivent ériger l'humain comme substantifique moelle de leurs activités, en travaillant à l'unisson avec les équipes de développement et en valorisant les "champions de la sécurité".

Les acteurs informatiques ne protègent pas seulement les données, mais participent indirectement à la sécurité l’être humain et de tous les aspects de notre vie – des soins de santé à l'éducation en passant par le gouvernement. Il y a des éléments humains dans ce que nous protégeons, mais il y a aussi des éléments humains dans la façon dont nous protégeons. Aujourd’hui, une sécuriser des logiciels nécessite bien plus que de la technologie. La collaboration entre les équipes de sécurité et de développement, et les champions de la sécurité jouent ainsi un rôle essentiel dans la réussite des programmes de la sécurité applicative.

Une collaboration nécessaire entre les équipes de sécurité et de développement

La sécurité des applications ayant fait un "shift left", c’est-à-dire ayant considéré les problématiques de sécurité au plus tôt dans le cycle de développement, les équipes de sécurité et de développement doivent plus que jamais travailler ensemble.

Selon un rapport récemment publié par Securosis[1], la plupart des experts de la sécurité ont une expérience de la sécurité des réseaux, et de nombreux RSSI avec lesquels ils collaborent sont davantage axés sur les risques et la conformité, de sorte qu'il existe un manque général de compréhension du développement de logiciels. Ce manque de connaissance des outils et des processus de développement, ainsi que les défis communs que les développeurs tentent de surmonter, implique que les équipes de sécurité comprennent rarement pourquoi les serveurs de construction automatisés, les dépôts centraux de code, les conteneurs, Agile et DevOps ont été si largement adoptés en peu de temps. De plus, le rapport conseille les professionnels de la sécurité de réfléchir à la manière d'améliorer la livraison d'un code sécurisé et propre, et sans introduire de goulots d'étranglement dans un processus de développement peut-être peu maîtrisé.

D’une part, les équipes de sécurité doivent apprendre à connaître et à comprendre les équipes de développement, leurs points faibles et leurs priorités. Il est en effet impossible de sécuriser efficacement leurs processus sans cette compréhension. D’autre part, les équipes de développement doivent se former à la sécurité. La plupart des développeurs n'ont en effet pas les compétences ou le savoir-faire en matière de sécurité dont ils ont besoin pour coder en toute sécurité - ce n'est tout simplement pas enseigné dans la grande majorité des universités, ni proposé sur le lieu de travail. Les équipes de sécurité et de développement doivent comprendre leurs processus respectifs.

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

Un autre élément humain de l'AppSec est apparu récemment : les champions de la sécurité. Dans le rapport cité ci-dessus de Securosis, Adrian Lane affirme avoir récemment parlé avec trois entreprises de taille moyenne. Tandis que leur équipe de développement comptait entre 800 et 2000 personnes, leurs équipes de sécurité en comptaient entre 12 et 25, et seulement 2 ou 3 d’entre elles avaient une formation en sécurité des applications.

Véritables licornes, ils n’ont cependant pas les pouvoirs magiques nécessaires pour couvrir toutes les opérations de développement, et ils doivent donc trouver des moyens d'étendre leur expérience à toute l'entreprise. Ils doivent par ailleurs le faire d'une manière qui corresponde aux objectifs de développement, en amenant les équipes de développement de logiciels à mettre en œuvre leurs contrôles de sécurité. L'une des méthodes les plus efficaces identifiée pour renforcer la sécurité est de nommer des développeurs volontaires et intéressés par la sécurité "champions de la sécurité" au sein de leurs équipes de développement.

Les champions de la sécurité peuvent être comparés à des multiplicateurs de force de sécurité au sein des équipes de développement. Sans être des experts de sécurité à proprement parler, ils doivent simplement agir comme la conscience de la sécurité de l'équipe, en gardant les yeux et les oreilles ouverts aux problèmes potentiels. Une fois que l'équipe est consciente de ces problèmes, elle peut alors soit résoudre les problèmes au stade de développement, soit faire appel aux experts en sécurité de l’entreprise pour obtenir des conseils.

[1] Rapport Securosis intitulé “Building an Enterprise DevSecOps Program”