Comment sécuriser son entreprise avec des logiciels Open Source ?

Chaque année, 370.000 logiciels Open Source sont téléchargés dans le monde. Le dernier rapport de Sonatype, appelé « State of the Software Supply Chain 2020 » a même identifié que 29% de ces logiciels possédaient des vulnérabilités, soit un tiers du marché actuel de l’Open Source. En 2021, le nombre d’attaques utilisant des vulnérabilités Open Source a augmenté de 650%

La plus importante et dernière en date concerne l’exploitation d’une vulnérabilité appelée Log4Shell. Cette vulnérabilité a été détectée dans le logiciel Log4Js, lui-même utilisé par le logiciel Apache, solution utilisée par des dizaines de milliers de site web.

Cet évènement a remis au centre des préoccupations les conditions d’utilisation des logiciels Open Source, les pratiques de maintenance et de financement.

#1 — Open Source, de quoi parle-t-on ?

Un logiciel Open Source, ou logiciel libre, est un programme informatique dont le code est publiquement accessible. N’importe qui peut y accéder, le modifier et en distribuer le code. L’Open Source existe depuis que l’informatique existe.

Le modèle de développement d’un logiciel Open Source est différent d’un logiciel propriétaire :

  •  Il se repose sur le travail bénévole de communautés de développpeur·ses, à maintenir le code du logiciel sans demander de contrepartie financière
  •  Il s’enrichit de manière collaborative, n’importe qui, tant qu’iel en a les compétences peut contribuer à améliorer le code
  • Il est censé entièrement responsabiliser les utilisateur·rices, qui peuvent eux-mêmes l’exploiter comme iels le souhaitent

La fiabilité d’un logiciel Open Source est donc fortement associée aux développeur·ses qui le maintiennent. Les solutions les plus fiables, comme celles de Red Hat (1er éditeur mondial de solutions Open Source), sont gratuits pour les utilisateur·rices les plus débrouillard·es, payants pour celles et ceux qui souhaitent bénéficier d’un service similaire à une version propriétaire.

En dehors de ce modèle, la gratuité totale peut amener à des problématiques de mise à jour, sécurité, de performance, d’ergonomie…

#2 — Que renforce les dernières cyber actus des problématiques du Logiciel Libre ?

Depuis Log4Shell, on réalise que les risques cyber, qui ciblent les failles de l'Open Source, peuvent être subtiles mais ne sont pas inédites. Tels que l’exploitation de codes vulnérables, le sabotage de logiciels, le découragement des développeur·ses…

Les raisons sont diverses :

  • Peu ou pas d’audit interne en amont ;
  • Peu ou pas de vérification de la qualité du code ;
  • Surcharge de travail des développeur·ses Open Source ;
  • Maintenance peu réalisée après la mise en production …

90% des programmes informatiques existants utiliseraient des modules Open Source pour fonctionner. Cela sous-entend que la majorité des programmes du marché sont dépendants de leur fiabilité.

Du fait de cette dépendance, il y a un réel enjeu à valoriser l'Open Source d’une part, et d’autre part à renforcer les politiques de maintenance.

3 — Pourquoi financer les développements Open Source ?

Le développement Open Source n’est pas gratuit pour ses créateur·rices. Il demande du temps, souvent pris sur le temps libre de développeur·ses passionné·es. Pour en tirer profit, il est primordial de valoriser les communautés qui font vivre ce milieu, afin qu’iels aient les moyens de proposer des solutions plus fiables.

Les modèles de rémunération peuvent être divers :

  • Recruter un·e développeur·se et/ou un expert en interne pour travailler sur la maintenance ;
  • Rémunérer directement les développeur·ses Open Source, si iels proposent des services de maintenance ;
  • Financer des programmes Open Source : collectifs, formation, entreprise spécialisée, initiatives gouvernementales...

Néanmoins, il faut garder en tête que l’Open Source ne fonctionne pas pour tout. Cela requiert un véritable questionnement sur la dépendance informatique et sur sa propre politique de maintenance, de sécurité.

4 — Mais du coup, doit-on arrêter d'exploiter les logiciels Open Source ?

Non ! L’Open Source contribue à l’enrichissement de l’informatique.

Il permet :

  • d’accélérer l’innovation
  • de maintenir l’accessibilité logiciel aux organisations plus modestes
  • d’expérimenter des produits

Ce n’est pas le modèle d’organisation qui est à revoir, mais l’exploitation des logiciels.  

Pour citer Sylvain Abélard, ingénieur logiciel chez Faveod : « Le soucis n’est pas les gratuit, c’est de mal exploiter le gratuit. »

Pour une meilleure exploitation des logiciels libres, il faut donc :

  • Être en mesure de se responsabiliser, calibrer leur dépendance et investir davantage sur la maintenance, la sécurité
  • Soit fournir des contreparties justes aux acteur·rices de l’Open Source

