Chapitre 2. UTILISATION DE PHP
POUR NOTRE APPLICATION
2.1. INTRODUCTION
Comme le chapitre précèdent l'a indiqué
et balayé le chemin, c'est maintenant que nous allons faire nos premiers
pas en PHP. Nous avons créé un dossier dans lequel tout nos
fichiers seront logés.
Mais pour se connecter nous avons
tenu compte des attaques qui arrivent souvent lors de la transmission de
message et de mot de passe.
1. Attaque « Man in the
middle »
L'attaque « Man in the middle » consiste
pour le pirate à se brancher sur la ligne entre nous et le serveur,
à écouter ce qui transite, puis, au bon moment, à essayer
de prendre notre place.
Dans l'exemple suivant, blaise est le pseudonyme d'un
administrateur se connectant au site, pascal est l'identifiant de session.
Schématisation d'une attaque Man in the middle
Cette technique est très facile à mettre en
place dans les entreprises ou les universités, car il y a souvent une
seule passerelle entre internet et le reste du réseau. Cela signifie que
toute donnée envoyée sur internet par un ordinateur du
réseau sera susceptible d'être « entendue ».
Le pire scénario se produit lorsque le matériel est un peu vieux
ou que l'installation a été réalisée à
moindre coût et que les boîtiers permettant la mise en
réseau sont des hubs et non des switchs.
Le hub, lorsqu'il reçoit un message provenant d'un
ordinateur, se contente de l'amplifier et de l'envoyer à tout le monde,
alors que le switch n'envoie qu'à la bonne machine. Ce qui veut dire
qu'avec un logiciel comme Ethereal sur un réseau constitué de
hubs (il y en a encore beaucoup), un hacker pourrait prendre la place de
n'importe quel membre sur n'importe quel site ouvert depuis le réseau.
1.1. Les vols
Nous avons vu comment il est possible pour un hacker
d'écouter le réseau. Mais que peut-il voler exactement ?
1.2. Session
Pour voler une session, il suffit de récupérer
l'identifiant de session. Cet identifiant est unique et propre à une et
une seule session à un instant donné. L'identifiant de session en
PHP peut être transmit par deux moyens, cookie ou url.
Le passage par URL est une faille de sécurité.
Imaginons ce cas de figure : nous naviguons sur un site qui transmet
l'identifiant de session par URL, par exemple un forum comme phpBB. Un visiteur
(mal intentionné) que nous nommerons Mr X, poste un message avec un lien
sur son site perso, avec en général beaucoup de pipo pour attirer
les gens. Sur ce site, Mr X a écrit un script qui récupère
la variable globale $_SERVER['HTTP_REFERER'] qui contient la dernière
adresse visitée, c'est-à-dire celle du forum avec l'identifiant
de session dedans. Le script de Mr X va repérer cet identifiant et Mr X
pourra alors l'utiliser pour voler la session.
Que ce soit par URL ou par cookie, l'attaque du "Man in the
middle" permet de récupérer l'identifiant de session.
|