Wikileaks - Comment assurer son anonymat?
Hérbergement des données
Introduction
Il y a un an, Wikileaks disposait deux hébergeurs Bahnof, un hébergeur suédois, et Amazon.
Wikileaks, s'est rendu compte que lorsqu'il publiait des documents, il subissait de nombreuses attaques DDoS (déni de service). C'est pour cela qu'il a choisi d'être hébergé par Amazon, qui propose un service d'hébergement "cloud". Le cloud computing a la particularité de bien résister aux attaques DDoS (déni de service) grâce aux nombreux serveurs. Mais Amazon a décidé de mettre fin à leur partenariat en raison de pression politique et parce que le site violait ses conditions de service en publiant des contenus dont il ne détient pas les droits.
Wikileaks s'est donc retrouvé avec un seul hébergeur et a été obligé d'en trouver d'autres pour pouvoir héberger leurs données.
Suisse
Wikileaks possède des serveurs en suisse parce que c'est un pays politiquement neutre et elle protège aussi les données et les personnes.
France
En France, OVH a proposé à Wikileaks d'héberger leurs données. OVH a été critiqué pour cette action mais cette société a répondu en précisant qu'elle n'était que prestataire technique et n'était ni pour ni contre Wikileaks.
Suède
Wikileaks dispose de serveurs, hébergé par Bahnof. Cet hébergeur, quasiment inconnu en France, est notamment partenaire
de The Pirate Bay. Les serveurs sont installés dans un abri anti-atomique ce qui garantit une grande sécurité contre les
intrusions physiques. L’abri se situe sous une trentaine de mètres de roche dans le centre de Stockholm.
La cavité avait été creusée en 1943 pour se protéger des bombardements et aménagée pendant
la guerre froide.

Site miroir
Wikileaks étant toujours sensible aux attaques DDoS malgré leurs hébergeurs. Wikileaks a lancé un appel aux volontaires, afin d'héberger sur leurs serveurs personnels une copie de Wikileaks. Plus il y a de sites miroirs, plus il est difficile de supprimer un site web car il en existe des dizaines, voir des centaines de copies. Un site miroir est une copie exacte d'un autre site web. La création d’un site miroir est assez simple. Il faut obligatoirement avoir un serveur, un serveur DNS (qui peut être sur la même machine) et un nom de domaine. Deux méthodes sont ensuite possibles pour permettre à Wikileaks ou à un des sites miroirs de vous envoyer les données:
FTP
Pour créer un site miroir grâce à un FTP, il faut :
- créer un dossier /Wikileaks dans votre espace web
- créer un sous-domaine (par exemple Wikileaks.mondomaine.fr) qui pointe sur ce dossier
- créer un compte FTP (par exemple Wikileaks) associé à un mot de passe qui pointe sur le dossier /Wikileaks
- remplisser le formulaire trouvé http://46.59.1.2/mass-mirror.html ou
http://213.251.145.96/mass-mirror.html
(Ces formulaires ne sont plus actifs au moment de la rédaction de ce site web)
Et l'un des sites Wikileaks se chargera de vous envoyer les données.
SSH
Cette partie est inspiré du site http://geekfault.org/2010/12/05/devenez-miroir-de-wikileaks-sans-risque/
En ssh, pour éviter que les personnes qui se connectent sur votre serveur exécute n'importe quelles commmandes, il faut créer un utilisateur et bloquer toutes les commandes à part "Rsync".
Sécuriser SSHA la fin du fichier /etc/ssh/sshd_config, on rajoute les lignes ci-dessous elles permettent rediriger l'utilisateur dans son home.
Match user Wikileaks ChrootDirectory /home/Wikileaks X11Forwarding no AllowTcpForwarding no |
Créer un utilisateur
Il faut créer un répertoire et l'associer au nouvel utilisateur:
# mkdir /home/Wikileaks # useradd -d /home/Wikileaks -s /bin/bash Wikileaks # chown Wikileaks:Wikileaks /home/Wikileaks |
Puis autoriser la connexion des administrateurs de Wikileaks:
# su - Wikileaks $ mkdir ~/.ssh $ wget http://Wikileaks.fr/id_rsa.pub -O ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys |
Créer l’environnement chroot
Pour créer un environnement CHROOT, il faut que la racine appartienne à root.
# chown root:root /home/Wikileaks # mkdir /home/Wikileaks/bin # mkdir /home/Wikileaks/lib |
Ensuite nous copions les binaires nécessaires pour faire un Rsync :
# cp `which bash` /home/Wikileaks/bin/bash # cp `which rsync` /home/Wikileaks/bin/rsync |
Pour que les binaires fonctionnent, il faut copier les librairies. La commande ldd permet de les lister, ensuite il faut les copier.
# ldd `which bash` `which rsync` # cp /lib/libncurses.so.5 /home/Wikileaks/lib/ |
Un simple shell
Si vous trouvez que l'utilisateur peut exécuter beaucoup de commandes grâce bash.
Il suffit de créer un shell qui ne permette que de lancer la commande Rsync.
Il faut créer un fichier /home/Wikileaks/bin/simpleshell.
#!/bin/bash if (( $# == 0 )); then printf "%s\n" "shell access is disabled. sorry." exit 1 elif (( $# == 2 )) && [[ $1 == "-c" && $2 == "rsync --server"* ]]; then exec $2 fi |
Ensuite il faut rendre exécutable ce shell et le rendre par défaut pour notre utilisateur:
# chmod +x /home/Wikileaks/bin/simpleshell # ln -s /home/Wikileaks/bin/simpleshell /bin/simpleshell # usermod -s /bin/simpleshell Wikileaks |
Maintenant que votre accès ssh est correctement configuré, vous pouvez donner l'adresse de votre serveur, le login et le mot de passe. Wikileaks se chargera de vous envoyer les données.