2022-11-14 22:58 Temps de lecture : 7 min

Énumération des services réseau à l'aide de GoScan

L'identification des éléments d'un réseau constitue une étape cruciale lors des tests d'intrusion (pentesting). Découvrons ensemble comment réaliser cette opération en tirant parti de GoScan.

De nombreux outils d'analyse réseau tels que Nmap ou zmap nécessitent un certain niveau d'expertise et peuvent s'avérer chronophages en fonction de la taille du réseau à analyser. Bien qu'ils soient efficaces, leur prise en main peut parfois être complexe.

GoScan, un outil d'analyse réseau interactif, se distingue par son approche automatisée, facilitant ainsi l'identification rapide des réseaux et services disponibles.

Qu'est-ce que GoScan ?

GoScan se présente comme un scanner réseau doté d'une interface utilisateur interactive. Il automatise diverses fonctions d'énumération de Nmap. Son atout majeur réside dans sa fonctionnalité d'auto-complétion intelligente et sa base de données SQLite en arrière-plan, assurant une stabilité des connexions et des données même en cas de conditions instables.

Contrairement à d'autres outils communautaires, GoScan se positionne comme un framework intégré, s'appuyant sur différentes technologies pour simplifier et automatiser de nombreuses tâches. Il exploite principalement les capacités de Nmap en matière d'analyse de ports et d'identification de services, tout en intégrant d'autres outils comme le scanner Nikto.

GoScan est capable de réaliser toutes les étapes clés d'une analyse réseau :

  • Découverte d'hôtes (ARP + ping scan)
  • Énumération DNS
  • Énumération de services
  • Analyse de ports
  • Énumération de domaine

Installation de l'outil

Compilation à partir des sources

Cloner le dépôt :

$ git clone https://github.com/marco-lancini/goscan.git

Accéder au répertoire GoScan et effectuer la configuration et la compilation :

$ cd goscan/goscan
$ make setup
$ make build

Pour générer un binaire multiplateforme, exécuter :

$ make cross

Installation via Docker

$ git clone https://github.com/marco-lancini/goscan.git
$ cd goscan/
$ docker-compose up --build

Installation du binaire

Cette méthode d'installation est recommandée. Télécharger le binaire :

# Linux (64bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_amd64.zip
$ unzip goscan_2.4_linux_amd64.zip

# Linux (32bit)
$ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_386.zip
$ unzip goscan_2.4_linux_386.zip

# Ajouter l'exécutable au PATH
$ chmod +x goscan
$ sudo mv ./goscan /usr/local/bin/goscan

Utilisation de GoScan

Analyse par ping

GoScan est simple à utiliser grâce à ses suggestions de commandes automatiques et sa complétion par tabulation. Démarrez la saisie d'une commande pour voir apparaître les suggestions et leurs descriptions.

Commençons par charger une cible. Vous pouvez spécifier plusieurs adresses IP, ou dans notre cas, l'adresse IP unique de notre machine cible :

[goscan] > load target SINGLE 10.0.1.24

[*] Imported target: 10.0.1.24

Ensuite, réalisons une analyse par ping :

GoScan commence par créer un répertoire pour stocker les résultats. Le répertoire peut être personnalisé, mais l'emplacement par défaut convient généralement. On peut ensuite visualiser la commande Nmap utilisée, ainsi que le temps d'exécution. Les résultats sont disponibles sous différents formats dans le répertoire nouvellement créé.

Analyse de ports

La fonctionnalité d'analyse de ports de GoScan est probablement la plus puissante. En saisissant la commande portscan, nous pouvons observer les différents types d'analyses disponibles :

Toutes les informations enregistrées par GoScan peuvent être affichées via la commande show. Par exemple, pour afficher les cibles :

[goscan] > show targets

+------------+---------+
|  ADDRESS   |  STEP   |
+------------+---------+
| 10.0.1.24 | SWEEPED |
+------------+---------+

Identification de services

GoScan permet également d'identifier les services en cours d'exécution sur une cible, en complément de l'analyse de ports. En saisissant la commande enumerate, on peut consulter les modules disponibles : FINGER, FTP, HTTP, RDP et SMB.

Chaque service offre plusieurs options telles que DRY (exécution à blanc), POLITE (exécution en évitant la force brute) et BRUTEFORCE.

Analyses spécifiques

GoScan propose également des analyses spécialisées pour la reconnaissance. En entrant la commande special, on peut visualiser les options suivantes :

[goscan] > special
                    eyewitness  Takes screenshots of websites and open VNC servers
                    domain      Extracts domain information from enumerated data
                    dns         Performs DNS enumeration

L'option EyeWitness permet de capturer des captures d'écran des pages web et serveurs VNC. Il est cependant nécessaire que EyeWitness soit installé dans le PATH système. L'analyse de domaine, quant à elle, permet de récupérer des informations sur les utilisateurs, les hôtes et les serveurs.

Conclusion

GoScan est un outil très utile pour identifier rapidement les réseaux et les services. Cependant, il pourrait être amélioré en ajoutant d'autres modules d'énumération de services tels que SNMP et SMTP. Dans l'ensemble, GoScan est un outil précieux qui simplifie certaines tâches d'énumération réalisées avec Nmap.

Auteur
France

Rédacteur tech, guides pratiques et astuces numériques.