# Réseau # [Énumération/Réseau] Nmap ## Introduction **Nmap** est certainement le plus grand outil d'énumération réseau au monde. Il permet de découvrir un réseau ou de scanner des ports et même de chercher des vulnérabilités. Il est incontournable pour les professionnels de la cybersécurité. ## ![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-10/scaled-1680-/4nYimage.png)Manuel #### Syntaxe globale ```bash nmap [OPTIONS] ``` #### Découverte du réseau ```bash nmap -sn / ``` #### Scan d'un port ```bash nmap -p ``` #### Scan d'une plage de ports ```bash nmap -p - ``` #### Scan des 1000 ports les plus populaires ```bash nmap -F ``` #### Scan avancé ```bash nmap -A ```

L'option -A regroupe les options -O, -sV et exécute certains scripts NSE pour chercher des services et des vulnérabilités.

#### Scan UDP ```bash nmap -sU ```

Vous pouvez aussi utiliser l'option -p pour ne scanner qu'un ou une plage de ports.

#### Scan rapide ```bash nmap -T4 ``` #### Scan discret ```bash nmap -T1 ```

Le scan sera beaucoup plus lent qu'un scan habituel.

#### Autres options
**Options****Fonctions**
-vMode verbeux
-nDésactive la résolution DNS
-g <SRC\_PORT> Permet de spécifier un port source de la connexion
-oN <OUTPUT\_FILE>Sauvegarde la sortie dans un fichier
-oX <OUTPUT\_FILE> Sauvegarde la sortie dans un fichier au format XML
--exclude <FILE>Exclue les IP contenues dans le fichier lors du scan
--stats-every <TIME>Affiche les statistiques du scan en temps réel
--script <DEFAULT|SCRIPT>Exécute le script spécifié ou tous les scripts si default est indiqué
#### Scripts L'ensemble des scripts fournis par nmap sont disponibles dans le dossier **/usr/share/nmap/scripts** . #### Projet dashboard grafana Voici un projet que je trouve intéressant pour intégrer des graphiques de vos scans nmap dans vos rapports de pentest : - [https://github.com/hackertarget/nmap-did-what](https://github.com/hackertarget/nmap-did-what) Tout d'abord clonez le dépôt : ```bash git clone https://github.com/hackertarget/nmap-did-what ``` Ensuite lancez votre scan nmap avec un fichier d'export au format XML avec l'option **-oX** : ```bash nmap -sC -sV -Pn -n -oX scan.xml ``` Injectez les données récupérées dans la base de données du projet : ```bash cd nmap-did-what && cp scan.xml /data/ && python3 nmap-to-sqlite.py scan.xml && cd .. ``` Lancez la stack docker : ```bash cd grafana-docker/ && docker compose up -d && cd .. ``` Rendez-vous sur l'interface Grafana : - [https://localhost:3000](https://localhost:3000) Depuis le menu **Dashboard**, retrouvez ces graphiques préconfigurés : [![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2024-10/scaled-1680-/PrSimage.png)](https://wiki.neopipe.fr/uploads/images/gallery/2024-10/PrSimage.png) # [Énumération/Réseau] SNMP ## Introduction Le protocole **SNMP** pour *Simple Network Management Protocol* permet de gérer les ressources sur un réseau. Il existe des agents SNMP (installés sur les hôtes réseaux) et des managers SNMP qui sont capables de récupérer des informations identifiées par un OID, sur les agents. Par défaut, il utilise le port **161**. [![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/scaled-1680-/DwEimage.png)](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/DwEimage.png) ## Composition de l'OID Pour identifier les objets, on utilise ce qu'on appelle un **OID** qui est formé selon l'arbre ci-dessus. Par exemple, pour obtenir l'OID de l'ip, on parcours l'arbre du haut vers le bas en mettant un point entre chaque numéro, ce qui donnerait : **1.3.6.1.1.1.4** . ## Les versions de SNMP #### Communautés SNMP Le terme de "communauté" fait référence à la méthode d'authentification utilisé dans les SNMPv1 et SNMPv2c. Il existe deux types de communauté : - **Communauté "publique" (public) :** Offre un accès en lecture seule aux informations de l'agent. - **Communauté "privée" (private) :** Permet un accès en lecture et en écriture, permettant de modifier la configuration de l'agent. #### SNMPv3 Contrairement aux anciennes versions du protocole, SNMPv3 introduit un modèle de sécurité plus avancé, offrant des fonctionnalités telles que l'authentification, la confidentialité et le contrôle d'accès de manière plus robuste. Il n'utilise pas de communautés, mais des mécanismes d'authentification et de chiffrement plus sophistiqués pour assurer la sécurité des données échangées entre le gestionnaire et les agents. ## SNMPget #### Syntaxe globale ```bash snmpget [OPTIONS] ``` #### Exemples d'utilisation - Interroger un agent pour obtenir une information spécifique : ```bash snmpget -v2c -c community 192.168.1.1 1.3.6.1.2.1.1.1.0 ``` - Utiliser SNMP v3 avec des informations d'identification : ```bash snmpget -v3 -u username -l authPriv -a MD5 -A authpass -x DES -X privpass 192.168.1.1 1.3.6.1.2.1.1.1.0 ``` - Récupérer des informations à partir d'une cible nommée plutôt que son IP : ```bash snmpget -v2c -c public -n mytarget 1.3.6.1.2.1.1.1.0 ``` #### Options courantes
**Options** **Descriptions**
-v\[X\] Spécifie la version SNMP (X peut être 1, 2c ou 3).
-c Spécifie la communauté SNMP (uniquement pour SNMP v1 et v2c).
-u Spécifie l'identifiant d'utilisateur (uniquement pour SNMP v3).
-I Spécifie le niveau de sécurité (SNMP v3).
-a Spécifie l'algorithme d'authentification (SNMP v3)
-x Spécifie l'algorithme de chiffrement (SNMP v3).
-A Spécifie le mot de passe d'authentification (SNMP v3).
-X Spécifie le mot de passe de chiffrement (SNMP v3).
-n Nomme la cible en utilisant un nom au lieu d'une adresse IP.
# [Énumération/Réseau] DNS ## Introduction Il existe plusieurs outils qui permettent d'énumérer un serveur DNS car ce dernier est souvent le point d'entrée des attaquants et regorge d'informations utiles sur les sous-domaines, les serveurs de messageries ou les adresses IP utilisés par la cible. [![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/scaled-1680-/9Ljimage.png)](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/9Ljimage.png) ## Dig Certainement l'outil le plus connu pour énumérer les serveurs DNS, il est très puissant et possède de nombreuses options. #### Utilisation standard ```bash dig ``` #### Énumération des serveurs de messagerie ```bash dig -t mx +short ``` ## Host Cette commande va énumérer tous les serveurs se trouvant derrière le nom de domaine indiqué : ```bash host ``` ## DNSenum #### Installation ```bash sudo apt install -y dnsenum ``` #### Manuel ```bash dnsenum ```

