"Torpark" et l'utilisation des réseaux collaboratifs
Date : 01 Décembre 2006
Aujourd'hui, les réseaux collaboratifs commencent à prendre une part de plus en plus prépondérante dans les systèmes de communications modernes au niveau mondial (Skype, ...) ou sur un niveau plus localisé (réseaux Wifi "Adhoc").
Ce type de réseau s'appuie généralement sur la mise en commun au sein d'une communauté plus ou moins bien définie de diverses ressources (espace disque, CPU, bande passante) afin d'offrir des communications et des services additionnels de qualité pour un moindre coût.
Initialement conçu pour répondre à des besoins de robustesse de l'infrastructure ou de la solution finale (notion de redondance), ce concept a rapidement trouvé une autre finalité très intéressante au fil des années en s'orientant vers des solutions capables de contourner les limites imposées par les contraintes de sécurité.
A travers cet article, nous allons vous présenter un cas concret de ce type de réseau et de son utilisation à travers l'outil de navigation web "Torpark" (http://www.torrify.com/).
"Torpark"
"Torpark" est un logiciel qui s'appuie sur le
navigateur web Firefox et qui permet de surfer anonymement sur Internet en
passant par une suite de nœuds (issus d'un réseau "TOR" - Cf.
ci-dessous) avant d'arriver au serveur web final. Ainsi c'est le dernier nœud
de la chaîne qui est vu, côté serveur web, comme étant l'initiateur de
Outre ce comportement vis-à-vis du serveur web distant,
"Torpak" adopte aussi un comportement spécifique pour l'initialisation de la connexion
au niveau du client. A ce niveau, lorsque l'utilisateur
sélectionne une URL (HTTP ou HTTPS), le client "Torpark" se connecte,
dans un premier temps, vers une des adresses IP choisie de manière aléatoire
(parmi l'ensemble des nœuds du réseau "TOR" disponibles) et initie
une session TLS ("Transport Layer Security" – port 443) avec cette
machine distante. Cette connexion contient de manière chiffrée
L'utilisateur ne se connecte donc pas directement au serveur
web final; mais surtout l'URL et l'adresse IP du serveur web recherché ne
peuvent pas être identifiées à la sortie du réseau de l'entreprise
(généralement dans la première connexion de l'outil vers l'extérieur). Ces
données sont encapsulées dans une première connexion "anodine" que
les relais web laissent très probablement passer.
Cette pratique permet ainsi de contourner les listes noires
("blacklists") positionnées au niveau des relais HTTP(S) de
l'entreprise.
Il est à noter que cette solution peut engendrer des
problématiques de confidentialité/intégrité des communications dû au transit
des données via des systèmes tiers (mais ces problématiques peuvent s'avérer
moins "critiques" pour un utilisateur décidant de contourner la
politique de sécurité d'un SI).
Le côté technique de "Torpak" :
"Torpark" s'appuie sur le réseau TOR ("The
Onion Router") collaboratif (http://tor.eff.org)
pour rendre la navigation anonyme.
"Tor, pour The Onion Router,
est un réseau anonyme et décentralisé permettant de rendre anonymes les
connexions Internet." (http://fr.wikipedia.org/wiki/Tor_%28r%C3%A9seau%29)
Un exemple d'architecture du réseau TOR est décrit à
l'adresse suivante : http://tor.eff.org/overview.html.fr
En fait, il existe sur Internet des serveurs
("routeurs") TOR qui sont mis à la disposition de
Le logiciel de navigation web "Torpark", à
proprement parler, est une sur-couche pour le navigateur Firefox. Il utilise le
client du réseau TOR afin d'établir ses communications à travers le réseau TOR.
Pour cela, il se connecte dans un premier temps à un serveur
contenant l'annuaire des PC du réseau TOR. Une fois que l'annuaire a fourni
l'adresse d'un nœud du réseau, le client se connecte à ce serveur, qui se
connecte lui-même à un autre serveur TOR, et ainsi de suite pour permettre
d'anonymiser la connexion finale.
Les communications au travers du réseau TOR sont
généralement chiffrées. Mais récemment des personnes ont découvert un moyen de
"casser" ce chiffrement (http://www.packetstormsecurity.org/0610-advisories/Practical_Onion_Hacking.pdf).
Comment détecter l'utilisation de "Torpark"
dans un SI :
Il existe une liste des principaux serveurs TOR sur le site
suivant : http://moria.seul.org:9031/
L'IP du serveur/routeur TOR est située sur les lignes de type
:
router moria1 18.244.0.188 9001 0 9031
Nota : Les arguments suivant l'adresse IP
"18.244.0.188" sont les ports sur lesquels cette adresse peut être
contactée.
Il existe également un outil écrit en Python qui permet de
récupérer cette liste (http://tor.eff.org/faq-abuse.html
- section "I want to ban the Tor network from my service").
Sinon, contrairement à Skype, les éditeurs de
"Torpark" et du réseau TOR proposent les sources de leur logiciel. On
peut donc trouver dans les sources de TOR (fichier "config.c") les
adresses des serveurs d'annuaire utilisés par le client TOR afin de mettre à
jour la liste des serveurs TOR disponibles sur Internet.
Cette liste apparaît en effet "en clair" dans le
source :
const
char *dirservers[] = {
"FFCB 46DB 1339 DA84
"moria2 v1 18.244.0.114:80 "
"719B E45D E224 B607 C537 07D0 E214 3E2D 423E 74CF",
"tor26 v1 86.59.21.38:80 "
"847B 1F85 0344 D787 6491 A548 92F9 0493 4E4E B85D",
"lefkada 140.247.60.64:80 "
38D4 F5FC F7B1 0232 28B8 95EA 56ED E7D5 CCDC AF32",
"dizum 194.109.206.212:80 "
"7EA6 EAD6 FD83
NULL
Conclusion
Les réseaux collaboratifs pourraient devenir au fil du temps
une source de problèmes pour la sécurité des systèmes d'information dans la
mesure où de nombreux outils web sont en train de se développer autour de ce
concept.
Bien que le code des principaux outils existants soit pour
l'instant accessible, et permet d'identifier les traces que peut laisser leur
utilisation sur un réseau, il est néanmoins nécessaire de surveiller les
évolutions du code de ces outils et de l'environnement TOR ainsi que l'URL http://moria.seul.org:9031/ afin de
détecter principalement des modifications sur les adresses IP contactées.