Firesheep est une extension Firefox qui surveille le réseau, et récupère les sessions selon des motifs pré-définis et modulaires (qu'on peut ajouter). Son installation sous MacOSX requiert une petite astuce pour ceux qui aurait chiffré leur répertoire personnel avec FileVault. Cet article explique comment corriger le problème : "--fix-permissions" dans l'extension FireSheep pour Firefox de CodeButler.





0x01. TELECHARGEMENT



L'extension FireSheep permet de sniffer le réseau et de récupérer les sessions en reconstruisant le cookie. Le programme firesheep-backend permet de sniffer selon un motif.

L'extension est disponible ici :
http://github.com/codebutler/firesheep/downloads/





0x02. CORRECTION



Sous Firefox 3.6.x sous MacOSX l'extension demande à corriger les permissions lorsque FileVault est activé. Une des solutions est de lancer Firefox en tant que root :


 
sudo /Applications/Firefox.app/Contents/MacOS/firefox-bin
 


L'autre solution est de faire en sorte à ce que firesheep-backend uniquement soit lancé depuis un système de fichier qui n'est pas crypté. Il suffit donc simplement de copier le dossier de l'extension dans le dossiers extensions de l'application.

Lancer le terminal et exécuter :


 
mv /Users/$USER/Library/Application?Support/Firefox/Profiles/*.default/extensions/firesheep@codebutler.com /
/Applications/Firefox.app/Contents/MacOS/extensions/
 


Sinon dans le Finder il faut :


Depuis son dossier personnel : 
Finder > Bibliothèque > Application Support > Firefox > Profiles > *.default > extensions

Déplacer le dossier...

firesheep@codebutler.com

...ici : 

Depuis le Finder > menu Aller > "Aller au dossier..."

Et écrire : 
/Applications/Firefox.app/Contents/MacOS/extensions

En suite glisser le dossier firesheep@codebutler.com





0x03. PROTECTION



Le programme surveille les sessions, c'est à dire dire le fichier qui permet de confirmer qu'une personne est authentifiée sur un site Internet, par exemple Facebook.

Il faut donc installer un plugin Firefox qui permet de forcer l'utilisation de la sécurité SSL (protocole HTTPS) dès qu'il est possible.

Voici le lien vers l'extension qui va bien :

https://addons.mozilla.org/en-US/firefox/addon/12714/

En plus compliqué, un tunnel SSH ou un VPN est également une solution.

Ou encore plus simplement, ou pas, utiliser sa connexion 3G de votre téléphone.


Par mesures de sécurité :
- ne jamais se connecter depuis un ordinateur qui n'est pas le sien
- ne jamais se connecter depuis un réseau publique, à mois d'être dans une configuration qui le permet (tunnel, ssl...)


Voici une solution pour créer un tunnel SSH :


 
# Du côté du serveur: 
## Installer le serveur SSH : 
## --------------------------
### Sous Debian : 
apt-get install openssh
### Sous Redhat : 
yum install sshd
### Sous FreeBSD : 
installé par défaut
 
## Installer un proxy (tinyproxy, uproxy, squid, ...) :
## ----------------------------------------------------
### Sous Debian : 
apt-get install squid 
# apt-get install gadmin-tools
### Sous Redhat : 
yum install squid
### Sous FreeBSD
cd /usr/ports/*/squid && make install clean
 
 
## Configurer le proxy pour qu il soit transparent (cas de SQuid)
## --------------------------------------------------------------
### Mettre les ACL en "allowall" - tout accès autorisés
 
 
 
# Du côté du client :
## En ligne de commande :
ssh -f -v -T -N -p 443 -L 10080:127.0.0.1:3128 sshusr@80.80.80.80
 
# ssh    : commande cliente SSH
# -f     : se lance en tâche de fond (permet de quitter le terminal
# -v     : mode bavard, explique ce qu il fait
# -T     : désactive l allocation TTY, ne cherche pas à s attacher à un terminal
# -N     : n exécute rien (par défaut : $SHELL)
# -p 443 : numéro de port auquel se connecter
# -L 10080:127.0.0.1:3128  : service auquel se rattacher
# sshusr@80.80.80.80       : nom d utilisateur du serveur et son adresse IP
 
 

Il faut en plus configurer le routeur, la box pour que le port SSH soit transmis ou traduis.
Le schéma mis en place est donc celui ci :


CLIENT =========== Internet =========> SERVEUR:SSH 
SERVEUR:SSH  ----- local ------------> SERVEUR:SQUID
SERVEUR:SQUID <--- HTTP/HTTPS/... ---> INTERNET


   =>   Écrit par : Nicolas, le 10 novembre 2010


 
Mots clés :  
  network 
  
  security 
  
  macos 
    >   Articles connexes :

GitVuln



HTTP Server, tell me who you are ?


Discuter avec un serveur web *apparement* muet ? Voici comment faire...

Durcissement de Windows



Comment gagner du temps sur Internet



/tmp et /var/log en noexec sur macOS



5369694