recommandations

Les DONNEES DE SANTE sont des données hautement sensibles qui doivent être traitées de façon sécurisée et conforme à la protection des données. En tant que prestataire de services ICT de santé, vous - et votre solution ICT - êtes un élément essentiel de la chaîne de sécurité des informations, avec les prestataires de services de santé.

Afin de vous soutenir dans ce rôle tout au long de vos interactions avec le système public de santé, l'Agence eSanté, le Ministère de l'Economie et Securitymadein.lu have ont développé conjointement la présente directive qui contient 7 RECOMMANDATIONS dans le domaine de la sécurité des informations.

Les recommandations ci-dessous sont basées sur l'analyse d'entretiens avec des éditeurs de logiciel et des prestataires de services informatiques.

Vous trouverez ici plus d’informations concernant les bonnes pratiques en matière de cybersécurité.

COMMENT RENFORCER LA SECURITE DES INFORMATIONS DANS LE SECTEUR DE LA SANTE ICT DE SANTE

Appliqué à la santé numérique, ce domaine se concentre sur l'utilisation de clés de chiffrement ainsi que de différents mécanismes de cryptage et sur leur application aussi bien aux données qui circulent qu'aux données stockées.

Evitez de gérer les clés privées de vos clients et utilisateurs

La gestion des clés est essentielle pour l'usage sécurisé d'un système ou d'un logiciel. Il pourrait être pratique de gérer les clés privées de vos utilisateurs ou de vos clients, mais cela vous exposerait à plusieurs risques : les risques de perdre ces clés, de vous les faire voler par quelqu'un d'autre ou d'en faire un mauvais usage par accident, ce qui pourrait impliquer un risque de responsabilité en cas de litige. Si vous vous abstenez de gérer les clés privées des autres, ces risques disparaissent. Vous pouvez proposer d'aider à créer des clés, mais jamais vous occuper vous-mêmes des clés privées.

Utilisez le chiffrement pour les données stockées

Toutes les sauvegardes que vous gérez ou auxquelles vous avez accès pour le compte de vos clients dans le secteur de la santé constituent des données médicales stockées. Il en est de même pour toutes les données que votre logiciel enregistre et conserve pour un usage ultérieur. Cela comprend les entrées de calendrier avec les données relatives aux rendez-vous, les journaux, les dossiers des patients, les informations sur les paiements, etc. Utilisez le chiffrement pour toutes les données qui sont contenues dans votre système ou votre logiciel. Cela peut se faire en utilisant un logiciel de chiffrement de disque ou un chiffrement basé sur les fichiers (proposé par le système d'exploitation) ou en utilisant des bases de données chiffrées. Cela sera utile pour les protéger contre la divulgation en cas de vol ou de perte et l’altération, en particulier dans le secteur de la santé où l'impact de ces incidents sur les personnes concernées est très important. Pour comparer des logiciels de chiffrement de disque, vous pouvez utiliser ce lien.

Utilisez le chiffrement pour les données en circulation (y compris une exportation totale)

Lorsque votre logiciel, votre client de messagerie ou votre système se connecte et échange des données avec d’autres systèmes (en dehors ou même au sein de votre propre réseau), pensez à configurer des connexions cryptées. Pour les connexions http, nous recommandons d'utiliser https. Désactivez ou remplacez toutes les connexions SSL ou les connexions TLS obsolètes par des connexions TLS valides (appliquez les recommandations de l'IANA et des codes de cryptage sécurisés). Pour les transferts de données, veuillez utiliser le protocole SFTP et éviter FTP à tout prix. Si des données sont envoyées par e-mail ou transférées vers un support de stockage quelconque, elles doivent être au moins protégées dans une archive codée (avec 7zip, par exemple). Les e-mails échangés entre votre entreprise et vos clients doivent aussi être cryptés – envisagez d’utiliser Regimail (fourni par l’Agence eSanté pour la communication entre professionnels) ou d’utiliser les plugins PGP qui sont également pris en charge par la plupart des logiciels de messagerie.

Utilisez une longueur de clé "optimale" pour votre algorithme de chiffrement

