Les entreprises peuvent accélérer l'innovation avec l'approche "developer first"

L'open source est devenu un mode de développement privilégié pour innover en matière de technologies. Néanmoins, il existe toujours l'idée fausse selon laquelle l'open source est moins sûr que les logiciels propriétaires, car il est ouvert à tous ceux qui veulent l'utiliser. Et si on tordait le cou à cette idée ?

Une culture basée sur l’échange et le partage de bonnes pratiques 

Notre monde repose sur le logiciel. Celui-ci impacte chaque aspect de notre vie depuis nos téléphones jusqu’à notre voiture, en passant par de nombreux objets du quotidien. Aujourd’hui, 99% des projets logiciels sont développés sur des plateformes innovantes en utilisant l’open source. Des milliers de professionnels, aux compétences variées et provenant de régions géographiques diverses, y collaborent au quotidien en partageant idées et bonnes pratiques. Animés par une exigence forte et des méthodes de travail d’avant-garde, ces professionnels utilisent l’intelligence collective pour transformer la façon dont le monde fonctionne et accélérer l’innovation.  

L’open source : perçu à tort comme moins sûr

L'open source est en plein essor, certes. Mais, regardons les choses en face. Du fait de son ouverture, il est encore perçu par un grand nombre d’entreprises comme étant moins sûr. Red Hat a d’ailleurs récemment révélé que le principal obstacle à son adoption est justement cette perception d’un manque de sécurité. En réalité, cette idée préconçue est très éloignée de la réalité. C’est justement parce qu’il y a une responsabilité collective de la communauté open source dans le développement et le maintien d'un code sécurisé que ce dernier est plus sûr que le code propriétaire, et non moins. 

Instiller une culture d’excellence en matière de sécurité 

Un aspect clé de cette responsabilité collective en matière de sécurité est le fait que, non seulement les développeurs sont plus nombreux à identifier et régler les problèmes de sécurité, mais ils sont également très désireux de faire connaître leur expertise et leurs contributions à leurs clients et au reste de la communauté. Ils sont donc régulièrement incités à trouver les failles dans les premières étapes du cycle de développement des logiciels, avant même la mise en ligne. Une pratique qui leur permet de les éliminer avant le déploiement du code en production. Néanmoins, pour aller plus loin et accroître leur vitesse d'innovation, les entreprises ont tout intérêt à adopter une approche volontariste en matière d’intégration de la sécurité dans le développement de leurs logiciels libres. 

Inclure la sécurité à chaque étape du développement

De manière générale, on peut affirmer que les projets sont aussi sûrs que le cycle de vie du développement logiciel au sein duquel ils sont créés. Néanmoins, trop souvent la sécurité est ajoutée à la fin du processus de développement. Le code est simplement transmis aux équipes de sécurité pour vérification, avec des résultats médiocres complètement prévisibles. Les logiciels sont alors retardés et le rythme de l'innovation ralentit. Et le pire, c'est que tout cela pourrait être évité. En réalité, il n'y a qu'une seule façon de résoudre le problème : inclure la sécurité à chaque étape du cycle de développement, en commençant très en amont, au moment de la conception et de l’écriture des codes, et en couvrant l'aval, une fois l’application mise en ligne. L’approche DevSecOps consiste notamment à intégrer la sécurité dans les étapes qui vont du développement (Dev) à la mise en production et l’exploitation (Ops). Cette approche permet de gérer efficacement la sécurité des applications sans ralentir l'activité, souvent même en l’accélérant. 

Privilégiez l'approche "developer first"

Bien qu'il n'existe pas d'approche unique "DevSecOps", il existe des moyens infaillibles de s'assurer que le code open source est développé en plaçant la sécurité au cœur du processus. Attention : il ne s'agit pas simplement d'acheter les bons outils de développement en pensant que cela va tout régler. L'intégration efficace de la sécurité dans le tissu même de l'entreprise - et pas seulement dans les flux de travail - nécessite un changement organisationnel et un changement de mentalité. En effet, les développeurs de logiciels étant 500 fois plus nombreux que les professionnels de la sécurité, ils doivent être vus comme une pièce essentielle du dispositif. La création d'une culture de collaboration étroite entre ces deux profils, même si elle n’est pas évidente au départ, peut améliorer considérablement la vitesse et la fiabilité du développement logiciel. 

Définir un but commun 

Les faux positifs, c’est-à-dire les alertes de sécurité qui se révèlent inutiles, sont une des principales raisons pour lesquelles les développeurs perdent du temps pendant la phase de construction. En utilisant des outils en lesquels ils ont vraiment confiance, il leur est beaucoup plus facile d'identifier et de corriger les "vraies" anomalies qui mettent en péril le développement du logiciel. Pour les y aider, les experts en sécurité peuvent identifier ces vraies anomalies et les corriger pendant le cycle de développement, ce qui prend moins de temps que de les corriger une fois l’application mise en production. Selon une étude française menée par l’Observatoire DevSecOps de Micro Focus auprès de 2000 décideurs informatiques, 69% des répondants ont connu des incidents de sécurité et 41% vont investir prochainement dans une initiative DevSecOps. Ce chiffre est tout de même inquiétant car il indique que près de 60% des répondants ne comptent toujours pas investir dans cette priorité. 

Faire de la sécurité la responsabilité de tous

La collaboration entre les équipes de sécurité et les équipes DevOps ne peut pas être superficielle et se limiter aux problèmes et aux incidents. Pour que la sécurité fasse réellement partie du développement logiciel, elle doit être intégrée dans les activités quotidiennes. Il peut s'agir simplement d'intégrer les vérifications de sécurité obligatoires dans les revues de code, ou bien de briser les cloisonnements traditionnels entre la sécurité des applications et le CI/CD et de mettre en place un flux de travail unifié. 

L’une de mes convictions phares est l’importance de la collaboration et de l'intelligence collective. En effet, il s’agit surtout de faire de la sécurité une responsabilité commune à tous les acteurs du monde du logiciel, afin de l'inscrire tout au long du cycle de vie du logiciel. Cet aspect est essentiel pour livrer rapidement des logiciels plus fiables. C’est une bonne nouvelle pour la capacité de l’organisation à innover rapidement.