web-dev-qa-db-fra.com

Nmap via proxy

En utilisant la commande suivante:

nmap --proxy socks4://*.*.*.*:25074 -sV -O --reason scanme.nmap.org

Je ne sais pas si nmap utilise vraiment le proxy spécifié

Avait une idée de scanner "localhost" ou "127.0.0.1" tout en utilisant l'écoute de netcat sur un port spécifique prédéfini dans les arguments nmap (autre que l'exemple exact ci-dessus) mais netcat ne révèle pas l'adresse source du scan, il fait juste écho à la requête GET (pour la détection de la version du port, je suppose)

et peu importe ce que je mets comme adresse IP de serveur de chaussettes invalide avec nmap, il [~ # ~] toujours [~ # ~] faire le scan

et ne donne aucun message d'erreur

le seul message d'erreur que je reçois se produit si j'ai changé le type de chaussettes de socks4 à socks5 qui est:

Invalid protocol in proxy specification string: socks5://*.*.*.*:25074
QUITTING!

également essayé tcpdump mais je n'ai pas trouvé la demande de paquet

donc je ne suis pas sûr qu'il utilise vraiment le proxy de chaussettes défini ou non

Comment s'assurer que nmap utilise réellement un proxy?

Existe-t-il d'autres moyens de s'assurer que de configurer moi-même une machine distante et de la numériser (je suppose qu'elle ne devrait pas être sur le même LAN, ce qui est difficile à réaliser pour le moment)

le même problème se produit lors de l'utilisation de la chaîne proxy ou de la numérisation via vpn

Utilisation de Nmap version 7.12 sous Linux

8
SilverShadow

TL; DR: la prise en charge du proxy est actuellement limitée, mais il existe également des limites théoriques à ce que vous pourriez faire lorsque vous utilisez un proxy.

nmap ne peut faire que CONNECT et SOCKS4 et ces protocoles ne peuvent faire que TCP. En dehors de cela, l'utilisation de tout type de proxy signifie que nmap communique avec la pile IP du proxy et non de la cible. Ça signifie:

  • Le ping ICMP ne peut pas être fait pour voir si un hôte est vivant, car ICMP n'est pas TCP. Vous devrez donc peut-être ignorer l'étape de découverte de l'hôte si vos cibles ne sont accessibles que via le proxy (-Pn). Étant donné que l'ICMP SOCKS5 (non pris en charge) ne prend pas en charge ICMP, cela ne changera pas à l'avenir.
  • La découverte de service peut être effectuée pour les services basés sur TCP uniquement. Avec la prise en charge de SOCKS5, cela pourrait être étendu à UDP.
  • L'empreinte digitale du système d'exploitation basée sur les fonctionnalités de la pile IP n'est pas possible car nmap ne parle pas avec la pile IP cible lors de l'utilisation d'un proxy, mais plutôt avec la pile IP des proxys. Il s'agit d'une limite théorique que vous avez avec tout type de protocole proxy.
11
Steffen Ullrich

Pour l'instant, utilisez un outil externe comme proxychains .

Le nmapdocumentation pour --proxies indique que la fonctionnalité n'est pas encore entièrement implémentée:

Avertissement: cette fonctionnalité est toujours en cours de développement et présente des limites. Il est implémenté dans la bibliothèque nsock et n'a donc aucun effet sur les phases de ping, de numérisation de port et de découverte du système d'exploitation d'une numérisation . Jusqu'à présent, seuls NSE et l'analyse des versions bénéficient de cette option: d'autres fonctionnalités peuvent révéler votre véritable adresse. Les connexions SSL ne sont pas encore prises en charge, pas plus que la résolution DNS côté proxy (les noms d'hôte sont toujours résolus par Nmap).

Vous pouvez suivre ce guide sur la façon d'utiliser proxychains avec nmap. Après avoir configuré un ProxyList, vous exécuterez simplement la commande ci-dessus comme ceci:

proxychains nmap -sV -O --reason scanme.nmap.org

Faites toujours attention aux fuites d'identité de canal secondaire (telles que fuites DNS ), cependant. Ajout du -n flag pour empêcher les résolutions DNS par nmap peut être une bonne pratique.

4
Arminius