L'utilisation de clés longues vous protège mieux contre les attaques par force brute. C'est pourquoi vous devez respecter les dernières recommandations en termes de longueur de clé, lesquelles évoluent avec le temps. Au moment de la rédaction de cette liste, par exemple:

  • Si vous utilisez le chiffrementsymétrique (p. ex., AES), vous devez abandonner les clés de 128 bits et utiliser des clés de 256 bits.
  • Si vous utilisez le chiffrement asymétrique (p. ex., RSA), vous devez savoir que les clés de 1024 bits sont considérées comme obsolètes depuis 2002, et que les clés de 2048 bits sont recommandées par la communauté depuis 2015.

Pour les dernières recommandations, pensez à vérifier les sites tels que celui-ci ou celui-là du BSI.


Pensez à utiliser à la fois les cryptages symétriques et asymétriques

Le chiffrement symétrique utilise la même clé pour le chiffrement et le déchiffrement, contrairement au chiffrement asymétrique. Etant donné que tout le mécanisme du chiffrement symétrique dépend du fait que la clé est gardée secrète mais partagée avec une autre partie pour déchiffrer le contenu, l'extensibilité est difficile et le risque de compromission est élevé. En dépit de ce problème de gestion de clés, le chiffrement symétrique est rapide et n'a pas tendance à épuiser les ressources de la CPU ou du réseau, ce qui n'est pas toujours le cas pour le chiffrement asymétrique. Le chiffrement asymétrique est un procédé beaucoup plus complexe que le chiffrement symétrique, mais tend à être plus sûr ; de plus, la clé privée n'est pas partagée, mais la clé publique l'est. Utilisez la cryptographie asymétrique quand vous avez besoin d'établir un canal de communication sécurisé, quand des signatures numériques sont requises ou pour les applications de messagerie ; le chiffrement symétrique convient lorsque de grandes quantités de données doivent être chiffrées et transférées.

En ce qui concerne le choix des algorithmes pour le chiffrement symétrique ou asymétrique, les recommandations récentes du BSI mentionnent

  • pour le chiffrement par bloc (chiffrement symétrique), l'usage d'AES-128, AES-192 et AED-256, ainsi que Twofish et Serpent,
  • que le chiffrement de flux n'est pas recommandé,
  • pour le chiffrement asymétrique, l'utilisation de RSA avec une longueur de clé minimale de 2048 bits est recommandée.


• Vous pouvez aider vos clients à créer des clés, mais jamais vous occuper des clés privées vous-même.
• Vous trouverez ici des informations utiles et une comparaison des logiciels de chiffrement de disque.
• Utilisez https, des connexions TLS valides et SFTP pour l'échange de données chiffrées.
• Pour les dernières recommandations concernant la longueur de clé pour le chiffrement, pensez à vérifier des sites tels que celui-ci ou celui-là à partir du BSI.

 

Pour les logiciels de santé numérique, ce domaine se concentre sur la nécessité de maintenir à jour à la fois les applications de santé numérique et leurs systèmes sous-jacents (en utilisant les dernières versions, des mises à jour et des patchs).

Tenez-vous informé et appliquez les patchs de sécurité nécessaires aussi bien au système d'exploitation qu'à l'environnement applicatif

En ce qui concerne l'environnement que vous gérer ou que vous entretenez pour le compte de vos clients, tenez-vous informé et appliquez les patchs de sécurité nécessaires (en fonction de votre système d'exploitation et de votre environnement applicatif), planifiez vos mises à jour et informez vos clients de votre planning. A chaque fois que vous installez ces patchs ou ces mises à jour de sécurité, vous devez utiliser un compte ayant les privilèges minimum pour la tâche de mise à jour et de gestion des patchs.

Automatisez plutôt que de compter sur les utilisateurs

