Scanning


Le scan d’un réseau ou d’une application permet d’identifier des vulnérabilités sur les services ou des applications qui s’exécutent. C’est une étape assez cruciale qui permet de détecter des failles de sécurité potentielles. Plusieurs outils de scan peuvent être utilisés dans ce cas.
Il existe plusieurs type de scans:
le scan de ports permet d’identifier des ports ouverts sur un système. Ces ports peuvent donc indiquer des services actifs qui peuvent être exploités.
Nmap
est l’outil le plus connu utilisé pour ce type de scan. Il existe aussiNaabu
ou encoreRustscan
.le scan web permet d’explorer les applications web dans le but de détecter des failles commes les injections SQL, les failles XSS, CSRF et d'autres vulnérabilités spécifiques aux applications web. Des outils comme
Nikto
,Burp Suite
peuvent être utilisés pour ce type de scanle scan réseau permet d’analyser l’ensemble d’un réseau dans le but d’identifier les appareils connectés, les services et aussi les configurations réseau pouvant être vulnérables
le scan de vulnérabilités permet de rechercher des failles de sécurité qui sont connues dans les systèmes. Ils sont généralement utilisés dans le cadre d’audit de sécurité et fournissent des rapports détaillés. Des outils comme
Nessus
,Qualys
peuvent être utilisés dans ce cas. Ces deux outils sont payants, mais disposent aussi de plans limités qui sont gratuits. Nikto peut aussi être utilisé.
Naabu
Naabu est un scanner de ports devéloppé par Project Discorvery et écrit en langage Go, pour identifier les services ouverts sur une machine ou un réseau. Il est connu pour être plus rapide, avec beaucoup d’options, comme le fait de pouvoir exclure des ports, scanner toute une liste de ports ou encore le combiner avec Nmap pour avoir des résultats plus détaillés. Vous pouvez l’installer directement via Github.
Installez d’abord Go sur votre machine avec la commande suivante:
sudo apt install golang-go
Installez ensuite l’outil Naabu
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latest
Options
naabu -h
: l’option-h
permet de lister toutes les options de Naabunaabu -host [DOMAIN/IP] -exclude-ports [PORT,PORT] -json
l’option
-host
définit le domaine ou l’adresse IP à scannerl’option
-p
permet de scanner un port spécifiquel’option
-exclude-ports
permet d’exclure des ports lors du scanl’option
-json
permet d’avoir les résultats en format JSON
naabu -list [domains.txt] -o [output.json
]L’option
-list
ou-l
effectue un scan avec un fichier contenant une liste de domaines ou d’adresses IPl’option
-o
pour sauvegarder les résultats dans un fichier
naabu -host [DOMAIN/IP] -p [PORTS] -nmap-cli 'nmap -sV -Pn'
L’option
-nmap-cli
permet d’exécuter la commande nmap directement sur les résultats obtenus. Nmap doit être déjà installé pour que ca fonctionne.Cette commande exécute Naabu pour scanner les ports spécifiés sur le domaine puis lance le service nmap sur chaque port.
Il est aussi possible de combiner Naabu avec ASNmap avec la commande suivante:
asnmap -a ASXXXX -silent | naabu -p 22,80 -silent
Cette commande va d’abord récupérer les plages d’adresses IP associées à l’ASN en mode silent et ensuite scanner les ports 22 et 80 avec Naabu. Si vous n’êtes pas familier avec ASNMAP, vous pouvez lire un article à ce sujet ici.
Rustscan
RustScan est aussi un scanner de ports, écrit en langage Rust, beaucoup plus rapide et capable d’intégrer des outils comme Nmap pour des analyses plus détaillées. RustScan redirige directement ses résultats vers Nmap pour d’autres anlayses. Il est aussi possible de les modifier à votre guise.
Vous pouvez accéder au dépôt depuis la biliothèque officiel sur Github.
Téléchargement sur Kali Linux
Téléchargez le fichier d’installation depuis le terminal. Il existe plusieurs versions de Rustscan.
wget https://github.com/RustScan/RustScan/releases/download/2.0.1/rustscan_2.0.1_amd64.deb
Se déplacer vers le dossier Downloads et modifiez les permissions du fichier installé en le rendant exécutable.
cd Downloads
sudo chmod +x rustscan_2.0.1_amd64.deb
Installez le package Debian
sudo dpkg -i rustscan_2.0.1_amd64.deb
En cas de problèmes, exécutez la commande suivante:
sudo apt update
sudo apt upgrade
Si vous rencontrez des problèmes de dépendances, exécutez la commande suivante :
sudo apt-get install -f
RustScan devrait être maintenant installé .
Options
rustscan -a [DOMAINE/IP] -p [PORT,PORT] -b -g
l’option
-a
spécifie l’adresse ou le domine ciblel’option
-p
permet de spécifier un ou plusieurs portsl’option
-b
permet de limiter la bande passante et éviter de surcharger le réseau pendant le scan.l’option
-g
simplifie l’analyse qui n'affiche que les ports ouverts détectés, sans les détails de Nmap
rustscan -a [DOMAINE/IP] -- -sV --script vuln
l’option
--
termine les arguments de RustScan. Tous les argument suivants sont directement passés à Nmapl’option
-sV
de Nmap active la détection des services et leurs versions sur les ports ouvertsl’option
--script vuln
détecte les vulnérabilités sur les services
Ici on scanne les ports 22,80 et 445 de l’adresse 192.168.2.96. Le double-tiret indique les options sont passées à Nmap, avec l’option -sV
, pour détecter la version des services.
Nmap
Nmap est un outil de scan qui permet aussi d’analyser un réseau ou une application web pour identifier des vulnérabilités potentielles. Il est utilisé pour scanner les ports et identifier les services actifs.
La documentation officielle de nmap se retrouve sur le site officiel.
Pour installer nmap , utilisez la commande suivante:
sudo apt install nmap
Options
nmap -h
: l’option-h
permet de lister toutes les options de nmapnmap -sn 192.168.1.0/24
Cette commande exécute un scan de découverte réseau aussi appelé ping scan. Elle scanne toute les adresses dans la plage 192.168.1.1 à 192.168.1.254.
L’option
-sn
indique à nmap de ne pas effectuer de scan de ports, mais vérifie simplement les hôtes actifs sur le réseau
nmap -sS -sV -O --script vuln [IP_ADRESS]
l’option
-sS
effectue un scan SYN rapide et discret. Il n’établit pas de connexion complète avec la cible,ce qui rend l’analyse moins visible par des sytèmes de détection par exemple.l’option
-sV
permet de détecter les versions des services en cours sur les ports ouverts sur la machinel’option
-O
permet de déterminer le système d’exploitation de la ciblel’option
--script vuln
exécute des scripts qui permettent de détecter les vulnérabilités connues sur la cible.
nmap -T4 -sC -p 80,21 [IP_ADRESS]
l’option
-T4
permet de définir le niveau d'agressivité du scan et va de -T0 à T5. Cela permet de définir la vitesse d’exécution du scan, ce qui peut la rendre plus rapide, mais aussi détectable par des systèmes de détectionl’option
-sC
exécute les scripts par défaut de nmap via le Nmap Scripting Engine (NSE) pour la détection de versions et la recherche de vulnérabilités.l’option
-p
spécifie les ports à scanner
Voici un document qui détaille toutes les options de nmap : Nmap-Cheat-Sheet.pdf
nmap -T4 -sC -sV 10.192.160.244
La commande suivante utilise l’outil nmap pour une analyse sur l’adresse 10.192.160.244. On voit donc que 4 ports TCP ont été trouvés ainsi que des services ssh, dnsmasq et http.
À noter, qu’il est important de rappeler que l'utilisation de ces outils doit toujours se faire dans un cadre légal.
Subscribe to my newsletter
Read articles from FIKARA BILAL directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
FIKARA BILAL
FIKARA BILAL
As a newcomer to the cybersecurity industry, I'm on an exciting journey of continuous learning and exploration. Join me as I navigate, sharing insights and lessons learned along the way