Remplacer AdBlock par un proxy filtrantAprès avoir lu l’article sur les DNS menteurs sur le blog Geekfault et notamment avoir découvert l’excellente liste de site à bloquer de chez pgl.yoyo.org, j’ai décidé de mettre en place un proxy filtrant sur mon ordinateur. Cela a principalement 2 avantages :
Premier essai avec Polipo :Cela fait déjà un moment que j’entends parler de Polipo (et de son nom très poétique…) pour faire un proxy cache et filtrant sur un réseau avec un petit nombre de machines (voire éventuellement juste une machine) et ce de manière simple et rapide.
Alors après, je ne sais pas si ma version (1.0.4.1) pose problème ou autre… Privoxy :L’installation s’est faite sans problème (la version 3.0.16 était présente dans les dépôts de ma distribution, Archlinux). Pour ce qui est de la configuration du logiciel en lui même, tout ce passe dans le fichier /etc/privoxy/config. Là où ça commence à devenir intéressant, c’est quand on commence à aller regarder le fichier /etc/privoxy/user.action pour pouvoir modifier les règles de filtrage.
Pour les règles, j’ai ajouté quelques règles personnelles pour autoriser/bloquer certains sites :
On notera la première règle qui masque le referer sur tous les sites.
Ensuite, on ajoute ça au fichier user.action :
Et puis voilà ! A vous le surf libéré des publicités et ce quelque soit votre navigateur ! Fichiers de configuration de Privoxy Références :
(j’ai noté que sur la plupart des articles concernant les proxies filtrant, un débat s’engageait sur le fait que bloquer la pub sur les sites de certains projets prive le développeur du peu de revenu qu’il avait. |
Les dangers du WiFi public
Les bornes WiFi publiques (celles ou vous ne rentrez pas de clé WEP ou WPA lors de la connexion) peuvent vraiment dépanner, mais présentent aussi un risque non négligeable. En effet, les données que vous échangez avec la borne se baladent dans l’air sans être cryptées, et peuvent très facilement être interceptées. Dans cet article, je vais présenter rapidement la démarche à suivre pour snifer une connexion, et se connecter à la place d’une victime sur son compte facebook.
Pour snifer une connexion WiFi, nous allons avoir besoin des outils suivants : airmon-ng qui est disponible dans la suite aircrack-ng, avec une carte WiFi compatible avec le mode monitor, et de wireshark
Il faut commencer par passer sa carte WiFi en mode monitor avec la commande suivante (à adapter avec le nom de votre carte WiFi)
# airmon-ng start wlan0
Si tout se passe bien, airmon passe alors votre carte WiFi en mode monitor, en disant quelque chose de semblable à ça : « (monitor mode enabled on mon0) ». Il faut alors prendre note du nouveau nom de l’interface, dans mon cas mon0.
Il faut ensuite lancer wireshark, et lancer la capture sur l’interface en mode monitor, mon0 dans mon cas. Wireshark va alors lister tout ce qui passe dans l’air.
Pour les exemples, voilà quelques cas fait sur mon ordinateur en local, mais ceci ne change rien par rapport aux paquets issus d’un WiFi public.


Sur ces screenshots, nous pouvons voir ce qui se passe lors d’une connexion à un serveur FTP, et une connexion à un site quelconque. Et le nom d’utilisateur ainsi que son mot de passe ( « test » sur les images) apparaissent en clair, pas très sécurisé tout ça … Et c’est le cas avec TOUTES les connexions à des site internet n’utilisant pas le ssl (adresse en https://)
Poussons le vice un peu plus loin, certains sites, comme facebook, proposent de rester connecté pour les prochaines visites, on ne verra donc pas le mot de passe. Nous allons donc récupérer le cookie, et le mettre dans firefox pour avoir accès à la page facebook de notre victime, et pouvoir faire ce que l’on veux sur sa page. (testé ce matin pendant un cours, et ça marche ^^)
Pour chercher dans la grosse quantité d’information dans wireshark, il est possible d’utiliser le filtre « http contains facebook ». Il faut alors chercher une page qui contient un cookie, comme la page d’accueil.

Sur la ligne cookie, faire clique droit, copier.

Le cookie de la victime est alors récupéré, il n’y a plus qu’à le mettre dans notre navigateur préféré, comme Firefox (aussi compatible avec Epiphany). Firefox gère les cookies dans des fichiers sqlite, j’ai donc écrit rapidement un petit script pour créer un fichier de cookie et y insère automatiquement les données extraites de wireshark dedans. Le script est téléchargeable ici, et nécessite d’avoir le programme sqlite3.
Il faut l’exécuter en lui donnant en paramètre le domaine du site auquel appartient le cookie, il faut coller le cookie issu de wireshark dans un fichier nommé « cookies.txt » dans le même répertoire que celui du script, et le script créé un fichier « cookies.sqlite ». Pour notre cas :
$ ./dump2sqliteCookie.sh .facebook.com
Il faut ensuite déplacer le cookie généré à la place de celui de firefox dans le dossier « ~/.mozilla/firefox/********.default/ ». Puis relancer firefox, et aller sur la page http://www.facebook.com et vous devriez arriver sur le mur facebook de votre victime avec le possibilité de faire n’importe quoi.
Comme vous pouvez le voir, cette manipulation reste relativement simple, et ne nécessite aucun piratage de machines. De plus, là j’ai présenté une version « artisanale », il doit très certainement y avoir des outils qui font tout ça automatiquement. Il est donc préférable de réfléchir à 2 fois avant d’utiliser un réseau WiFi public, et de ne pas échanger de données sensibles dessus.
Il faut toute fois noter que sur les sites internet en https, il n’est pas possible de récupérer les données de cette manière. Pour protéger la totalité du trafic, on peut aussi envisager de mettre en place un tunnel ssh qui permet de crypter la totalité du trafic entre votre machine, et celle qui héberge le serveur ssh, donc sur toute la zone critique entre vous et la borne WiFi.



chaoswizard
ezaeza