Vous pouvez utiliser l'option **--noreverse** pour ne pas lancer la procédure de reverse lookup sur les IP trouvées.

# [Énumération/Réseau] Zmap ## Introduction **Zmap** est un outil qui permet de scanner très rapidement toute ou une partie de plage IPv4 d'Internet pour savoir lesquelles ont un ou plusieurs ports ouverts. [![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/scaled-1680-/MYEimage.png)](https://wiki.neopipe.fr/uploads/images/gallery/2023-11/MYEimage.png) ## Installation ```bash sudo apt update && sudo apt install -y zmap ``` ## Manuel #### Syntaxe globale ```bash sudo zmap -p -o ``` #### Exemples d'utilisation - Scanner tout internet sur le port 80 : ```bash sudo zmap -p 80 -o scan_port_80_results.txt 0.0.0.0/0 ``` - Balayer une plage d'IP sur plusieurs ports : ```bash sudo zmap -p 22,80,443 -o scan_result.json 192.168.1.0/24 ``` - Limiter l'utilisation de la bande passante : ```bash sudo zmap -p 3389 -o rdp_results.csv -B 5M 10.0.0.0/16 ``` #### Options courantes
**Options** **Descriptions**
-p <PORT> Spécifie le numéro de port à balayer.
-o <FILE> Spécifie le fichier de sortie pour enregistrer les résultats.
-B <BYTES> Limite la bande passante utilisée (par exemple, "-B 10M" pour limiter à 10 Mbps).
-f <FORMAT> Spécifie le format de sortie (par exemple, **json** ou **csv**).
-q Mode silencieux (supprime les avertissements)
-N Définit le nombre de threads à utiliser pour le balayage.