Ainsi, les organisations pourraient être en mesure d’entretenir un cercle vertueux. La traçabilité des développements contribueraient à la fois au maintien des valeurs de l’Open Source, mais aussi au maintien des organisations de ses exploitants.  


 


Décryptage Sécurité : que retenir de l'incendie d'un datacenter OVH ?

En mars dernier, l’incendie du Datacenter de OVH a secoué le monde informatique. Près de 3,6 millions de sites web et sous-domaines, hébergés chez le n°1 du cloud européen, se sont retrouvés indisponibles pendant plusieurs jours. Pour certains, c’est l’ensemble de leurs données qui a été perdu.

Cet événement a ainsi mis en exergue le besoin pour les entreprises, petites comme grandes, de se munir d’un plan de continuité (PCA) pour éviter un arrêt d’activité soudain. Pour cela, il est important d’en comprendre les objectifs, les actions à entreprendre pour le définir et les avantages que cela apporte à terme.

#1 - Quels sont les objectifs d’un PCA ?

Un Plan de Continuité d’Activité a pour objectif de garantir le maintien de l’activité de l’entreprise en cas de sinistre majeur (cyberattaque, catastrophe naturelle, incendie, pandémie…), et plus particulièrement, de maintenir le fonctionnement du système d’information. Il permet de réduire les risques d’arrêt d’activité et de préparer l’entreprise à des événements imprévus.

Il se formalise par la réalisation d’un document référentiel regroupant un ensemble de procédures à mettre en place, d’une analyse de risques à laquelle on associe un plan d’action, des rôles et des niveaux de responsabilités.

Ce référentiel nécessite du temps, mais peu d’investissement en fonction de l’internalisation ou externalisation de l’étude. Le choix d’un prestataire se décide en fonction de l’appétence aux risques de l’entreprise. Si le risque est une notion nouvelle, il peut être intéressant d’externaliser.

#2 - Comment mettre en place un PCA ?

Dans un premier temps, il est indispensable de définir une gouvernance sécurité comprenant un·e responsable, avec des connaissances en termes de sécurité, qui pilotera ce projet.

Sa première tâche est d’identifier tous les actifs critiques de l’entreprise :  une donnée, une application ou un logiciel, une ressource humaine – dont l’indisponibilité impacterait fortement l’activité de l’entreprise.

Pour cela, il faut réaliser une analyse de risques qui intègre une analyse d’impact, une définition des niveaux de risques, un inventaire de l’ensemble des facteurs de risques pouvant impacter l’entreprise et les moyens disponibles pour mitiger ces risques.

A l’issu de cette analyse, il est nécessaire de valider les plans de mitigation[1] associés à chaque risque en les alignant à la stratégie globale et aux moyens réels de l’entreprise. Pour rappel, un PCA a pour objectif de maintenir l’activité essentiel de l’entreprise, il n’a pas vocation à maintenir l’entièreté des activités.

Enfin, l’ensemble de ces informations doivent être inscrits dans le document référentiel dans lequel on intègre également des rôles, des niveaux de responsabilités pour chaque plan de mitigation ainsi qu’un planning. Ce planning doit intégrer à minima les futurs tests de gestion de crise en réel, les fréquences de mise à jour des procédures et les dates de revue de l’analyse de risques.

#3 – Pourquoi mettre en place un PCA ?

Définir un PCA représente un avantage stratégique pour l’entreprise sur plusieurs aspects :

  • Le maintien de l’activité opérationnelle : Grâce au PCA, l’activité critique peut continuer de fonctionner, même en mode dégradé[2], et ainsi permettre de réduire les pertes de marché, l’immobilisation des équipes, et les incidents contractuels.
  • Un avantage concurrentiel : Face à des concurrents moins bien préparés, qui seraient dans une situation similaire, le PCA représente une opportunité de rassurer les clients acquis sur la stabilité de l’entreprise mais aussi d’en attirer de nouveaux.
  • Une opportunité RH : Les salariés sont sensibilisés aux sujets sécurité et risques. Ils sont également rassurés par la fiabilité de leur organisation en cas de crise ou de situations imprévues qui viendrait à impacter leur activité.

L’incendie malheureux d’OVH démontre l’importance de se munir d’un PCA en cas de défaillance d’un de ses prestataires ou de l’apparition d’un sinistre majeur. Le PCA est considéré comme un surcoût pour l’entreprise, pourtant des actions simples et peu onéreuses permettent de garder une bonne maîtrise des risques impactant l’entreprise. Ainsi, que l’on soit une TPE ou une PME, on s’assure de réduire les risques lié à un arrêt d’activité. Concernant les actions plus complexes à mettre en œuvre, ils doivent s’inscrire dans la stratégie globale de l’entreprise afin d’en accepter les risques en cas de non-réalisation.


[1] Définition « Plan de mitigation » : Plan de mise en œuvre de mesures destinées à atténuer les conséquences d’un risque

[2] Définition « Mode Dégradé » : Situation où tout ou partie d’une entité organisée doit fonctionner sans ses ressources habituelles, humaines et matérielles