Ce tutoriel explique comment utiliser NMAP pour trouver des serveurs et des vulnérabilités derrière les ports.
NMAP est l'un des outils de réseautage les plus utiles vous permettant de cartographier les réseaux, de découvrir des hôtes, de numériser des ports, de diagnostiquer les problèmes de réseau, de détecter et d'exploiter les vulnérabilités, et plus.
Ce tutoriel se concentre sur la version des services et les techniques de détection des vulnérabilités. Les lecteurs qui ne sont pas familiers avec NMAP peuvent préférer commencer par lire notre tutoriel NMAP Basics.
Toutes les instructions de ce document contiennent des captures d'écran, ce qui permet à tous les lecteurs de comprendre comment ils sont mis en œuvre dans le terminal.
Analyser les ports pour détecter les services avec NMAP
La première section de ce tutoriel explique comment détecter les services et leur version logicielle écoutant sur les ports ouverts.
Comme le montre la première capture d'écran, une analyse NMAP régulière renvoie les ports ouverts parmi les 1000 les plus couramment utilisés. Par défaut, NMAP analyse les 1 000 ports les plus populaires.
Les ports sont associés à des protocoles de service connexes. Dans la sortie suivante, NMAP trouve les ports ouverts 21, 514 et 3128.
NMAP 192.168.0.103L'utilisateur sait que les ports 21, 514 et 3128 sont ouverts. Par exemple, il sait qu'il y a un serveur FTP dans le port 21. Mais l'utilisateur veut apprendre le logiciel FTP et tous les autres services.
Pour détecter les logiciels et les versions, le -SV (Version) Le drapeau peut être passé, comme indiqué dans la capture d'écran ci-dessous. Où tu peux voir, Vsftpd 3.0.3 et Squid Proxy 4.13 sont détectés.
NMAP -SV 192.168.0.103Le -UN Flag renvoie également les versions de service avec les informations du système d'exploitation.
Dans l'exemple suivant, le -UN Flag a révélé que la cible est un système d'exploitation Linux, probablement 2.6.18 ou 2.6.22:
sudo nmap -a nic.ardenteLa section suivante de ce tutoriel décrit les techniques NSE (NMAP Scripting Engine). Cet exemple pratique montre quel -scénario Le drapeau est implémenté pour incorporer le script Banner Grab dans le scan.
Le Script Banner Grab Analyse le service des réponses pour réaliser leur version logicielle.
Dans l'exemple suivant, le bannière Le script est exécuté dans le port de ciblage de scan 21, révélant que le serveur FTP est Proftpd.
nmap -p 21 --script = bannière 66.97.40.223Pour terminer cette section et continuer avec les types de scan de vulnérabilité, l'exemple pratique ci-dessous montre le -O (Système d'exploitation) Implémentation de l'indicateur pour deviner le système d'exploitation cible.
Dans ce cas, NMAP est sûr à 93% que la cible a Linux avec le noyau 4.4.
sudo nmap -o 66.97.40.223Ce sont les techniques NMAP les plus connues pour la détection de la version du service et du système d'exploitation.
Détection des vulnérabilités avec NSE (NMAP Scripting Engine)
Cette section décrit certaines techniques pour détecter les vulnérabilités via les analyses NMAP, à l'aide du NSE (NMAP Scripting Engine), expliqué dans notre tutoriel NSE.
Le moteur de script NMAP est un ensemble de scripts que les utilisateurs peuvent inclure dans leurs scans, conçu principalement pour détecter et exploiter les vulnérabilités. Les utilisateurs peuvent également écrire leurs scripts à des fins personnalisées.
La première étape des scripts NSE consiste à mettre à jour la base de données, en s'assurant que NMAP est à jour avec les dernières vulnérabilités et techniques.
Pour mettre à jour NSE, exécutez la commande suivante:
sudo nmap - script-updatedbAprès avoir mis à jour la base de données, l'utilisateur peut exécuter divers scripts pour trouver des vulnérabilités. Les scripts sont classés par des catégories que vous pouvez voir sur https: // nmap.org / nsedoc / catégories /.
Dans l'exemple suivant, le -scénario Flag appelle les scripts du vuln Catégorie, scannant environ 150 vulnérabilités populaires.
sudo nmap - script vuln 66.97.40.223 -vComme vous pouvez le voir dans la capture d'écran suivante, NMAP rapporte que certaines vulnérabilités sont supprimées tandis que d'autres sont probables:
Le http-csrf Le script permet aux utilisateurs de scanner des sites Web pour trouver des vulnérabilités CSRF (Cross Scripting Demande).
sudo nmap - script http-csrf Linuxhint.com -vComme vous pouvez le voir ci-dessous, si la verbosité (-V) est instruit, NMAP imprime le résultat de toutes les vérifications qu'il fait contre le site Web.
Les utilisateurs peuvent implémenter les caractères génériques pour terminer les noms de script. Dans l'exemple suivant, l'utilisateur ajoute tous les scripts liés à HTTP ou tous les scripts dont le nom commence par «http», indépendamment de la façon dont il se poursuit.
Sudo Nmap - Script "Http *" Linuxhint.com -vLe moteur de script NMAP peut cibler des réseaux entiers pour détecter les ordinateurs infectés par des logiciels malveillants. Ceci est une excellente technique pour les administrateurs pour aborder les intrusions de logiciels malveillants possibles.
Les scripts de logiciels malveillants disponibles peuvent être trouvés sur https: // nmap.org / nsedoc / catégories / logiciels malveillants.html.
Détecter les vulnérabilités avec NMAP et VULSCAN
Vulscan est un ensemble supplémentaire de scripts pour NSE, qui n'est pas inclus dans NMAP par défaut.
Vulscans est profondément expliqué dans le tutoriel NMAP VULSCAN, mais cette section offre une brève revue, une installation et des instructions de base.
Vulscan est un script de script NMAP pour faciliter les tâches de détection de vulnérabilité,
Pour l'obtenir, clone Vulscan en utilisant le git Commande, comme indiqué ci-dessous:
git clone https: // github.com / scipag / vulscanCréez un lien souple vers le répertoire NSE Scripts en exécutant la commande suivante:
sudo ln -s 'pwd' / scipag_vulscan / usr / share / nmap / scripts / vulscanMaintenant, Vulscan est disponible pour être appelé par le -scénario Flag pour effectuer des vérifications de vulnérabilité supplémentaires.
La syntaxe est la suivante:
NMAP -SV --Script = Vulscan / Vulscan.NSEDans l'exemple suivant, Vulscan est lancé contre linuxhint.com.
Lorsque Vulscan détecte un trou de sécurité probable, il exécute tous les scripts connexes.
NMAP -SV --Script = Vulscan / Vulscan.NSE Linuxhint.comVulscan est un excellent ajout pour les utilisateurs de NMAP, en particulier ceux utilisés au moteur de script NMAP. Nous vous recommandons fortement de continuer à lire notre tutoriel Vulscan mentionné dans l'introduction de cette section.
Vulneurs
Utilisez la commande suivante pour cloner NMAP-Vulners dans votre répertoire NSE Scripts:
sudo git clone https: // github.com / vulnerscom / nmap-vulners.git / usr / share / nmap / scripts / vulnersExécuter NMAP avec des vulnes en utilisant la syntaxe suivante:
Sudo Nmap - Vulneurs / vulneurs-scriptaires.NSEÀ propos du NSE (moteur de script NMAP)
Le NSE (NMAP Scripting Engine) est parmi les fonctionnalités NMAP les plus requises.
Il s'agit d'une collection de scripts pour automatiser et personnaliser les tâches de numérisation. Les scripts peuvent être exécutés avant, pendant ou après le scan.
Alors que NMAP propose diverses catégories de scripts, les utilisateurs peuvent également écrire leurs propres scripts dans la langue Lua.
De plus, les scripts NSE peuvent être utilisés pour l'exploitation de la vulnérabilité à la détection de service et de vulnérabilité ou même pour les attaques de force brute.
Les scripts sont divisés en catégories suivantes: authentification, diffuser, défaut, Découverte, dos, exploiter, malware, intrusif, flou, externe, sûr, version, et vuln, La catégorie utilisée dans le premier exemple d'utilisation sur la section NSE.
Les appareils virtuels métasploitables sont une excellente ressource pour tester les capacités NSE. Les scripts peuvent également être inclus dans des analyses massives ciblant plusieurs réseaux.
Les scripts du NSE sont classés en fonction de critères spécifiques basés sur le moment de l'exécution du script, de l'objectif du script et de la fonctionnalité.
La première classification basée sur le temps d'exécution comprend quatre types de scripts:
La deuxième classification est basée sur la sécurité et les objectifs du script.
Objectif et sécurité Définissez la catégorie de script. Les catégories étaient auparavant répertoriées dans ce document.
Conclusion
NMAP est extrêmement puissant et flexible. Dans d'autres tutoriels sur la numérisation du port NMAP, la découverte de l'hôte n'a pas été révélée. Le contenu précédent montre que tout utilisateur, indépendamment du niveau de connaissances, peut être introduit dans la sécurité informatique et exécuter des tâches importantes, comme les analyses de vulnérabilité. Toutes les instructions ci-dessus sont valables pour toutes les distributions Linux et probablement pour l'outil de ligne de commande Windows également.
NMAP est le plus ancien scanner de port vivant, initialement développé par Fyodor Vaskovich en 1997 pour découvrir les services et les réseaux de cartes. Écrit initialement en C a été réécrit en C ++ et très amélioré par la communauté open source dans sa deuxième version de 1998. Il continue d'ajouter des fonctionnalités et des améliorations aujourd'hui.
C'est probablement le moteur de scan le plus utilisé à des fins de diagnostic et de sécurité, le marché propose de nombreuses alternatives, mais les fonctionnalités NMAP et les efforts derrière sa communauté ne sont pas encore égalés.
Merci d'avoir lu ce didacticiel NMAP expliquant comment scanner les ports pour trouver des services et des vulnérabilités. Continuez à nous suivre pour plus de contenu professionnel de la sécurité et de la sécurité informatique.