CookieViz téléchargement, installation et utilisation

Implémentation des graphes en python par l'exemple : Le parcours en largeur python d'un graphe, algorithme utilisé pour parcourir les graphes.

CookieViz est outil de visualisation qui permet de mesurer l’impact des cookies lors de votre propre navigation.

https://linc.cnil.fr/fr/cookieviz-une-dataviz-en-temps-reel-du-tracking-de-votre-navigation

Introduction – Installer et utiliser CookieViz

La page est git est https://github.com/LINCnil/CookieViz

J’installe MAMP : https://www.mamp.info/en/downloads/

MAMP est une compilation de logiciels gratuits open source permettant de gérer des sites Web dynamiques sur des ordinateurs exécutant macOS ou Windows : Apache, le serveur Web; MySQL, le système de gestion de base de données; et PHP, Perl ou Python, langages de programmation utilisés pour le développement Web.

Installer Homebrew : Homebrew est un système de gestion logiciel gratuit open source qui simplifie l’installation de logiciels sur le système d’exploitation macOS d’Apple et Linux.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Le script demande de passer en mode superutilisateur via la commande sudo et demande de taper le mot de passe à plusieurs reprise.

A la fin de l’installation on obtient ==> Installation successful!

J’installe mitmdump qui est dans le paquet mitmproxy

brew install mitmproxy

Valider l’installation en tappant mitmdump –version

mitmdump --version
 Mitmproxy: 4.0.4
 Python:    3.7.5
 OpenSSL:   OpenSSL 1.1.1d  10 Sep 2019
 Platform:  Darwin-17.7.0-x86_64-i386-64bit

Démarrage de CookieViz

Je démarre MAMP et non MAMP PRO qui est payant

J’obtiens la page d’accueil de mon serveur Web Apache qui est démarré sur le port 8888 par défaut je peut l’atteindre en tapant localhost:8888 comme url dans mon navigateur.

Si je vais dans le menu MAMP > Preferences je peux modifier les ports utilisés.

j’ai téléchargé depuis le source github de cookieViz https://github.com/LINCnil/CookieViz via le lien Clone and download. Il est aussi possible de démarrer un terminal et de se placer à la racine du serveur WEB Apache.

Par défaut la racine est dans /Applications/MAMP/htdocs/ mais vous pouvez la modifier via l’interface graphique MAMP

cd /Applications/MAMP/htdocs/
git clone https://github.com/LINCnil/CookieViz.git

Démarrer CookieViz

Par défaut l’utilisateur par défaut de la base de donnée est “root” et le mot de passe “root”
Pour changer le mot de passe par defaut :
https://documentation.mamp.info/en/MAMP-Mac/How-Tos/Change-the-password-of-the-MySQL-root-user/
/Applications/MAMP/Library/bin/mysqladmin -u root -p password

Ajout d’un utilisateur phpmyadmin > mysql > user ‘ajouter un utilisateur’ onglet Comptes utilisateurs

J’ai ajouté un user ‘cookvi’ avec mot de passe ‘cookvi’

J’ai édité le fichier settings.inc via un editeur de texte ou la commande nano

/**
 * The database server used by CookieViz.
 * Default is 'localhost' and should be fine for most cases.
 * If 'localhost' doesn't work and the database runs locally, try '127.0.0.1'.
 */
define('DB_SERVER', '127.0.0.1:8889');

...

define('DB_USER', 'cookvi');

/**
 * The password of the CookieViz database user.
 */
define('DB_PASSWD', 'cookvi');

J’ai ensuite édité le fichier nano monitor_mitmdump.php du répertoire /soft

cd /Applications/MAMP/htdocs/CookieViz/soft/
nano monitor_mitmdump.php 

je suis allé dans http://localhost:8888/phpmyadmin/ et j’ai créé une nouvelle base CookieViz

J’ai cliqué sur la base de donnée créée et j’ai utilisé la fonction “importer” et j’ai chargé le fichier /Applications/MAMP/htdocs/CookieViz/cookieviz/sql/url_referer-1.sql qui contient la structure de table

// Edit the four values below
$PROXY_HOST = “localhost”; // Proxy server address
$PROXY_PORT = “8082”; // Proxy server port
$PROXY_USER = “”; // Username
$PROXY_PASS = “”; // Password

CookieViz – Modification pour compatibilité php5 et php7

CookieViz est compatible php5 et non phpt7 il faut prévoir des changement dans le code :

Remplacement de :

$link = mysql_connect('localhost', '', '') par $link = mysqli_connect('127.0.0.1:8889', 'cookvi', 'cookvi','CookieViz') 
mysql_select_db('CookieViz') par mysqli_select_db($link,'CookieViz')
mysql_error() par mysqli_connect_error()
mysql_query($query) par mysqli_query($link, $query)
mysql_fetch_assoc($result) par mysqli_fetch_assoc($result) 
mysql_close($link) par mysqli_close($link)  

Démarrer un serveur mitmdump sur le port 8082 :
mitmdump -p 8082 -w mitmdump.log

Je lance maintenant le script php /Applications/MAMP/htdocs/CookieViz/soft/monitor_mitmdump.php

Au niveau de firefox je suis allé dans les préférence réseau dans les paramètre généraux et j’ai configuré le proxy

CookieViz installer et utiliser

On constate qu’on a des connexions qui passent par le proxy
Proxy server listening at http://*:8081
127.0.0.1:49915: clientconnect
127.0.0.1:49915: CONNECT www.youtube.com:443
<< Cannot establish TLS with client (sni: www.youtube.com): TlsException(“SSL handshake error: Error([(‘SSL routines’, ‘ssl3_read_bytes’, ‘sslv3 alert bad certificate’)])”)
127.0.0.1:49917: clientconnect
127.0.0.1:49915: clientdisconnect
127.0.0.1:49917: GET http://detectportal.firefox.com/success.txt
<< 200 OK 8b
127.0.0.1:49919: clientconnect
127.0.0.1:49920: clientconnect
127.0.0.1:49919: GET http://detectportal.firefox.com/success.txt?ipv4
<< 200 OK 8b
127.0.0.1:49920: GET http://detectportal.firefox.com/success.txt?ipv6
<< 200 OK 8b

Les résultats sont alors visualisables sur le serveur web http://localhost:8888/CookieViz/cookieviz/

Liens externes :

https://fr.wikipedia.org/wiki/Cookie_(informatique)

https://fr.wikipedia.org/wiki/Serveur_web

https://www.noodo-wifi.com/faq/cookie-informatique/

Liens internes :

https://128mots.com/index.php/category/sciences-numeriques-et-technologie/

https://128mots.com/index.php/category/nsi/

https://128mots.com/index.php/category/non-classe/