Firefox stockent toutes ses données dans un répertoire (Sur Linux, en général il s'agit de $HOME/.mozilla et sur Windows, c'est dans le répertoire C:\users\MUYSER\AppData\Roaming\Mozilla\Firefox\Profiles\). Dans ce répertoire, on peut trouver la liste des addons, la liste des recherches, des cookies ... et aussi les logins et mot de passe !
En clair, si une personne récupère le contenu de ce répertoire, elle va avoir toute votre vie en sa possession.
Dans cet article, nous allons montrer les informations que l'on peut récupérer très facilement à l'aide des fichiers contenus dans ce répertoire. Nous montrerons aussi des exemples de code avec Groovy. Vous verrez que ce n'est pas très compliqué.
Code source des exemples
L'ensemble des codes sources utilisés de cet article sont disponibles sur GitHub : https://github.com/drieu/GFirefoxData.Un fichier README contient les instructions nécessaires pour compiler et exécuter le projet.Data stockées dans Sqlite files
Comment utiliser Sqlite ?
Firefox utilise SQLITE pour stocker ses données. Si vous cherchez dans le répertoire, vous verrez des fichiers .sqlite ( ex : cookies.sqlite ). Vous pouvez en ligne de commande lire ses informations.
Voici un exemple montrant comment se connecter à la base cookies et les requêtes à effectuer pour lire ses données :
# cd $HOME/.mozilla/???
# sqlite3 cookies.sqlite
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>
Une fois connecté, il suffit d'exécuter des requêtes sql ou des commands sqlite.Voici quelques commandes indispensables :
Help
sqlite> .help
Liste de toutes les tables
sqlite> .tables
Liste des champs d'une table
sqlite> .schema moz_cookies
Select
sqlite> select * from moz_cookies
Quit
sqlite> .quit
Liste des fichiers sqlite contenant des informations
Maintenant que vous savez utiliser sqlite, vous pouvez faire de même avec les fichiers suivants :cookies.sqlite
addons.sqlite
formhistory.sqlite
content-prefs.sqlite
healthreport.sqlite
permissions.sqlite
places.sqlite
signons.sqlite
webappsstore.sqlite
Nous allons maintenant étudier comment récupérer ses informations avec Groovy.
Obtenir la liste de tous les cookies
Pour les codes qui vont suivre, nous utiliserons une librairie pour pouvoir exécuter des requêtes sqlite : sqlite-jdbc ( https://bitbucket.org/xerial/sqlite-jdbc ). Vous pouvez télécharger le jar : ICI
Il vous suffit ensuite de créer un fichier firefox.groovy et d'adapter le code pour qu'il pointe vers le fichier cookies.sqlite.Voici le code source de firefox.groovy :
import groovy.sql.Sql
def url = "jdbc:sqlite:/home/USER/tmp/.mozilla/firefox/fe31xbna.default/cookies.sqlite"
def sql = Sql.newInstance(url, "org.sqlite.JDBC")
sql.eachRow("select DISTINCT host from moz_cookies") {
println("host= ${it.host}")
}
Obtenir les données des formulaires
def sql = Sql.newInstance(url, "org.sqlite.JDBC")
sql.eachRow("select DISTINCT value from moz_formhistory") {
println("value= ${it.value}")
}
println("")
Obtenir la liste des addons
def sql = Sql.newInstance(url, "org.sqlite.JDBC")
sql.eachRow("select DISTINCT name from addon") {
println("name= ${it.name}")
}
println("")
Voir les password
Le Master password est stocké dans le fichier key3.db. Il y a aussi le fichier signons.sqlite qui contient les utilsateurs et mot de passes cryptés :sqlite>sqlite3 signons.sqlite
sqlite>select hostname,usernameField,passwordField,encryptedUsername,encryptedPassword from moz_logins limit 1;
Voir les mots de passes lorsqu'il n'y a pas de master password.
Il suffit d'aller dans Menu Outils -> Option -> Sécurité et vous pouvez voir les mots de passe sauvegardés.Donc si une personne récupère les fichiers contenant les mots de passes, il lui suffira de créer un nouveau profil firefox avec ses fichiers ( key3.db, signons.sqlite et cert8.db ).Voici comment faire :
1. Fermez firefox
2. Créez un nouveau profil firefox ( firefox --ProfileManager )
3. Fermez firefox
4. Aller dans le répertoire du profil firefox ( $HOME/.mozilla/...)
5. Remplacer les fichiers key3.db, signons.sqlite et cert8.db par les vôtres.
6. Redémarrez firefox
7. Allez dans Menu Outils -> Option -> Sécurité et voir les mots de passes enregistrés
et vous verrez tous les mots de passes !
Donc un bon conseil est de mettre un master password !
Cependant, cela reste utile seulement dans le cas où une personne utilise firefox pour naviguer sur internet.Cela lui évite de voir tous vos mots de passe en quelques clics.
Il y a cependant un moyen de récupérer les mots de passe même si il y a un master password !
Voir les mots de passes lorsqu'il y a un master password.
C'est possible en regardant le code source de firefox : http://www.infond.fr/2010/04/firefox-passwords-management-leaks.htmlUne seconde méthode, plus facile, est d'utiliser un outil de mozilla : http://securityxploded.com/firemaster.php
Voici un exemple d'utilisation :
FireMaster.exe -q -b -m 3 -l 10 -c "abcdetps123" "c:\my test\firefox"
Conclusion
Dans cet article, nous avons vus toutes les informations qui sont stockées par firefox sur votre disque dur.Est-ce que cela veut dire que firefox n'est pas sécurisé ? Non. Toutes les applications stockent leurs informations dans des fichiers. Par contre, il faut avoir conscience des points suivants :- Si un pirate arrive à copier les fichiers que l'on a vu, elle aura accès à toute votre vie.
- Les plugins firefox ont accès à un certains nombre d'informations.Avez-vous confiance en vos plugins ?
- Certaines données sont utilisées dans un but commerciale (par exemple les cookies )
Aucun commentaire:
Enregistrer un commentaire