Canal caché
Un canal caché est en informatique un canal de communication entre deux ordinateurs qui utilise la bande passante d'un autre canal dans l'objectif de transmettre des informations sans l'autorisation ou la connaissance du propriétaire de l'information...
Catégories :
Logiciel malveillant - Stéganographie
Recherche sur Google Images :
Source image : fr.wikipedia.org Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur. |
Page(s) en rapport avec ce sujet :
- Canal caché (Covert Channel) : Canal de communication autorise un processus... Voir aussi : Code malveillant, Logiciel espion, cheval de Troie... (source : securite-informatique.gouv)
- Cette page contient les information de référence sur cheval de troie (informatique) :.... pour transmettre des informations : les canaux cachés (covert channels). Introduction aux canaux cachés. Le problème des chevaux de Troie est ... (source : dictionnaire.sensagent)
- Voir aussi : Canal caché, Cheval de Troie. Références : Document [THOM95]..... "Detection of Covert Channel Encoding in Network Packet Delays".... (source : certa.ssi.gouv)
Un canal caché (en anglais : covert channel) est en informatique un canal de communication entre deux ordinateurs qui utilise la bande passante d'un autre canal dans l'objectif de transmettre des informations sans l'autorisation ou la connaissance du propriétaire de l'information ou de l'administrateur du réseau.
Fonctionnement
Les canaux cachés sont des entités dynamiques ; ils accaparent un emplacement mémoire sans obligatoirement avoir besoin d'être stockés. Qui plus est , sachant que l'unité informatique la plus basse connue est le bit, certains canaux cachés sont capables d'extraire des demi-bit (half-bit). Si pour un utilisateur classique, les antivirus et autres pare-feu sont fréquemment suffisants pour contrecarrer une attaque par un cheval de Troie, ils sont complètement impuissants devant un canal caché bruité.
Type de canal caché
Il existe deux types de canaux cachés :
- Les storage channels : le processus émetteur modifie une donnée spécifique, et le processus récepteur détecte et interprète la donnée modifiée pour recevoir indirectement des informations.
- Les timing channels : le processus émetteur module la durée d'une tâche effectuée par le processus récepteur, et le processus récepteur interprète cette variation comme une information.
Il n'est pas simple de distinguer un storage d'un timing channel. Pour J. Wray[1], la différence est que, dans le cas d'un timing channel, le processus récepteur a besoin d'avoir accès à une horloge indépendante qui lui sert à dater les événements. Les storage channels sont exploitables sans l'aide de cette référence temporelle externe.
La caractéristique propre d'un canal caché est la quantité d'informations qu'il peut envoyer. Pour qu'un Cheval de Troie soit opérationnel, il suffit qu'il puisse communiquer deux messages différents. Le type de canal binaire est nommé, par D. McCullough[2], un one-bit channel et autorise un cheval de Troie de transmettre n'importe quel message si le temps le lui permet. La présence d'un one-bit channel peut former une menace grave pour la confidentialité d'un dispositif.
Canal caché probabiliste
Un one-bit channel peut être bruité c'est-à-dire que le processus récepteur reçoit une valeur différente ou égale au signal émis par le Cheval de Troie. Dans ce cas, le signal provenant du Cheval de Troie est ambigu.
Tant que le signal reçu est différent de celui émis par le Cheval de Troie, alors le Cheval de Troie peut toujours transmettre n'importe quelle information en émettant de nouveau le message jusqu'à ce que le signal reçu soit semblable à celui émis. Si le bruit est total, il n'y a plus de covert channel. Sinon, le Cheval de Troie peut toujours envoyer un message plus ou moins bruité. Nous introduisons la notion de canal caché probabiliste.
Notion de half-bit channel
D. McCullough introduit la notion de half-bit channel qui est un canal qui sert à ne communiquer qu'un seul message. L'information transmise n'est que partielle, cependant, avec deux half-bit channels, nous pouvons construire un one-bit channel.
Un exemple illustre bien cette notion, il s'agit des inputs bloquants.
- Objectif
L'objectif du Cheval de Troie est de transférer le contenu du buffer BS (source secrète) dans le buffer non classifié BU.
- Hypothèses
- Nous supposons que les buffers BA et BB sont des buffers de taille finie. En effet, si le buffer était illimité, alors le problème des inputs bloquants ne se poserait pas.
- Les processus ne savent pas combien de temps ils sont bloqués ni même s'ils ont été bloqués.
- La seule chose que les processus savent : Si je ne suis pas bloqué alors, je sais que je ne suis pas bloqué. Il s'agit bien d'un half-bit channel.
- Construction
Le processus A sature le buffer BA de messages. Le processus B fait de même avec le buffer BB. Le buffer BC permet de synchroniser les processus A et B avec le Cheval de Troie.
- Fonctionnement
Quand les processus A et B sont bloqués (buffers respectifs BA et BB saturés), le Cheval de Troie lit un bit dans le buffer BS. Si le message lu est égal à 0, alors A est débloqué ; ce dernier écrit un 0 dans BU puis envoie un message dans BC pour informer le Cheval de Troie que le transfert est réalisé. Si le message lu est égal à 1, alors B est débloqué ; il rédige un 1 dans BU puis envoie un message dans BC pour informer le Cheval de Troie que le transfert est réalisé. Le Cheval de Troie a bien transférer le contenu de BS dans BU.
Références
Voir aussi
Recherche sur Amazone (livres) : |
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 07/04/2010.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.



Accueil
Recherche
Début page
Contact
Imprimer
Accessibilité