Il est essentiel de maintenir le logiciel à jour. Les utilisateurs peuvent oublier de garder un œil sur les mises à jour, ou peuvent simplement repousser leur installation parce que cela les dérange dans leur travail. C'est pourquoi vous ne devez pas vous reposer sur les utilisateurs pour qu'ils vous informent qu'ils ont besoin de mettre à jour leur logiciel. Téléchargez les mises à jour automatiques sur leurs postes de travail si cela est possible. Dans ce cas, n'oubliez pas qu'il est important d'avertir les utilisateurs avant d'actualiser quoi que ce soit, et faites votre mise à jour en dehors des heures ouvrables courantes. Vous pouvez aussi programmer des contrôles périodiques sur site.


• Tenez-vous informé et appliquez des patchs de sécurité régulièrement.
• Respectez la recommandation concernant les privilèges minimum.
• Pensez à activer des mises à jour automatiques en dehors des heures ouvrables.

Lorsque vous assurez la télémaintenance des postes de travail dans les cabinets médicaux, certaines bonnes pratiques concernant le démarrage, le déroulement et la fin des sessions distantes vous faciliteront le travail à long terme.

Pensez aux risques d'exfiltration des données quand vous accédez à des ordinateurs distants

Lors du débogage ou de la mise à jour à distance de postes de travail de clients, des erreurs ou des fautes (p. ex. téléchargement accidentel de données, divulgation accidentelle à des personnes étrangères) peuvent se produire. N'oubliez pas que, lorsque vous accédez à des postes de travail utilisateurs, il y a des risques d'exfiltration des données. Reposez-vous toujours sur les droits d’accès de l'utilisateur, évitez les connexions permanentes et assurez la journalisation et le traçage des activités effectuées.

Reposez-vous toujours sur les droits d’accès explicites de l'utilisateur pour toute session distante, et évitez autant que possible, de rester connecté pendant de longues périodes sans raison particulière. C’est important car cela pourrait devenir un autre moyen pour des personnes malintentionnées d'accéder à un système.

Vos sessions distantes doivent être aussi brèves que possible

Pour ne pas perdre de temps, mais aussi pour des raisons de risque, mettez fin à votre session distante dès que possible après avoir effectué la tâche nécessaire.

Ne demandez jamais les informations  d'authentification de votre client (ex : son mot de passe)

Ne demandez jamais le mot de passe de l'utilisateur ; utilisez toujours votre propre code d'accès et demandez à l'utilisateur de le taper pour vous. Uniquement en cas d'absolue nécessité, demandez à l'utilisateur de taper son propre code. Utilisez vos propres identifiants pour la tâche que vous devez effectuer à distance. Ceci est important car la connaissance d'un mot de passe peut engager votre responsabilité dans certains cas.

Assurez-vous que l'accès à distance est clos par l'utilisateur ou automatiquement une fois que la tâche est accomplie

Demandez à l'utilisateur de couper la connexion ou informez-le que la connexion est coupée.

Le traitement de données à caractère personnel (DCP) est encadré par le Règlement (UE) 2016/679 ou RGPD, il détermine le champ d’application et fixe les principes de protection des DCP.
Etant donné que la santé est un domaine dans lequel de grandes quantités de données médicales sont traitées par chaque cabinet médical, il est essentiel de penser à protéger toutes les données qui identifient des personnes contre la perte, le vol, l'altération ou les usages frauduleux.

Gardez à l'esprit les définitions de base

Les données à caractère personnel concernent toutes les informations se rapportant à une personne physique identifiée ou identifiable (Art 4.1 RGPD). Par extrapolation, il s’agit des données identifiant directement ou indirectement une personne. Un nom, des photos, des numéros CNS, des codes IBAN, des adresses IP sont de exemples de DCP.

Les données à caractère personnel de santé (DCP de santé) concernent, quant à elles, les données relatives à la santé physique ou mentale, passée, présente ou future, d’une personne physique (y compris la prestation de services de soins de santé) qui révèlent des informations sur l’état de santé de cette personne. Ce sont des données sensibles relevant d’un régime spécial (Art 9.2 RGPD).

Le traitement des données à caractère personnel (Art 4.2 RGPD) se réfère à toute opération de manipulation de DCP (collecte, organisation, tri, restitution, communication, destruction ou même simple consultation de DCP). Le support de traitement étant indifférent (informatique ou papier).

