Attaques de surveillance de flux
De Freenet Doc.
On appelle attaque de surveillance de flux, une méthode utilisée par un espion pour casser l'anonymat d'un utilisateur de Freenet en surveillant les échanges de clés, le HTL (Hop To Live, saut de vie, similaire au Time To Live, temps de vie), et les informations des noeuds (localisation, adresses IP...).
En effet, si un utilisateur insère une donnée déjà insérée par le passé, il est facile de faire la corrélation entre l'utilisateur et les clés qu'il réinsère. Par exemple, si vous insérez une distribution Linux dans le réseau, et que quelqu'un vous demande de la réinsérer quelques jours plus tard, il sera plus facile de remonter jusqu'à vous.
Les programmes les plus visés par cette attaque sont FreeMulET, et l'option d'insertion à la demande de Frost. Mais toute réinsertion est visée. Plus le nombre de clés réinsérées (CHK, KSK, SSK, USK) est petit, moins le risque est grand.
Dans l'exemple de FreeMulET, voici comment un attaquant peut procéder :
Imaginons que je veuille connaître l'adresse IP du noeud qui propose Ubuntu en un iso de 2 Go. Je sais que le propriétaire de ce fichier va mettre plusieurs heures à insérer la distribution, voire plusieurs jours. Je connais la clé du fichier, car FreeMulET me l'affiche. Je fais une requête sur le fichier, et je surveille à l'aide d'un programme spécial, par lequel de mes noeuds connectés directement, les données arrivent avec un HTL le plus élevé. Après quelques minutes, je tente de me connecter à d'autres noeuds et je continue ainsi jusqu'à trouver la source. Il est impossible de déterminer avec certitude que la source est bien le propriétaire du fichier sans surveiller la connexion du propriétaire du noeud, et casser le cryptage Freenet de la connexion. Ceci pour plusieurs raisons : il est possible que le noeud possède des liaisons Darknet, alors le véritable propriétaire peut être un de ses amis. De plus, le HTL décrémente de 10 à 9 avec une chance sur 10 (et de 1 à 0 avec une chance sur 4).
Pour gagner en temps et en efficacité, l'attaquant peut innonder le réseau de noeuds dont il a le contrôle. S'il a la probabilité de contrôler les 20 noeuds connectés à une personne qu'il ne connait pas, il a plus de chance de connaître ce qu'il se passe sur le réseau, voire même de faire tomber tout anonymat sur l'Opennet pur. Mais les coûts sont exponentiels au nombre de noeuds qu'il ne maîtrise pas, surtout si plusieurs nations ou plusieurs sociétés liberticides se mettent à pratiquer la chose : on entrerait dans une spirale infernale qui ne ferait qu'améliorer la persistance des données sur le réseau, sans vraiment porter atteinte à sa sécurité.
Extrait d'une conversation en anglais avec Toad :
(Aidez à la traduction)
Mobile attacker tracing the source of a stream of content. If an anonymous identity publishes data that can be identified (e.g. reinserting known content, posting to FMS boards, posting to a known freesite), it may be possible to gradually approach his location. Reinsertion of known content makes this much easier, because of CHKs; because we always insert the top block (the freesite USK e.g.) last, if the content isn't guessable in advance it is very difficult to pull this off against large inserts, because the attacker can only identify the stream after the top block (or the FMS post referring to the new file) was inserted; if the content *is* guessable, the attacker can move towards the target continually over the course of the insert.
> So, Freemulet or Frost "automatic insertion" are dangerous? We know the key before the upload of the file.
Yes IMHO.
Source :
http://archives.freenetproject.org/message/20090105.162943.87da88b1.en.html
http://archives.freenetproject.org/message/20090106.235648.286192e6.en.html
