O que o script a seguir faz? [fechadas]

1

Esta foi uma pergunta no meu guia de estudo, e acredito que o script está pingando os endereços IP, então a segunda opção. Alguém pode confirmar isso para mim?

A quinta coluna da saída do NMAP abaixo é o endereço IP. Armado com essa informação, o que o script abaixo faz?

nmap -n -p80 -sS -PN --open 192.168.1.0/24 | grep "Nmap scan report" | awk '{print $5}' | while read IP; do ping -c 1 $IP && echo "I can ping $IP" ; done

Selecione um:

  • Ele resolverá os nomes de rede dos hosts que estão executando servidores da web

  • Será feito o ping de todos os endereços IP entre 192.168.1.0 e 192.168.1.255

  • Ele procurará na rede por servidores Telnet

  • Verá se o ICMP ECHO REPLY é retornado de todos os hosts executando servidores da web no intervalo 192.168.1.1-255

  • Ele se conectará a todas as páginas da Web na rede e fará o download do banner

por Garbth Bobby 20.12.2013 / 03:45

2 respostas

2

Primeiramente, gosto de verificar as páginas do manual do linux para perguntas como esta. Também digno de nota, é que este script usa a criação de canais: link

Por exemplo, abrindo o terminal e digitando man nmap , podemos ver o que o nmap faz e o que cada argumento significa

Da página man de nmap

Nmap (“Network Mapper”) is an open source tool for network exploration
       and security auditing.

-n/-R: Never      do DNS resolution/Always resolve [default: sometimes]
-p <port ranges>: Only scan specified ports
-sS/sT/sA/sW/sM:  TCP SYN/Connect()/ACK/Window/Maimon scans
-Pn (No ping) .   This option skips the Nmap discovery stage altogether.
--open            (Show only open (or possibly open) ports) .

Então, a partir disso, parece que estamos fazendo algum tipo de varredura sem resolução de DNS, apenas na porta 80, com um pacote SYN e ignorando o estágio de descoberta. Além disso, parece que estamos interessados apenas em portas abertas, e estamos fazendo isso para tudo o que parece corresponder a 192.168.1. *.

Isso ocorre porque o endereço é 192.168.1.0/24, onde 24 corresponde ao número de bits no IP (Outra lição!). 192.168.1.1/16 significaria qualquer coisa em 192.168. . , 192.168.1.1/8 significaria qualquer coisa em 192. . . *, E assim por diante.

O Grep escaneia a entrada e imprime as linhas que correspondem à sua consulta. Neste caso, ele irá passar por tudo o que o Nmap lhe disser e imprimir apenas as linhas que contenham "relatório de varredura do Nmap".

Quando eu corro:

    sudo nmap -n -p80 -sS -PN --open 192.168.1.1 | \
       grep "Nmap scan report" 

o resultado é: "Relatório de varredura do Nmap para 192.168.1.1"

A partir daí, a linha "relatório de varredura do Nmap para 192.168.1.1" é inserida na entrada awk . A partir da página do manual: "mawk - leitura de padrões e linguagem de processamento de texto"

Nesse contexto, awk está pegando o "relatório de varredura do Nmap para 192.168.1.1" que mencionei e isolando apenas o endereço IP. De fato, podemos trapacear um pouco testando isso no terminal:

    echo Nmap scan report for 192.168.1.1 | awk '{print $5}'

vai cuspir: 192.168.1.1

Agora, há o loop while acontecendo:

    while read IP; do ping -c 1 $IP && echo "I can ping $IP" ; done

O loop while diz que, embora exista um IP a ser lido, ping it -c times (neste caso, um) e (& &) imprimem na janela de comando (echo) " Eu posso ping <IP> ", antes que a iteração do loop chegue ao fim. O que o ping faz?

Vamos verificar a página do manual: "ping, ping6 - enviar ICMP ECHO_REQUEST para hosts da rede"

Portanto, para todos os endereços IP que o nmap determinou possuíam portas abertas 80, o computador deveria pingar (enviar um ICMP ECHO_REQUEST) uma vez e imprimir que foi feito.

Agora, a porta 80 é usada para tráfego HTTP, em outras palavras, tipo de servidor web. Como o nmap foi avisado para ver a porta aberta 80, um host (computador habilitado para internet) com uma porta fechada 80 será ignorado. Por essa razão, eu diria que sua melhor aposta é provável "Ela verá se o ICMP ECHO REPLY é retornado de todos os hosts executando servidores da web no intervalo 192.168.1.1-255."

    
por 20.12.2013 / 04:41
1

É a quarta escolha.

Os servidores da Web ouvem na porta 80 por padrão, e é aí que entram -p80 na linha de comando nmap . Em outras palavras, ele está procurando por hosts que tenham a porta 80 aberta e ver qual deles responderá a uma solicitação ICMP ECHO, também conhecida como ping.

    
por 20.12.2013 / 04:08

Tags