Le traitement des DCP est réglementé par une base légale (Art 6.1 a à f) : consentement, exécution d’un contrat, respect d’une obligation légale, nécessité de la sauvegarde des intérêts vitaux, exécution d’une mission d’intérêt public, intérêts légitime.

Le traitement des DCP de santé repose sur une base légale plus restrictive encore (Art 9.2 et suivant) : consentement explicite, intérêts vitaux, motifs d’intérêt public importants sur la base du droit de l’UE ou national.

Le responsable du traitement est l’entité qui qui détermine les finalités et moyens du traitement. C’est sur lui que repose les obligations et la responsabilité (civile, pénale, administrative).

Le responsable conjoint du traitement représente une autre entité intervenant à des fins qui lui sont propres sur le traitement de DCP de sorte qu’elle soit déterminante dans l’orientation des finalités et des moyens du traitement. Il est conseillé de fixer les responsabilités dans un contrat.

Un sous-traitant est une entité qui traite des données pour le compte et sur instruction (par contrat) du responsable du traitement. Le contrat doit comporter des clauses RGPD conformes à l’article 26.3 adapté pour le projet. Le RGPD s’applique pour certaines parties également au sous-traitant.

Ne traitez pas inutilement des données à caractère personnel

Appliquez le principe de proportionnalité/minimisation des données. Ne collectez que les données vraiment nécessaires à la finalité déterminée en amont et mises en œuvre sur le fondement d’une base légale justifiée.

Ne conservez pas de données à caractère personnel inutilement

Adaptez la durée de conservation des données au regard de la finalité poursuivie. La durée peut être fixe (ex : 1 an, disposition légale) ou variable en fonction d’un critère objectif déterminé (ex : le temps de la relation contractuelle).

Identifiez clairement le rôle et la fonction des intervenants

Faites preuve de transparence dans l’information et les canaux de communication utilisés pour l’exercice du droit des personnes (accès, rectification, suppression des données). Pour une situation de responsabilité conjointe du traitement, établissez la répartition des rôles dans l’exercice des droits des personnes.

Sécurisez le traitement des données à caractère personnel

Appliquez des mesures élevées de sécurité physique, logique et organisationnelle pour assurer la confidentialité, l’intégrité et la disponibilité dans le traitement des DCP de santé.

La gestion des incidents implique la surveillance, la détection et la réaction à des évènements sur le réseau ou sur un ou plusieurs ordinateurs qui sont en lien avec la sécurité des données ou des systèmes hébergés dans les cabinets médicaux.

Définissez un processus ou une procédure de traitement des incidents de sécurité

Quelle que soit la qualité de vos contrôles de sécurité des informations, des incidents se produiront un jour ou l'autre. Il est essentiel que vous les traitiez de la même manière à chaque fois. Pour cela, vous devez préparer une liste d'étapes à exécuter et vous y tenir lorsqu'un incident se produit. Ainsi, vous n'oublierez pas ou ne repousserez pas des actions qui doivent être exécutées immédiatement.

Que doit comprendre un processus ou une procédure de traitement des incidents ? Voici quelques éléments :

  • exécuter les étapes classiques pour limiter les dommages,
  • isoler la source de l'incident,
  • prendre des mesures de rétablissement,
  • définir qui informer et quand,
  • garder une trace de chaque incident et de la manière dont il a été géré,
  • tirer des leçons des incidents précédents afin qu’ils ne se reproduisent plus.

Si vous faites l'objet d'un incident de sécurité des informations (attaque, malware, etc.) et que vous avez besoin de l'avis d'un autre expert, vous pouvez toujours solliciter l'aide du service CIRCL de Security Made In (info@circl.lu).

 

En sécurité des informations, la gestion des risques consiste à comprendre et à répondre à des facteurs existants ou à des évènements possibles qui peuvent nuire à la confidentialité, à l'intégrité et à la disponibilité d'un système d'information. Ces facteurs et évènements possibles doivent être examinés à l'avance et des mesures doivent être établies pour protéger le système d'information lorsque ces évènements se produisent car ils peuvent avoir un impact sur la sécurité et la confidentialité des données du cabinet médical.

