La mise en place de services et d’applications informatiques infaillibles et entièrement sécurisées n’est qu’une chimère. Il n’existe pas de logiciel qui soit sécurisé à 100 %, et c’est normal. En effet, malgré l’apparition récente de ChatGPT, les services et applications informatiques n’en demeurent pas moins généralement conçus, développés et déployés par des êtres humains. Or, les êtres humains font des erreurs. Certaines pourraient être évitées, comme les bourdes que l’on commet au quotidien, ou encore les erreurs élémentaires que d’autres ont déjà commises. L’étendue des erreurs est tellement vaste que les répéter représente une perte de temps et d’énergie. Il existe des bibliothèques remplies de livres sur le génie logiciel, les pratiques sécurisées de codage, et les pires erreurs de programmation. Il y a également des normes et des bonnes pratiques. Malheureusement, il s’agit d’ouvrages interminables, trop détaillés, et parfois compliqués et « jargonneux ». Essayons de résumer.
Pour vous rendre la vie plus facile, le Bureau de la sécurité informatique a compilé quatre listes de ce que l’on appelle les « principes de sécurité ». Elles comprennent l’essentiel pour vous permettre d’appliquer un premier « niveau » de bonnes pratiques en matière de sécurité à votre système d’exploitation, conteneur, machine virtuelle ou application web, et de développer un logiciel de manière sûre. Par souci de clarté, elles sont divisées en trois catégories : « MUST do » (obligatoires), « SHOULD do » (recommandées), et « COULD do » (facultatives). Nous vous suggérons de les lire attentivement afin d’améliorer vos compétences, approfondir vos connaissances, et rendre le CERN encore plus sûr.
- Les principes destinés aux développeurs de logiciels mettent l’accent sur un cycle de vie du développement logiciel sécurisé et approprié afin de détecter les erreurs à un stade précoce. Il s’agit de : suivre les directives de votre type de logiciel ou langage de programmation, penser aux conséquences que votre code peut avoir sur la sécurité, réutiliser du code fiable (bibliothèques, modules, etc.), écrire du code de qualité (lisible et maintenable), tester la sécurité de votre code avec des outils d’analyse statique, et documenter votre code en détail. Ces principes constituent les bonnes pratiques pour écrire un code sécurisé.
- Les principes destinés aux systèmes d’exploitation (sur serveur) et les conteneurs (en anglais) détaillent en 10 à 15 étapes la meilleure façon de configurer votre système d’exploitation et vos conteneurs ou machines virtuelles afin qu’ils respectent les mesures de sécurité de base, se verrouillent et n’exposent que le nécessaire, soient mis à jour périodiquement, protègent les données sensibles, et fonctionnent dans un contexte limité.
- Les principes destinés aux applications web (en anglais), enfin, énoncent des évidences quant aux sites web accessibles sur internet, comme la nécessité d’avoir une page de renvoi, de ne pas donner plus d’informations que nécessaire, d’être protégé par un chiffrement puissant, d’utiliser le système d'authentification unique (SSO) du CERN, etc.
Lorsque cela est possible, ces principes de sécurité fournissent des exemples et des liens vers des pages plus techniques et détaillées sur la façon d’appliquer chaque principe à vos serveurs Linux ou Windows, par exemple, à vos conteneurs Docker ou Kubernetes, ou encore à vos serveurs web Apache ou Nginx. Jetez-un coup d’œil à ces principes et appliquez-les. Il n’y a rien de plus simple.
Pour le moment, bien qu’ils soient prescrits par les règles informatiques du CERN (plus précisément par les règles subsidiaires DEV2 et OPS2), ces principes de sécurité ne sont pas encore imposés. Cependant, en 2026, le Bureau de la sécurité informatique commencera à s’assurer que tous les services informatiques et toutes les applications web sont conformes à ces principes. Les services non conformes, surtout ceux qu’il n’est pas prévu de mettre à niveau, se verront retirer leur accès à internet afin de mieux protéger l’Organisation (tel que l’exige également la recommandation R-5.1 de l’audit sur la cybersécurité au CERN de 2023, entre autres). Alors, jetez-un coup d’œil à ces principes et appliquez-les dès maintenant. Et faites-nous part de ce qui a bien marché et de ce qui a moins bien fonctionné. Il n’y a rien de plus simple (à notre avis).
Pour en savoir plus sur les incidents et les problèmes en matière de sécurité informatique au CERN, lisez nos rapports mensuels (en anglais). Si vous souhaitez avoir plus d’informations, poser des questions ou obtenir de l’aide, visitez notre site ou contactez-nous à l’adresse suivante : Computer.Security@cern.ch.