Brevet FR3074934A1 — publié le 20190614

I Système et procédé de protection d'un système informatique La présente invention concerne un système et un procédé de protection d'un système informatique comportant au moins un connecteur permettant la connexion d'un dispositif de stockage de données portable externe. L'invention se situe dans le domaine de la sécurité des systèmes informatiques. L'utilisation de dispositifs de stockage de données portables, amovibles, adaptés à être connectés à un terminal d'utilisateur, et plus généralement à un système informatique, via une connexion de type Universal Serial Bus ou USB, est de plus en plus courante, y compris dans le domaine de l'entreprise et dans le domaine industriel. De manière connue, la norme USB (en français Bus Universel Série) est une norme relative à une transmission série de données par un bus informatique, servant à connecter un dispositif périphérique à un système informatique de tout type prévu à cet effet (ordinateur, tablette, smartphone). Il est fréquent d'utiliser ce type de dispositif de stockage de données portable, notamment des clés USB, pour transférer des données de manière bi-directionnelle entre des systèmes informatiques de niveaux de sécurité différents. Or il est connu qu'il existe des logiciels malveillants qui ont pour objectif de gêner ou bloquer le fonctionnement des systèmes informatiques hôtes ou des logiciels espions qui ont pour but de copier des données confidentielles stockées sur un système informatique hôte. Il s'agit par exemple de logiciels connus sous les noms de virus, malware, rançonware. L'introduction de tels logiciels malveillants est totalement indésirable sur tout type de système informatique, à la fois sur un terminal d'utilisateur personnel et sur un terminal d'utilisateur connecté à un réseau d'entreprise. Dans ce deuxième cas, l'introduction d'un logiciel malveillant est particulièrement critique par rapport à la sécurité des données de l'entreprise. De manière classique, un terminal d'utilisateur comporte un ou plusieurs connecteurs (ou ports USB) permettant de connecter un dispositif compatible, par exemple une clé USB, directement au terminal d'utilisateur, un tel dispositif pouvant être porteur de logiciels malveillants. Outre les attaques par l'intermédiaire de logiciels malveillants, il peut être envisagé qu'un dispositif portable ayant des capacités de connexion de type USB soit prévu pour réaliser une attaque physique, par exemple via une décharge électrique, du système informatique hôte. 2 Il est nécessaire de mettre en place des systèmes de sécurisation afin d'empêcher toute attaque, physique ou logicielle, par l'intermédiaire d'un dispositif de stockage portable. A cet effet, l'invention propose, selon un premier aspect, un système de protection 5 d'un système informatique comportant au moins un connecteur permettant la connexion d'un dispositif de stockage de données portable externe. Ce dispositif comporte : - un premier équipement de protection portable comportant un connecteur d'entrée adapté à recevoir ledit dispositif de stockage de données portable, -au moins un deuxième équipement de protection portable comportant un 10 connecteur de sortie adapté à être connecté audit système informatique, lesdits premier et deuxième équipements étant adaptés à communiquer entre eux par un canal de communication radio, le premier équipement comportant en outre un module de vérification de sécurité des données, apte à exécuter au moins un logiciel de vérification de sécurité des données 15 du dispositif de stockage de données portable connecté en entrée dudit premier équipement et à transmettre un rapport de vérification au deuxième équipement. Avantageusement, la présence d'un premier équipement adapté à recevoir le dispositif de stockage portable et d'un deuxième équipement connecté au système informatique, séparés physiquement et adaptés à communiquer entre eux selon un mode 20 de communication radio, permet de protéger le système informatique à la fois des menaces physiques et des menaces logicielles. Avantageusement, le système proposé permet d'isoler, à la fois pour le matériel et le logiciel, les éventuels dispositifs de stockage portables infectés. Le système de protection selon l'invention peut présenter une ou plusieurs des 25 caractéristiques ci-dessous, prises indépendamment ou en combinaison, selon toutes les combinaisons techniquement acceptables. A la réception d'un rapport de vérification, le deuxième équipement est adapté à vérifier si ledit rapport est positif, et dans ce cas uniquement, à fournir audit système informatique un accès aux données stockées sur ledit dispositif de stockage de données 30 externe. Le deuxième équipement est adapté à fournir ledit rapport de vérification au système informatique. Le premier équipement comprend un boîtier et au moins un indicateur lumineux ou textuel disposé sur une des parois du boîtier, permettant d'indiquer, suite à la vérification 35 de sécurité des données, si le rapport de vérification est positif ou négatif. 3 Le système comporte une pluralité de deuxièmes équipements, chacun des deuxièmes équipements étant adapté à communiquer avec ledit premier équipement par un canal de communication radio. Selon un deuxième aspect, l'invention concerne un procédé de protection d'un 5 système informatique mis en oeuvre dans un système de protection comportant au moins un connecteur permettant la connexion d'un dispositif de stockage de données portable externe, comportant un premier équipement de protection portable comportant un connecteur d'entrée adapté à recevoir ledit dispositif de stockage de données portable, et un deuxième équipement de protection portable comportant un connecteur de sortie 10 adapté à être connecté audit système informatique. Le procédé comporte des étapes de : - détection de connexion d'un dispositif de stockage de données portable audit premier équipement, - vérification de sécurité des données, par exécution d'au moins un logiciel de vérification de sécurité des données du dispositif de stockage de données portable 15 connecté en entrée dudit premier équipement, et génération d'un rapport de vérification, -transmission d'un rapport de vérification au deuxième équipement de protection par un canal de communication radio. Le procédé de protection selon l'invention peut présenter une ou plusieurs des caractéristiques ci-dessous, prises indépendamment ou en combinaison, selon toutes les 20 combinaisons techniquement acceptables. L'étape de vérification met en oeuvre une pluralité de logiciels de vérification de sécurité. Le procédé comprend en outre une étape de commande d'indicateur lumineux ou textuel permettant d'indiquer visuellement à un utilisateur le résultat positif ou négatif de la 25 vérification. Le procédé comprend en outre une étape d'établissement d'un canal de communication radio entre le premier équipement et le deuxième équipement selon un protocole de communication prédéterminé, comportant une étape d'appariement entre lesdits premier et deuxième équipements. 30 L'étape d'appariement met en oeuvre une vérification de correspondance entre un identifiant unique associé au deuxième équipement et un identifiant préalablement mémorisé par le premier équipement. D'autres caractéristiques et avantages de l'invention ressortiront de la description qui en est donnée ci-dessous, à titre indicatif et nullement limitatif, en référence aux 35 figures annexées, parmi lesquelles : 4 -la figure 1 est un exemple schématique d'un système de protection selon un mode de réalisation dans un contexte d'utilisation ; - la figure 2 est une illustration schématique des blocs fonctionnels des premier et deuxième équipements d'un système de protection selon un premier mode de réalisation ; 5 - la figure 3 est une illustration schématique des blocs fonctionnels d'un système de protection selon un deuxième mode de réalisation ; - la figure 4 est un logigramme des principales étapes d'un procédé de protection selon un mode de réalisation de l'invention. 10 La figure 1 illustre un système de protection d'un système informatique dans un contexte d'utilisation. Le système global 1 décrit ici à titre d'exemple comporte un système de protection 2 d'un système informatique 4 par rapport à tout type d'attaque en provenance d'un dispositif de stockage de données portable externe 5. 15 Le dispositif externe 5 est dans cet exemple une clé USB adaptée à être connectée de manière connue, via un connecteur USB à tout système informatique comportant un connecteur USB ou port USB adéquat. Le système informatique 4 de l'exemple de la figure 1 comprend un terminal d'utilisateur 6, par exemple un ordinateur personnel (PC) portable, connecté à un réseau 20 de communication 8, qui est par exemple un réseau d'entreprise auquel sont connectés divers autres sous-systèmes informatiques 8a, 8b, 8c. On entend ici par système informatique tout matériel informatique, qu'il s'agisse d'un terminal seul ou d'un système comportant une pluralité de terminaux adaptés à communiquer selon un protocole de communications connu. Un sous-système 25 informatique est une partie d'un système informatique. Par exemple, le terminal d'utilisateur 6 est connecté au réseau 8 par une connexion filaire 9 de type Ethernet. Bien entendu, il s'agit d'un exemple non limitatif. En variante, le terminal d'utilisateur 6 est connecté au réseau par une connexion sans fil. Le système de protection 2 selon un mode de réalisation de l'invention comporte 30 un premier équipement 10 de sécurité et un deuxième équipement 12 de sécurité, qui sont tous deux de type portable, donc comportant chacun un boîtier de taille réduite. Par exemple, le deuxième équipement a une taille similaire à la taille d'une clé USB. De préférence, le premier équipement 10 comporte un boîtier, par exemple parallélépipédique de taille de l'ordre de de 10 cm * 5cm * 1 cm. 35 Le deuxième équipement 12 est adapté à être connecté au terminal d'utilisateur 6 par câble USB 14, comme illustré à la figure 1. En variante, le deuxième équipement 12 5 comporte un connecteur USB, non représenté à la figure 1, adapté à être connecté directement dans un connecteur USB complémentaire du terminal d'utilisateur 6. Le premier équipement 10 est adapté à communiquer avec le deuxième 5 équipement 12 par un canal radio 16. Des modules fonctionnels de ces divers éléments sont illustrés schématiquement à la figure 2. Le premier équipement 10 comprend un connecteur d'entrée 20, adapté à recevoir un connecteur 22 du dispositif de stockage 5. 10 Le boîtier du premier équipement comprend, dans le mode de réalisation de la figure 1, un indicateur lumineux 15, par exemple une diode électroluminescente, qui permet d'indiquer visuellement à l'utilisateur, lorsqu'il branche un dispositif de stockage 5, si la vérification des données stockées est positive ou négative. Par exemple, l'indicateur 15 est allumé en vert lorsque la vérification est positive, et en rouge lorsque la vérification 15 est négative. Bien entendu, en variante, il est possible d'envisager de positionner deux ou plusieurs indicateurs lumineux distincts, qui s'allument partiellement en fonction du résultat de la vérification. En variante ou en complément, il est possible de positionner des indicateur textuels (par exemple « scanning in progress », « scan OK », « scan KO »). En 20 variante ou en complément, il est possible de positionner des indicateurs graphiques (IHM). Le premier équipement 10 comprend également un premier module de communication sans fil 24, par exemple un module émetteur/récepteur WiFi, permettant de communiquer avec un deuxième module de communication sans fil 26 du deuxième 25 équipement 12, adapté à utiliser le même protocole de communication sans fil que le module 24, par exemple WiFi. En variante, d'autres protocoles de communication sans fil sont envisagés, par exemple Bluetooth. Le premier équipement 10 comprend également un processeur 28, adapté à 30 mettre en oeuvre un module 30 de vérification de sécurité des données et un module 32 adapté à générer un rapport de vérification qui est transmis, par l'intermédiaire du premier module de communication sans fil 24, au deuxième équipement 12. Ainsi, lors de l'insertion du dispositif de stockage de données portable 5 dans le premier équipement 10, le module 30 de vérification de sécurité des données met en 35 oeuvre au moins un logiciel de vérification, couramment appelé logiciel anti-virus, 6 permettant de vérifier si les données 34a, 34b, 34c stockées sur le dispositif de stockage portable 5 sont ou non infectées par des instructions de code malveillant. Tout type de logiciel connu de type antivirus, antimalware ou antispyware peut être mis en oeuvre par le module 30 de vérification de sécurité. 5 Le deuxième équipement 12 comporte également un processeur 36 et un connecteur de sortie 38, de type USB, adapté à être connectée à un connecteur correspondant 40 du terminal d'utilisateur 6. Si le module 30 de vérification de sécurité des données valide les données contenues dans le dispositif de stockage 5 comme étant intègres, un accès aux données 10 est fourni au terminal d'utilisateur 6. Un utilisateur ou une application du terminal d'utilisateur 6 peut alors accéder aux données 34a, 34b, 34c du dispositif de stockage 5 de manière transparente, comme si le dispositif de stockage 5 était directement branché sur le connecteur USB 40. Cette transparence est par exemple réalisée au travers d'un protocole spécifique d'accès à 15 distance au matériel connecté. Un exemple de protocole pouvant être utilisé est le protocole NBD (pour « Network Block Device » en anglais). De plus le rapport de vérification généré, qui est positif dans ce cas, est également transmis au terminal d'utilisateur 6. Si le module 30 de vérification de sécurité des données détecte la présence ou le 20 risque de présence de code malveillant dans les données contenues dans le dispositif de stockage 5, aucun accès aux données n'est transmis au terminal d'utilisateur 6. Seul le rapport de vérification généré, qui est négatif dans ce cas, est transmis au terminal d'utilisateur 6. En effet, un tel rapport contient par exemple des informations sur le type de code malveillant détecté, ce qui permet d'effectuer une analyse plus générale par rapport 25 au type d'attaque constaté. De préférence, chacun des premier équipement 10 et deuxième équipement 12 est implémenté par un système intégré SoC (pour « System on Chip »), qui intègre les fonctionnalités de calcul, de mémoire, de communication sur un même substrat. Par exemple, un processeur Raspberry Pi @ est utilisé. 30 Avantageusement, un tel système est miniature, peu coûteux et facilement transportable, et comprend un microcontrôleur ayant suffisamment de puissance de calcul pour effectuer toutes les opérations à effectuer par un procédé de protection d'un système informatique tel que décrit. La figure 3 illustre un autre mode de réalisation d'un système de protection 21, 35 comprenant un premier équipement 10, tel que décrit précédemment, et une pluralité de deuxièmes équipements 12a, 12b, 12c, analogues au deuxième équipement 12 décrit 7 précédemment. Les modules fonctionnels des deuxièmes équipements sont analogues à ceux de la figure 2, et portent des références analogues sur la figure 3. Chaque deuxième équipement 6a, 6b, 6c est adapté à communiquer avec le premier équipement 10 par un canal radio 16a, 16b, 16c. 5 Un tel système de protection 21 est avantageusement utilisable pour partager des données 34a, 34b, 34c, après validation par le module 30 de vérification de sécurité, entre plusieurs terminaux utilisateurs 6a, 6b, 6c, comportant chacun un connecteur USB 40a, 40b, 40c adapté à recevoir une connexion avec le deuxième équipement 12a, 12b, 12c.. Un tel partage est par exemple utile dans une situation de réunion de travail entre 10 divers intervenants, par exemple pour partager des données fournies par un prestataire extérieur à l'entreprise en toute sécurité. La figure 4 est un synoptique des principales étapes d'un procédé de protection d'un système informatique selon un mode de réalisation. L'ensemble 50A des étapes du procédé est mis en oeuvre sur le premier 15 équipement, et l'ensemble 50B des étapes est mis en oeuvre par le deuxième équipement. Sur le premier équipement, lors d'une première étape 52, la connexion d'un dispositif de stockage 5 externe sur le connecteur 20 du premier équipement est détectée. Ensuite, une étape 54 de vérification de sécurité des données est mise en oeuvre, 20 suivie d'une étape 56 de génération ou mise à jour d'un rapport de vérification. Tout logiciel de vérification de type anti-virus, anti-malware, anti-spyware peut être mis en oeuvre à l'étape 54. De préférence, les étapes 54 et 56 sont répétées, de manière à cumuler les vérifications par mise en oeuvre de plusieurs logiciels de vérification de la sécurité des 25 données permettant de détecter une éventuelle tentative d'introduction de code malveillant, le rapport de vérification étant mis à jour à chaque vérification. De tels logiciels sont connus, et tout logiciel existant peut être utilisé. En variante, le logiciel de vérification est un logiciel propriétaire, mettant en oeuvre des contrôles spécifiques, par exemple la vérification des formats de fichier lorsque seul 30 un nombre restreint de formats de fichier est autorisé dans un réseau d'entreprise. Pour chaque tel logiciel, il est vérifié si le résultat de la vérification est positif ou négatif. Dès qu'un des logiciels de vérification génère un résultat négatif, on considère que les données 34a, 34b, 34c sont infectées et que le système informatique doit être protégé par rapport à ces données. 35 Par exemple, en cas de résultat de vérification négatif, le rapport de vérification comporte des informations horodatées, par exemple le nom du dispositif portable 5 vérifié, 8 le ou les noms des fichiers infectés, des informations afférentes au logiciel de vérification mis en oeuvre, et éventuellement le nom du virus détecté. Si le résultat de la vérification est positif, le rapport de vérification comporte par exemple les informations horodatées suivantes : nom du dispositif portable 5 vérifié, 5 mention indiquant que le dispositif est considéré non infecté, des informations afférentes au logiciel de vérification mis en oeuvre. Optionnellement, l'étape 56 est suivie d'une étape 58 de commande d'indicateur lumineux ou textuel permettant d'indiquer visuellement à un utilisateur le résultat positif ou négatif de la vérification. Par exemple, un indicateur lumineux de couleur verte est allumé 10 en cas de résultat positif, et un indicateur lumineux de couleur rouge est allumé en cas de résultat négatif. Par exemple, l'indicateur textuel est un texte affiché, par exemple « OK » en cas de résultat positif, et « Not OK» en cas de résultat négatif. Bien entendu, de nombreuses variantes d'indicateurs lumineux ou textuels sont envisageables. Selon une variante, une commande d'allumage d'indicateurs est effectuée en 15 parallèle de la mise en oeuvre des vérifications de sécurité, par exemple en commandant un clignotement des indicateurs lumineux durant la phase de vérification, puis un allumage cohérent et figé, comme expliqué ci-dessus, en fonction du résultat. Le premier équipement est adapté à communiquer avec le deuxième équipement par radio. 20 Pour ce faire, un canal de communication est établi par des échanges 60, 62 mis en oeuvre respectivement par le premier équipement et par le deuxième équipement. Plusieurs échanges selon un protocole de communication prédéterminé, par exemple le protocole WiFi, sont effectués, ce qui est schématiquement symbolisé par la flèche bi-directionnelle représentée sur la figure 4. 25 Il est à noter que les étapes d'établissement d'un canal de communication radio 60 et 62 peuvent également être réalisées, en variante, préalablement à la détection de l'introduction d'un dispositif portable 5 dans le premier équipement. De préférence, l'établissement d'un canal de communication comprend un appariement des premier et deuxième équipements. 30 Par exemple, le premier équipement mémorise un ensemble d'identifiants uniques ID, de deuxièmes équipements autorisés, cet ensemble pouvant être réduit à un seul deuxième équipement autorisé. Un identifiant est par exemple une chaîne de caractères de longueur prédéterminée, générée par un processus pseudo-aléatoire et de longueur suffisante être 35 unique. 9 Le deuxième équipement mémorise également son propre identifiant IDJ, qu'il envoie au premier équipement pour vérification. Si l'identifiant IDJ appartient à l'ensemble d'identifiants mémorisés dans le premier équipement, le canal de communication est mis en place. 5 Le premier équipement envoie ensuite au deuxième équipement le rapport de vérification, lors de l'étape de transmission 64. A réception, le deuxième équipement analyse le rapport de vérification reçu à l'étape 66, et en fonction du résultat de la vérification, autorise ou interdit (étape 68) au terminal d'utilisateur 6 l'accès aux données mémorisées sur le dispositif portable 5. 10 Lorsque le résultat de la vérification est positif, en plus du rapport, le deuxième équipement crée (étape 70) un canal de communication avec le dispositif externe USB connecté au travers du canal sans fil. Le dispositif de stockage externe est présenté au terminal 6 comme faisant partie du système d'information. Ainsi, dans ce cas, l'utilisateur obtient les données 34a, 34b, 34c du dispositif de 15 stockage externe comme si ce dispositif de stockage externe était directement branché physiquement au terminal d'utilisateur 6. Avantageusement, la sécurité est renforcée par la séparation physique entre le premier équipement qui reçoit le dispositif portable externe et le deuxième équipement qui est connecté physiquement au système informatique par l'intermédiaire du terminal 20 d'utilisateur. De plus, la sécurité est également renforcée par l'utilisation de modes de communication différents, ce qui nécessite une rupture de protocole de communication, typiquement entre la communication radio WiFi et la communication filaire USB. De préférence, pour renforcer encore la sécurité, les premier et deuxième 25 équipements implémentent un système d'exploitation différent du système d'exploitation du système informatique à protéger. Par exemple, lorsque le système informatique d'entreprise est un système fourni par Microsoft ®, les premier et deuxième équipements implémentent un système de type Linux. Enfin, il est plus aisé de mettre à jour les logiciels de vérification de sécurité 30 embarqués sur chaque premier équipement que de mettre à jour chaque terminal d'utilisateur d'un réseau d'entreprise. Un autre avantage est que le système de protection est portable, donc peut également être utilisé hors de l'enceinte d'une entreprise, par exemple par un utilisateur en déplacement professionnel, ou déplacé à l'intérieur d'une REVENDICATIONS1.- Système de protection (2) d'un système informatique comportant au moins un connecteur (40) permettant la connexion d'un dispositif (5) de stockage de données portable externe, caractérisé en ce qu'il comporte : - un premier équipement (10) de protection portable comportant un connecteur d'entrée (20) adapté à recevoir ledit dispositif (5) de stockage de données portable, -au moins un deuxième équipement (12) de protection portable comportant un connecteur de sortie (38) adapté à être connecté audit système informatique (4, 6), lesdits premier (10) et deuxième (12) équipements étant adaptés à communiquer entre eux par un canal de communication radio (16), le premier équipement (10) comportant en outre un module (30) de vérification de sécurité des données, adapté à exécuter au moins un logiciel de vérification de sécurité des données du dispositif (5) de stockage de données portable connecté en entrée dudit premier équipement (10) et à transmettre un rapport de vérification au deuxième équipement (12). 2.- Système selon la revendication 1, dans lequel suite à la réception d'un rapport de vérification, le deuxième équipement (12) est adapté à vérifier si ledit rapport est positif, et dans ce cas uniquement, à fournir audit système informatique (4, 6) un accès aux données (34a, 34b, 34c) stockées sur ledit dispositif (5) de stockage de données externe. 3.- Système selon l'une des revendications 1 ou 2, dans lequel ledit deuxième équipement (12) est adapté à fournir ledit rapport de vérification au système informatique (4, 6). 4.- Système selon l'une quelconque des revendications 1 à 3, dans lequel le premier équipement comprend un boîtier (10) et au moins un indicateur lumineux ou textuel disposé sur une des parois du boîtier, permettant d'indiquer, suite à la vérification de sécurité des données, si le rapport de vérification est positif ou négatif. 5.- Système selon l'une quelconque des revendications 1 à 4, comportant une pluralité de deuxièmes équipements (12a, 12b, 12c), chacun des deuxièmes équipements 11 (12a, 12b, 12c) étant adapté à communiquer avec ledit premier équipement (10) par un canal de communication radio (16a, 16b, 16c). 6.- Procédé de protection d'un système informatique mis en oeuvre dans un 5 système de protection comportant au moins un connecteur permettant la connexion d'un dispositif de stockage de données portable externe, comportant un premier équipement de protection portable comportant un connecteur d'entrée adapté à recevoir ledit dispositif de stockage de données portable, et un deuxième équipement de protection portable comportant un connecteur de sortie adapté à être connecté audit système informatique, 10 caractérisé en ce qu'il comporte des étapes de : - détection (52) de connexion d'un dispositif de stockage de données portable audit premier équipement, - vérification (54) de sécurité des données, par exécution d'au moins un logiciel de vérification de sécurité des données du dispositif de stockage de données portable 15 connecté en entrée dudit premier équipement, et génération (56) d'un rapport de vérification, -transmission (64) d'un rapport de vérification au deuxième équipement de protection par un canal de communication radio. 20 7.- Procédé selon la revendication 6, dans lequel l'étape de vérification met en oeuvre une pluralité de logiciels de vérification de sécurité. 8.- Procédé selon l'une des revendications 6 ou 7, comprenant en outre une étape (58) de commande d'indicateur lumineux ou textuel permettant d'indiquer visuellement à 25 un utilisateur le résultat positif ou négatif de la vérification. 9.- Procédé selon l'une quelconque des revendications 6 à 8, comprenant en outre une étape d'établissement (60, 62) d'un canal de communication radio entre le premier équipement (10) et le deuxième équipement (12) selon un protocole de communication 30 prédéterminé, comportant une étape d'appariement entre lesdits premier et deuxième équipements. 10.- Procédé selon la revendication 9, dans lequel l'étape d'appariement met en oeuvre une vérification de correspondance entre un identifiant unique associé au 35 deuxième équipement et un identifiant préalablement mémorisé par le premier équipement.