Evaluez la maturité de votre gestion des risques de sécurité des informations

Pour comprendre la maturité de votre organisation, vous devez vérifier votre maturité en termes de gestion des risques de sécurité des informations pour vous assurer que vous n'êtes pas le maillon faible. Vous pouvez utiliser les outils Fit4Cybersecurity ou Fit4Privacy de CASES qui sont proposés gratuitement pour effectuer une auto-évaluation de votre maturité en matière de gestion des risques.

Découvrez les faiblesses effectives de vos systèmes ou logiciels

Même si vous pensez que vos systèmes ou vos logiciels présentent certaines vulnérabilités, il est possible qu'ils ne soient pas les seuls ou que d'autres soient plus contraignants et que vous n'en ayez pas conscience. Au moins de temps en temps, vous pourriez effectuer une analyse de vulnérabilité ou un test de pénétration. Vous pouvez utiliser des outils tels que

l'outil de recherche des vulnérabilités courantes proposé par CIRCL (https://cve.circl.lu/),
l'annuaire Cybersecurity Ecosystem proposé par Security Made in Luxembourg si vous voulez sélectionner et contacter un expert pour effectuer cette analyse pour vous.

Connaissez vos propres risques de sécurité des informations

Vous devez effectuer périodiquement un bilan des risques de sécurité des informations auxquels votre activité est soumise.

