Por que o ping teve êxito, mas o nmap falhou?


21

Por que o Nmap relata "O host parece inativo" quando um ping simples é bem-sucedido?

me@computer:~$ ping 123.45.67.89
PING 123.45.67.89 (123.45.67.89) 56(84) bytes of data.
64 bytes from 123.45.67.89: icmp_req=1 ttl=45 time=91.1 ms
64 bytes from 123.45.67.89: icmp_req=2 ttl=45 time=102 ms
64 bytes from 123.45.67.89: icmp_req=3 ttl=45 time=100 ms
^C
--- 123.45.67.894 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 91.136/98.182/102.417/5.022 ms

me@computer:~$ nmap 123.45.67.89

Starting Nmap 5.21 ( http://nmap.org ) at 2014-04-02 14:23 EDT
Note: Host seems down. If it is really up, but blocking our ping probes, try -PN
Nmap done: 1 IP address (0 hosts up) scanned in 3.04 seconds

As "sondas de ping" do Nmap são diferentes da linha de comando?


Posso sugerir que você atualize sua instalação do Nmap? A versão atual é 6.40 . A versão 5.21 tem 4 anos e faltam 361 scripts NSE e milhares de impressões digitais de serviço e SO.
bonsaiviking

Obrigado. 5.21 é a versão que eu obtive por padrão. Eu acho que vou baixar e construir o mais recente.
ASHelly

Sim, o Ubuntu está lamentavelmente atrasado no Nmap. Você pode verificar as dependências no .deb do Kali , atual.
bonsaiviking

Respostas:


29

O Nmap envia muitas sondas diferentes para determinar se um host está ativo. No seu caso específico, porque você está executando o Nmap sem privilégios de root, ele não pode enviar solicitações de eco ICMP, que é o que o pingutilitário usa. Nesse caso, ele tenta se conectar às portas 80 e 443, relatando o host como ativo se a conexão for aberta ou rejeitada. Seu destino deve ter um firewall que está descartando todo o tráfego para essas portas.

Para permitir que o Nmap encontre o sistema, tente executá-lo com permissões de root. O comando sudo é freqüentemente usado para esse fim, por exemplosudo nmap 123.45.67.89

pingpode enviar pacotes ICMP porque está instalado setuid como root, o que significa que qualquer usuário pode executá-lo, mas ele será executado como usuário root quando o fizer. Os programas setuid devem ser extremamente cuidadosos para não permitir que usuários comuns obtenham um shell por meio dessa permissão extra. O Nmap, em particular, não pode impedir essa escalação de privilégios; portanto, nunca deve ser definido.


Estou no Windows e ainda estou recebendo o mesmo erro ao executá-lo no cmd com direitos de administrador. Ping está sempre bem.
Shashwat 28/10/2015

2
Eu sou raiz, mas tem esse problema
vladkras

Sem root / sudo, como o ping faz um ICMP ECHO, mas não o nmap?
27418 MikeP

11
@MikeP /bin/pingé setuid-root. Não importa quem o execute, ele será executado com privilégios de root. Os programas setuid devem ser exaustivamente testados para garantir que não possam ser usados ​​para executar comandos arbitrários. O Nmap não pode ser instalado com segurança, setuid-root, portanto você deve usar outro mecanismo: a senha ou o sudo do root.
bonsaiviking

2

Sim, eles são diferentes por padrão, o ping é ICMP e o nmap ping envia um pacote syn para a porta 80, se bem me lembro, tente usar os sinalizadores -PE, -PM, -PP para fazer um ping ICMP


0

sem privilégios, você pode verificar a porta com o netcat:

nc -z -w5 hostname 22; echo $?

resposta 1, se falhou, caso contrário, responda:

A conexão com a porta 22 do hostname [tcp / ssh] foi bem-sucedida!

0 0


É melhor citar e citar respostas quando você se refere a elas, a ordem das respostas, pode mudar diariamente. Esta resposta em si mudou a ordem das respostas para esta pergunta.
Ramhound #

0

Correção simples para mim (Windows 10). Acabei de desativar meu adaptador sem fio, que não estava em uso desde que eu estava usando o adaptador de LAN principal. Eu recomendo desabilitar todos, exceto seu adaptador principal.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.