4.5 KiB
title | date | tags | categories | |||||
---|---|---|---|---|---|---|---|---|
Sécurité des réseaux : L'attaque | 2022-09-13 |
|
|
Comment
C'est la question centrale posées par l'attaquant: comment pénétrer le réseau cible. Pour cela il va passer par plusieurs étapes:
- recherche d'information sur la cible: organisation du réseau, versions des systèmes d'exploitations des équipements, version des logiciels etc.
- recherche de vulnérabilités en fonction des éléments obtenus précédemment
- exploitation de ces vulnérabilités
- installation d'une porte dérobée
L'attaquant doit alors rester le plus discret possible
Le défenseur doit lui détecter la collecter des informations au plus vite afin de se prémunir.
Les buts recherchés
Les buts d'une attaque sont multiples:
-
le déni de service: le rendre inaccessible en le noyant de requête
-
le déni service distribué: il s'agit ici aussi de rendre un service inaccessible mais avec une multitude d'attaquant: les botnets. Il sont composé de centaines à quelques millions d'équipements. L'exemple le plus parlant est Mirai
-
l'interception: C'est une classe d'attaque par l'homme du milieu (Man in the Middle).
Dans l'exemple ci-dessus, une attaquant intercepte le trafic entre A et B et p renant soin de le réacheminer après l'avoir enregistré (pour l'analyser à posteriori).
-
la corruption: C'est une autre attaque de type MitM. Il s\agit de corrompre une communication. Le cas le plus courant et le cache poisoning que se soit sur les caches DNS ou les caches ARP (les deux protocoles les plus attaqués)
-
l'usurpation avec les attaques par rejeu.
Recherche d'informations
Il est possible de deviner tout un tas d'informations en observant le trafic réseau et utilisant des techniques de fingerprinting. En observant notamment les numéro de séquence d'un échange TCP, il est possible d'en déduire le système d'exploitation. L'outil de base pour le fingerprinting est nmap, dans le cas du système d'exploitation, il utilise xprobe.
Balayages de ports
Nmap permet aussi le balayage les ports d'un hôte (ou d'un groupe d'hôte). Il utilise pour cela plusieurs technique.
- la plus connue est le SYN SCAN: nmap envoie un paquet TCP
SYN
à la cible, celle-ci répond avec les drapeauxSYN/ACK
de positionnés si le port est ouvert etRST/ACK
s'il est fermé. Il est possible de trasformer cette technique en envoyant unACK
après leSYN/ACK
de la réponse de la victime afin de simuler une connexion valide et ce afin d'être plus discret; - le FIN scan: nmap envoie un paquet TCP de fin de connexion (drapeau
FIN
positionné à 1). En cas de port ouvert la victime ne réponds pas, sinon elle répond par unRST/ACK
; - le null scan et xmas scan jouent avec les drapeaux en les initialisation
de manière non conforme afin de dejouer les pare-feux. En vas de réponse
RST/ACK
alors on peut en déduite que le port est ouvert sur la victime.
le cas de l'IDLE scan
C'est un balayage particulier qui fait intervenir un tiers et joue avec l'IPID. L'IPID est un numéro d'identification IP utilisé en cas de fragmentation notamment.
Reprenons le schéma ci-dessus, nous avons A, machine zombie sous conrôle de l'attaquant et B la victime:
- l'attaqant récupère l'IPID de la machine zombie A en envoyant un
SYN/ACK
et en observant l'IPID du segment TCPRST
en retour -- nomons le X; - l'attaquant forge ensuite un segment TCP
SYN
; la trame IP englobant celui- ci a comme adresse source l'IP celle de A; - il suffit alors de renvoyer un segment
SYN/ACK
et d'observer l'IPID de la réponse : fonction de l'échange entre A et B, nous pouvons en déduire si le port est ouvert sur la cible:- s'il est égal à X+1 alors le port est fermé: en effet la victime a
répondu un simple
RST
, l'IPID n'est pas incrémenté; - s'il est égal à X+2, le port est ouvert: la victime a répondue avec un
SYN/ACK
, notre zombie avec unRST
incrémentant l'IPID de 1.
- s'il est égal à X+1 alors le port est fermé: en effet la victime a
répondu un simple