Certains risques sont permanents tandis que d'autres peuvent être nouveaux ou avoir un impact différent que par le passé. Vous devez prendre en compte les menaces que vous avez rencontrées, mais aussi les vulnérabilités que vous pouvez avoir ou qui sont connues de la communauté médicale ou informatique dans la Grande Région. Ne négligez pas le "facteur humain" parmi ces risques, ni la possibilité d'attaques d'ingénierie sociale, y compris les e-mails de hameçonnage ou les appels de personnes qui se font passer pour vous ou pour vos clients. Pour minimiser les chances de succès de tentatives comme celles-ci, pensez à vérifier l'identité des émetteurs ou des appelants et à utiliser des e-mails signés numériquement. En plus des signatures numériques, si un e-mail contient des informations confidentielles (p. ex. des données médicales dans le corps de l'e-mail ou en pièce jointe), cryptez toujours votre e-mail et/ou ses pièces jointes.

Si vous êtes en mesure de lister ces risques, vous devez aussi lister les actions que vous avez entreprises ou allez entreprendre pour traiter ces risques afin que leur impact soit minimal. Nous vous recommandons d'utiliser MONARC, un bon outil de gestion des risques qui est proposé gratuitement.

Une bonne gestion des risques implique une préparation, mais aussi de la transparence vis-à-vis de vos clients. En matière de transparence, vous devez vous assurer que les contrats avec vos clients définissent quelles sont les responsabilités de chacun en matière de sécurité des informations.


• Vous pouvez utiliser les outils Fit4Cybersecurity ou Fit4Privacy de CASES qui sont proposés gratuitement pour effectuer une auto-évaluation de votre maturité dans la gestion des risques.
• Informez-vous ici via l'outil de recherche des vulnérabilités courantes proposé par CIRCL.
• Accédez à l'annuaire Cybersecurity Ecosystem proposé par Security Made in Luxembourg si vous voulez sélectionner et contacter un expert pour effectuer cette analyse pour vous.
• Pensez à utiliser MONARC comme outil de gestion des risques

Pour les fournisseurs de logiciels médicaux qu'ils développent eux-mêmes, ce domaine couvre diverses bonnes pratiques en matière de sécurité qui s'appliquent à l'écriture de logiciels sécurisés.

Intégrez des exigences de complexité et de validité des mots de passe

Lorsque vous intégrez l'usage de mots de passe dans les logiciels que vous développez, ne les codez jamais en dur. Laissez au contraire l'utilisateur les choisir et imposer le niveau de complexité et les périodes de renouvellement des mots de passe. Cela vise à éviter des mots de passe basiques faciles à deviner ou des mots de passe qui sont utilisés indéfiniment. Il n'est pas facile de trouver un bon équilibre entre la complexité, la validité et l'exploitabilité. Les utilisateurs souhaitent toujours quelque chose de facile à utiliser ou ont tendance à éviter les mots de passe trop difficiles à retenir. D'un autre côté, il est de votre responsabilité en tant que développeur de logiciels de mettre en place les mécanismes pour protéger la confidentialité des données et du système qui les utilise. Vous devez aussi penser à mettre à jour ces exigences à mesure que le temps passe ; vous pouvez par exemple suivre certains standards de sécurité ou vous reporter à un site web/blog (p. ex. les recommandations de CASES). Pour obtenir des recommandations plus précises sur la complexité des mots de passe, allez sur https://www.nc3.lu/pages/knowledge/glossary/Password.html (en anglais et en français) ou reportez-vous aux recommandations sur les mots de passe du NIST.

Intégrez un accès à votre logiciel basé sur les rôles

Tous les utilisateurs ne sont pas autorisés à accéder aux données médicales de la même manière. Vous devez minimiser les risques de confidentialité en créant des fonctions d'accès basées sur les rôles, p. ex. pour les médecins, les assistants, le personnel de soutien, les spécialistes extérieurs, et accorder uniquement des droits minimaux à chaque rôle dès le début. Ainsi, le logiciel restreindra l'accès à certains types de données en fonction des droits d’accès associés à ces rôles. L'ajout de nouveaux droits sera plus facile à gérer que s’ils avaient été accordés globalement dès le départ. De plus, il doit être clair pour vos clients et pour vous-même, si la maintenance des droits d’accès, des rôles et des accès est de la responsabilité de l'utilisateur ou de celle du vendeur.

Intégrez un chiffrement pour les données en transit ou stockées

L'environnement de test doit être complètement séparé de l'environnement de production car ainsi, il n'y a pas de risque de produire des modifications accidentelles ou non autorisées (ou même des dérangements) sur le système opérationnel déjà en place. Le jeu de données que vous utilisez pour tester votre code doit être réaliste et représentatif (dans la mesure du possible) et vous devez éviter d’utiliser des données patients réelles complètes dans votre environnement de test car cela pourrait être le début d'une fuite de données.

Faites attention au jeu de données de test et à l'environnement de test

L'environnement de test doit être complètement séparé de l'environnement de production car, ainsi, il n'y a pas de risque de produire des modifications accidentelles ou non autorisées (ou même des dérangements) sur le système opérationnel déjà en place. Le jeu de données que vous utilisez pour tester votre code doit être réaliste et représentatif (dans la mesure du possible), et vous devez éviter utiliser des données patients réelles complètes dans votre environnement de test car cela pourrait être le début d'une fuite de données.

Utilisez des principes de codage sécurisés, gérez les codes et effectuez des revues de code

Appliquez et suivez des principes de codage sécurisés définis officiellement tels que ceux recommandés par OWASP ici, la référence "Writing Secure Code" de M. Howard ou le livre "Software Security: Building Security In" de G. McGraw.

Afin de garder une trace des modifications de code source relatives à un répertoire de codes sources, vous devez envisager l'utilisation d'un logiciel de gestion de codes sources, ce qui vous aidera :

  • à garder une trace des modifications de code,
  • à conserver des journaux d'activité qui permettront de retrouver quel développeur a effectué des modifications sur quels morceaux de code,
  • à gérer les conflits lorsque plusieurs collaborateurs ont fait des modifications sur les mêmes fichiers.

Des sauvegardes sécurisées et cryptées de votre code source, effectuées par GitHub ou un autre logiciel spécialisé, vous aideront à garantir l’intégrité et à ne jamais perdre la dernière version ou des versions antérieures de votre code source.

Quand un développeur finit d'écrire le code pour une fonction logicielle, deux bonnes pratiques doivent être appliquées :

  • tester le code créé pour déterminer s'il est apte à être utilisé. Les tests de logiciels peuvent être effectués sous forme de tests unitaires (pour tester si un élément de code spécifique fonctionne correctement), de tests d'intégration (pour tester si des interfaces entre différents composants fonctionnent correctement), de tests système (pour tester si un système complètement intégré fonctionne) ou de tests d’acceptation (pour tester si l'environnement opérationnel, les contrôleurs externes ou les utilisateurs acceptent le logiciel). Votre processus de développement doit comprendre tous ces types de tests.
  • demander à un autre développeur de revoir le code. Cela peut être utile pour repérer des erreurs delogique et pour vérifier la conformité aux spécifications, la couverture des tests en place et le respect des directives de développement. Ainsi, aucun développeur en particulier n'est responsable et les défauts sont identifiés plus rapidement grâce au contrôle à 4 yeux. En plus des révisions manuelles, les revues de code peuvent aussi bénéficier d'outils automatiques (pour l'analyse de code statique ou dynamique).

Pensez aux bonnes pratiques des tests de sécurité

Les tests de sécurité sont effectués avant que le logiciel soit publié et se concentrent sur la découverte des points faibles dans la conception et la mise en œuvre du code. Cela va au-delà des tests fonctionnels et vise à effectuer des tests antagonistes, à la recherche de conditions limites simples (aucune compétence de piratage particulière n'est nécessaire). Par exemple, la recherche d'une injection SQL dans le code de votre site web peut être effectuée à ce stade. Un autre cas peut être si quelqu'un entre un mauvais mot de passe plusieurs fois. Si vous effectuez des tests de valeur limite, vous vous préparez pour le cas où un pirate teste délibérément la limite.

N'utilisez pas de bibliothèques, de langages de programmation ou de systèmes d'exploitation périmés

Vous devez vérifier régulièrement si les systèmes d'exploitation, les plateformes de programmation ou les bibliothèques que vous utilisez sont toujours actualisés et maintenus. Par exemple,

  • si vous utilisez des systèmes d'exploitation anciens (p. ex. Windows XP, Windows Server 2008 R2 ou antérieur), il y a des chances que les coûts de maintenance soient plus élevés et il y a peu voire pas de support de la part des éditeurs. Si vous n'êtes pas certain du support de cycle de vie pour votre système Windows, vous pouvez vérifier à l’aide de cette page Microsoft.
  • Toutes les bibliothèques tierces comprises dans le développement que vous réalisez en interne doivent être vérifiées régulièrement dans le cas où de nouvelles versions apparaîtraient ou si les anciennes versions ne sont plus supportées.
  • Quand vous téléchargez des bibliothèques tierces à intégrer dans votre logiciel, vérifiez que vous utilisez des sources fiables et, si possible, vérifiez l'intégrité de la bibliothèque au moyen d'une vérification de somme de contrôle.

En ce qui concerne les plateformes de développement, pensez à utiliser des langages de programmation modernes qui sont supportés par leur éditeur ainsi que par une vaste communauté et sont fournis avec des mises à jour régulières et des patchs de sécurité. Pour vous en assurer, vérifiez s'il y a des avis de fin de support sur le site web du vendeur, et si c'est le cas pour votre langage de développement, choisissez la version dont le support est plus étendu.

Evitez les transferts de données avec des connexions sans-fil non protégées ou publiques

Si, dans votre logiciel, vous voulez permettre aux utilisateurs d'ouvrir des connexions avec des machines ou des appareils (semi) mobiles extérieurs (p. ex. un échographe, une tablette, un téléphone mobile, un scanner IRM), évitez à tout prix les connexions sans-fil non protégées. Sans aucun chiffrement, ces connexions seront utilisées pour transférer des données confidentielles qui pourraient être interceptées par des personnes mal intentionnées.


• Trouvez ici des recommandations plus précises sur la complexité des mots de passe ou les recommandations sur les mots de passe du NIST.
• Pour les principes de codage sécurisés, reportez-vous aux recommandations OWASP, à la référence "Writing Secure Code" de M. Howard ou au livre "Software Security: Building Security In" de G. McGraw.
• Vous trouverez ici de plus amples informations sur les logiciels de gestion des codes sources tels que GIT, Subversion, etc.
• Pour le support de cycle de vie de votre système Windows, vous pouvez vous référer à cette page Microsoft.
• Cliquez ici pour trouver les bonnes pratiques de cybersécurité.