Brevet FR2713796A1 — publié le 19950616

La présente invention se rapporte à un procédé de protection des postes de travail informatiques, faisant partie d'un groupe, contre l'intrusion ou l'extraction de données et/ou de programmes, ainsi qu'à un dispositif de mise en oeuvre de ce procédé. Les postes de travail informatiques sont souvent des micro-ordinateurs classiques, par exemple des "P.C." ("Persocal Computer en anglais), ou bien des équipements dédiés. Ces postes de travail à équipements standard fonctionnent de façon tout à fait satisfaisante lorsqu'on les utilise normalement dans l'application pour laquelle ils ont été adaptés. Cependant, leurs utilisateurs peuvent, par erreur ou par malveillance, soit y introduire des fausses données ou des virus (par exemple en utilisant une disquette d'origine douteuse contenant un virus), soit en extraire des données "sensibles" (le programme d'application ou des données confidentielles). Pour protéger un poste de travail informatique, on connaît des circuits ("dongles") placés dans un boîtier enfiché sur le port parallèle du micro-ordinateur, ces circuits contenant un code qu'un programme déterminé peut lire pour savoir si le poste de travail est bien habilité à utiliser ce programme et/ou ceux qui en sont dépendants. On connaît également des disquettes non standard, par exemple des disquettes de jeux, qui sont organisées de façon inhabituelle pour le système d'exploitation du microordinateur et sont munies d'une version du système d'exploitation compatible avec l'organisation spéciale de ces disquettes. On connaît également des logiciels personnalisés au niveau de chaque utilisateur par un code qui permet, en cas d'enquête, de contrôler que l'utilisateur du poste de travail est bien habilité à utiliser ces logiciels, et en particulier, les a acquis légalement. On connaît enfin des programmes qui demandent à l'utilisateur de donner son mot de passe pour pouvoir aller plus loin dans leur utilisation. Tcus ces procédés connus ont comme caractéristique commune de protéger l'utilisation d'un logiciel et d'être personnalisés soit au niveau du logiciel, soit au niveau de l'utilisateur qui doit disposer d'un code qui lui est propre. La présente invention a pour objet un procédé permettant de protéger de tels postes de travail à équipements standard contre l'intrusion ou l'extraction malveillante ou accidentelle de données et/ou de programmes par un utilisateur non habilité à les utiliser autrement que de façon habituelle, et ce, indépendamment du logiciel utilisé, sans que l'utilisateur ait à intervenir. La présente invention a également pour objet un dispositif de mise en oeuvre dudit procédé, dispositif qui soit simple à mettre en place et peu onéreux. Le procédé conforme à la présente invention est caractérisé par le fait que l'on modifie au moins une des commandes de gestion d'au moins l'un des équipements standard d'entrées/sorties du poste de travail. Selon un aspect du procédé de l'invention, on modifie au moins une commande de gestion des mémoires de masse du poste de travail, en particulier des lecteurs de supports de mémoire amovibles. La modification peut être personnalisée pour chaque groupe et être la même pour tous les postes de travail d'un même groupe. Le dispositif conforme à l'invention comporte un circuit de modification de commandes inséré dans le circuit de commande d'au moins un équipement standard d'entrées/sorties du micro-ordinateur, ce circuit modifiant les signaux de commande de cet équipement standard et/ou les adresses des données envoyées et reçues de cet équipement standard. La présente invention sera mieux comprise à la lecture de la description détaillée de deux modes de réalisation, pris à titre d'exemples non limitatifs et illustrés par le dessin annexé, sur lequel - la figure 1 est un bloc diagramme d'un premier mode de réalisation d'un dispositif de protection conforme à l'invention, à circuit câblé, et - la figure 2 est une vue simplifiée en perspective d'un second mode de réalisation conforme à l'invention, à carte enfichable. L'invention est décrite ci-dessous en référence à un poste de travail, mais il est bien entendu qu'elle n'est pas limitée à cette seule application, et qu'elle peut être mise en oeuvre dans des équipements informatiques de types très divers. Ces postes de travail sont des dispositifs informatiques utilisant des unités de traitement standard (telles que "P.C." (marque enregistrée) ou "MacIntosh" (marque enregistrée), par exemple) accessibles à divers utilisateurs non autorisés à effectuer toutes les opérations qu'il est possible d'effectuer avec ces unités de traitement standard. Ces équipements informatiques peuvent être par exemple des ordinateurs de gestion ou de contrôle de processus industriels, des terminaux de points de vente, des bornes multimédia, ... Les modes de réalisation décrits ci-dessous se rapportent à des postes de travail qui sont généralement utilisés par un personnel sans qualification informatique particulière dans des sites distincts ou dans le même site. Il est alors important que des tiers, ou les utilisateurs eux-mêmes, n'importent pas de données erronées dans ces postes de travail ou ne viennent à en extraire des données. Les dispositifs décrits ci-dessous protègent de manière simple les différents postes de travail d'un groupe et les données qui y sont utilisées contre les mauvaises utilisations faites par inadvertance ou par malveillance. Selon l'invention, on transforme de façon identique pour tous les postes de travail à l'intérieur du groupe la manière dont les données sont écrites sur les disquettes et, le cas échéant, les disques fixes (dits disques durs), utilisés dans ces postes de travail. On a représenté en figure 1 un exemple de dispositif de protection conforme à l'invention. Ce dispositif 1 est inséré entre le circuit 2 de contrôle de lecteur de disquettes (contrôleur de mémoire de masse) et le lecteur de disquettes 3 (mémoire de masse). Bien entendu, le dispositif 1 pourrait aussi bien être inséré dans les liaisons entre d'autres équipements standard d'entrées/sorties (disques fixes, numériseurs, ...) et leurs circuits de contrôle. Le dispositif 1 comporte essentiellement un circuit 4 de modification d'adresses et une "clè" 5 de personnalisation, et, optionnellement, un codeur 6 et un décodeur correspondant 7. La clé 5 est un circuit figé ou évolutif, câblé ou programmable, par exemple par microinterrupteurs, ou par mémoire morte programmée ou programmable. Le circuit 4 est inséré dans au moins une partie des fils d'adresses A reliant le circuit 2 au circuit 3. Dans un mode de réalisation très simple, le circuit 4 inverse les numéros des faces de la disquette disposée dans le lecteur 3. Selon un autre mode de réalisation, le circuit 4 modifie les numéros d'une partie, judicieusement choisie, des pistes ou de toutes les pistes de cette disquette, selon un ordre prédéterminé par câblage ou modifiable par la clé 5. Ainsi, le circuit 4 intercepte les adresses des pistes sur lesquelles le circuit 2 veut écrire ou lire des données, et transmet, le cas échéant, d'autres adresses. Les écritures et les lectures à ces autres adresses se font de la manière habituelle. Etant donné que la modification des adresses de pistes se fait de la même manière en lecture qu'en écriture, le circuit 2 "ignore" qu'il y a eu des modifications d'adresses, et réagit de façon habituelle, du moins tant qu'il lit et écrit sur la même disquette. Ainsi, ce processus est "transparent" pour l'utilisateur, qui nota rien à modifier à ses habitudes. Par contre, si l'utilisateur de ce poste de travail voulait lire et/ou copier une disquette enregistrée sur un micro-ordinateur classique (ou sur un poste de travail conforme à l'invention mais équipé d'une clé différente), il ne le pourrait pas, à cause du codage des adresses de pistes spécifique à son poste de travail. De même, il ne pourrait pas exploiter sur un micro-ordinateur classique (ou sur un poste de travail conforme à l'invention mais équipé d'une clé différente) des disquettes enregistrées sur son poste de travail. Bien entendu, la protection offerte par ce dispositif de modification d'adresses suffit pour éviter les problèmes provoqués par des fausses manipulations accident'elles, mais peut être déjouée par une personne mal intentionnée disposant de connaissances et de moyens suffisants. Dans ce dernier cas, on peut avantageusement mettre en oeuvre les circuits 6 et 7. Ces circuits 6 et 7 sont insérés sur les fils de données D reliant le circuit 3 au circuit 2. Le codeur 6 code, selon un code approprié, par exemple pseudo-aléatoire, les données envoyées par le circuit 2, et ces données codées sont enregistrées aux adresses indiquées par le circuit 4. De même, lors de la lecture sur la disquette de ces données codées, le circuit 4 indique au lecteur 3 les adresses modifiées correspondantes, et le décodeur 7 les décode pour les envoyer au circuit 2. Bien entendu, on prend alors toutes les mesures nécessaires, connues de l'homme de l'art, pour que l'utilisateur ne puisse pas avoir accès à l'algorithme de codage et de décodage mis en oeuvre par les circuits 6 et 7. Le mode de réalisation de la figure 2 comporte une carte 8 (dite carte d'extension du poste de travail) que l'on enfiche dans un connecteur 9 ("slot") de la carte-mère 10 du micro-ordinateur du poste de travail en question. La carte 8 comprend en particulier une mémoire 11, par exemple du type EPROM, dans laquelle est mémorisé un programme de protection. Ce programme se substitue au programme habituel d'exploitation des mémoires de masse du micro-ordinateur (disquettes, disques durs, en particulier SCSI, ...). Ce programme de substitution effectue une modification d'adresses similaire à celle effectuée par le circuit 4 de la figure 1, et, le cas échéant, un codage et un décodage similaires à ceux effectués par les circuits 6 et 7. La réalisation d'un tel programme est évidente pour l'homme du métier à la lecture de la présente description, et ne sera pas décrite ici. Ce programme se charge en mémoire vive à la mise sous tension du micro-ordinateur, et intercepte les ordres d'écritures et de lecture des mémoires de masse concernes. Il effectue les modifications d'adresses d'écritu-Le et de lecture de la même façon que le circuit 4, ce qui fait que, pour l'utilisateur, le fonctionnement du micro-ordinateur est le même qu'habituellement. L'intérêt de ce mode de réalisation réside en particulier dans le fait que le nombre de codes offerts par la mémoire 11 est très élevé et que l'on peut protéger divers dispositifs de mémoire de masse. Bien entendu, pour que ce programme fonctionne, il faut que le système d'exploitation du micro-ordinateur n'accède à ses ressources matérielles qu'à travers ledit programme de substitution. Grâce au procédé de l'invention, on peut, dans un même lieu (par exemple un point de vente), ou dans des lieux géographiquement éloignés, mais formant une entité fonctionnelle, disposer d'un groupe de plusieurs postes de travail, possédant la même clé (et, le cas échéant, les mêmes codeur et décodeur de données) qui peuvent librement échanger entre eux des mémoires de masse (disquettes ou disques durs amovibles), mais des données provenant de l'extérieur de ce groupe ne peuvent pas y être introduites, et les données propres à ce groupe ne peuvent pas être exploitées à l'extérieur de ce groupe. Ce procédé n'affecte en rien les logiciels exploités par ces postes de travail, et les utilisateurs de ces postes ne perçoivent aucune différence par rapport à des postes non équipés du dispositif de l'invention. REVENDICATIONS 1 - Procédé permettant de protéger des postes de travail faisant partie d'un groupe contre l'intrusion ou l'extraction malveillante ou accidentelle de données et/ou de programmes par un utilisateur non habilité à les utiliser autrement que de façon habituelle, caractérisé par le fait que l'on modifie au moins une des commandes de gestion d'au moins l'un des équipements standard d'entrées/sorties (3) du poste de travail. 2 - Procédé selon la revendication 1, caractérisé par le fait que la modification est la même pour tous les postes de travail d'un même groupe. 3 - Procédé selon la revendication 1 ou 2, caractérisé par le fait que l'on modifie au moins une commande de gestion des mémoires de masse (3) du poste de travail. 4 - Procédé selon la revendication 3, caractérisé par le fait que l'on modifie au moins une commande de gestion d'un lecteur de supports de mémoire amovibles (3). 5 - Procédé selon la revendication 3 ou 4, caractérisé par le fait que l'on modifie lors de l'enregistrement de données sur au moins une mémoire de masse (3) au moins une adresse d'enregistrement de ces données, et qu'à la lecture de ces données, on modifie de la même façon leur adresse. 6 - Procédé selon l'une des revendications précédentes, caractérisé par le fait que l'on code les données lors de leur envoi à l'équipement standard (3), et qu'on les décode en sens inverse lors de leur réception depuis ce dernier. 7 - Dispositif permettant de protéger des postes de travail à équipements standard contre l'intrusion ou l'extraction malveillante ou accidentelle de données et/ou de programmes par un utilisateur non habilité à les utiliser autrement que de façon habituelle, caractérisé par le fait qu il comporte un circuit (4) de modification de commandes inséré dans le circuit de commande d'au moins un équipement standard (3) d'entrées/sorties de ce poste de travail, ce circuit modifiant les signaux de commande de cet équipement standard et/ou les adresses des données envoyées à, et reçues de, cet équipement standard. 8 - Dispositif selon la revendication 7, caractérisé par le fait qu'il est réalisé sur une carte d'extension (8) du poste de travail. 9 - Dispositif selon la revendication 7 ou 8, caractérisé par le fait qu'il est inséré entre un contrôleur (2) de mémoire de masse et cette mémoire de masse (3). 10 - Dispositif selon la revendication 9, caractérisé par le fait que la mémoire de masse (3) est un lecteur de disquettes à disquettes souples. 11 - Dispositif selon la revendication 9, caractérisé par le fait que la mémoire de masse est un disque dur. 12 - Groupe de postes de travail informatiques, caractérisé par le fait que chaque poste comprend un dispositif de protection (1) selon l'une des revendications 7 à 11.