Introdução
Neste laboratório, você aprenderá a comparar os resultados de varredura no Nmap. O laboratório envolve a execução de varreduras SYN e TCP contra um endereço IP alvo, salvando as saídas em arquivos separados e, em seguida, comparando esses arquivos usando o comando diff. Você também explorará varreduras verbosas e analisará as diferenças observadas no terminal Xfce.
O processo começa executando uma varredura SYN usando nmap -sS -oN syn.txt 192.168.1.1 e uma varredura TCP usando nmap -sT -oN tcp.txt 192.168.1.1, salvando os resultados em syn.txt e tcp.txt, respectivamente. Esses arquivos são então comparados usando diff syn.txt tcp.txt. Além disso, varreduras verbosas são conduzidas com nmap -v -sS 127.0.0.1 e nmap -v -sT 127.0.0.1, e as notas de comparação são salvas no editor de texto Xfce para análise no terminal Xfce.
Executar varredura SYN e salvar com nmap -sS -oN syn.txt 192.168.1.1
Nesta etapa, você executará uma varredura SYN usando o Nmap e salvará a saída em um arquivo. Uma varredura SYN, também conhecida como varredura half-open, é um tipo de varredura de porta TCP que tenta determinar o estado das portas TCP em um sistema alvo. É chamada de "half-open" porque o host de varredura não completa o handshake de conexão TCP. Em vez disso, ele envia um pacote SYN e analisa a resposta. Essa técnica é mais furtiva do que uma varredura de conexão TCP completa porque não estabelece uma conexão completa, potencialmente evitando a detecção por alguns firewalls e sistemas de detecção de intrusão.
Aqui está uma análise do comando:
nmap: O scanner de linha de comando Nmap.-sS: Especifica a técnica de varredura SYN.-oN syn.txt: Especifica que a saída deve ser salva em formato normal (legível por humanos) em um arquivo chamadosyn.txt.192.168.1.1: O endereço IP alvo para varredura. Substitua isso pelo endereço IP real do alvo que você deseja varrer. Se você estiver executando este laboratório em um ambiente virtual, poderá usar127.0.0.1(localhost) como o alvo.
Vamos executar o comando. Primeiro, certifique-se de estar no diretório ~/project.
cd ~/project
Agora, execute a varredura SYN:
sudo nmap -sS -oN syn.txt 192.168.1.1
Observação: Você pode precisar de privilégios sudo para executar uma varredura SYN, pois ela requer o envio de pacotes brutos (raw packets). Se você estiver usando um endereço IP alvo diferente, substitua 192.168.1.1 pelo IP correto. Se você estiver varrendo o localhost, pode usar 127.0.0.1.
Após a conclusão da varredura, você pode visualizar o conteúdo do arquivo syn.txt usando um editor de texto ou o comando cat:
cat syn.txt
A saída mostrará as portas abertas e outras informações coletadas durante a varredura. A saída exata dependerá do sistema alvo e sua configuração.
Exemplo de saída (a saída específica variará):
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:00 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds
Esta saída indica que as portas 22, 80 e 443 estão abertas no sistema alvo. As portas "filtered" significam que o Nmap não conseguiu determinar se essas portas estavam abertas ou fechadas devido a regras de firewall ou condições de rede.
Executar varredura TCP e salvar com nmap -sT -oN tcp.txt 192.168.1.1
Nesta etapa, você executará uma varredura de conexão TCP usando o Nmap e salvará a saída em um arquivo. Uma varredura de conexão TCP, especificada pela opção -sT, é uma forma básica de varredura TCP onde o Nmap tenta estabelecer uma conexão TCP completa com o host alvo em cada porta. Isso envolve completar o handshake de três vias (SYN, SYN-ACK, ACK). Embora confiável, este método também é facilmente detectável, pois o sistema alvo registra a conexão.
Aqui está uma análise do comando:
nmap: O scanner de linha de comando Nmap.-sT: Especifica a técnica de varredura de conexão TCP.-oN tcp.txt: Especifica que a saída deve ser salva em formato normal (legível por humanos) em um arquivo chamadotcp.txt.192.168.1.1: O endereço IP alvo para varredura. Substitua isso pelo endereço IP real do alvo que você deseja varrer. Se você estiver executando este laboratório em um ambiente virtual, poderá usar127.0.0.1(localhost) como o alvo.
Vamos executar o comando. Primeiro, certifique-se de estar no diretório ~/project.
cd ~/project
Agora, execute a varredura de conexão TCP:
sudo nmap -sT -oN tcp.txt 192.168.1.1
Observação: Embora sudo não seja estritamente necessário para uma varredura de conexão TCP, é uma boa prática usá-lo para consistência e para evitar possíveis problemas de permissão. Se você estiver usando um endereço IP alvo diferente, substitua 192.168.1.1 pelo IP correto. Se você estiver varrendo o localhost, pode usar 127.0.0.1.
Após a conclusão da varredura, você pode visualizar o conteúdo do arquivo tcp.txt usando um editor de texto ou o comando cat:
cat tcp.txt
A saída mostrará as portas abertas e outras informações coletadas durante a varredura. A saída exata dependerá do sistema alvo e sua configuração.
Exemplo de saída (a saída específica variará):
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:05 UTC
Nmap scan report for 192.168.1.1
Host is up (0.00020s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds
Esta saída indica que as portas 22, 80 e 443 estão abertas no sistema alvo. As portas "closed" significam que o Nmap recebeu um pacote RST (reset) em resposta ao seu pacote SYN, indicando que a porta está fechada.
Comparar arquivos com diff syn.txt tcp.txt
Nesta etapa, você comparará os arquivos syn.txt e tcp.txt que você criou nas etapas anteriores usando o comando diff. O comando diff é uma ferramenta poderosa para identificar diferenças entre dois arquivos. Ele compara os arquivos linha por linha e destaca quaisquer adições, exclusões ou modificações.
Antes de executar o comando diff, é importante entender por que as saídas da varredura SYN (-sS) e da varredura de conexão TCP (-sT) podem diferir. A varredura SYN é uma varredura "half-open", o que significa que ela não completa o handshake TCP completo. Isso pode torná-la mais furtiva, mas também menos confiável em alguns casos, pois firewalls ou dispositivos de rede podem bloquear o pacote SYN inicial ou a resposta. A varredura de conexão TCP, por outro lado, completa o handshake TCP completo, tornando-a mais confiável, mas também mais facilmente detectável.
Para comparar os arquivos, use o seguinte comando:
diff syn.txt tcp.txt
Este comando comparará os arquivos syn.txt e tcp.txt e exibirá quaisquer diferenças no terminal.
Exemplo de saída (a saída específica variará dependendo do sistema alvo e das condições da rede):
2,4c2,4
< Nmap scan report for 192.168.1.1
< Host is up (0.00020s latency).
< Not shown: 997 filtered ports
---
> Nmap scan report for 192.168.1.1
> Host is up (0.00020s latency).
> Not shown: 997 closed ports
5c5
< 22/tcp open ssh
---
> 22/tcp open ssh
6c6
< 80/tcp open http
---
> 80/tcp open http
7c7
< 443/tcp open https
---
> 443/tcp open https
10c10
< Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds
---
> Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds
Neste exemplo, a saída mostra que a principal diferença entre os dois arquivos é a linha "Not shown". A varredura SYN (syn.txt) mostra "997 filtered ports", enquanto a varredura de conexão TCP (tcp.txt) mostra "997 closed ports". Isso indica que a varredura SYN não conseguiu determinar o estado de algumas portas devido à filtragem, enquanto a varredura de conexão TCP conseguiu determinar que essas portas estavam fechadas.
A saída diff usa os seguintes símbolos:
<: Indica uma linha que existe apenas no primeiro arquivo (syn.txt).>: Indica uma linha que existe apenas no segundo arquivo (tcp.txt).c: Indica que as linhas são diferentes e precisam ser alteradas para tornar os arquivos idênticos.
Ao analisar a saída diff, você pode obter informações sobre as diferenças entre os dois tipos de varredura e como eles percebem o sistema alvo.
Executar varreduras verbosas com nmap -v -sS 127.0.0.1 e nmap -v -sT 127.0.0.1
Nesta etapa, você executará varreduras SYN e de conexão TCP contra localhost (127.0.0.1) com a opção verbose habilitada. A opção -v no Nmap aumenta o nível de verbosidade, fornecendo informações mais detalhadas sobre o processo de varredura. Isso pode ser útil para entender como o Nmap funciona e para solucionar quaisquer problemas.
Primeiro, vamos executar a varredura SYN verbosa:
sudo nmap -v -sS 127.0.0.1
Este comando executará uma varredura SYN no localhost e exibirá a saída verbosa no terminal. Você verá mais informações sobre o progresso da varredura, incluindo as portas que estão sendo varridas, o tempo da varredura e quaisquer erros ou avisos que ocorram.
Exemplo de saída (a saída específica variará):
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:15 UTC
NSE: Loaded 0 scripts for scanning.
Initiating SYN Stealth Scan
Scanning 127.0.0.1 [1000 ports]
Discovered open port 22/tcp on 127.0.0.1
Discovered open port 80/tcp on 127.0.0.1
Discovered open port 443/tcp on 127.0.0.1
Completed SYN Stealth Scan at 10:15, 2.50s elapsed (1000 total ports)
Nmap scan report for 127.0.0.1
Host is up (0.000020s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 2.50 seconds
Em seguida, execute a varredura de conexão TCP verbosa:
sudo nmap -v -sT 127.0.0.1
Este comando executará uma varredura de conexão TCP no localhost e exibirá a saída verbosa.
Exemplo de saída (a saída específica variará):
Starting Nmap 7.80 ( https://nmap.org ) at 2023-10-27 10:16 UTC
NSE: Loaded 0 scripts for scanning.
Initiating Connect Scan
Scanning 127.0.0.1 [1000 ports]
Discovered open port 22/tcp on 127.0.0.1
Discovered open port 80/tcp on 127.0.0.1
Discovered open port 443/tcp on 127.0.0.1
Completed Connect Scan at 10:16, 3.00s elapsed (1000 total ports)
Nmap scan report for 127.0.0.1
Host is up (0.000020s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 3.00 seconds
Observe as diferenças na saída. A saída verbosa fornece mais detalhes sobre o processo de varredura, como o tipo de varredura que está sendo executada ("SYN Stealth Scan" ou "Connect Scan"), o número de portas que estão sendo varridas e o tempo que leva para concluir a varredura. Você também pode ver as portas que foram descobertas como abertas.
Ao comparar a saída verbosa das varreduras SYN e de conexão TCP, você pode obter uma melhor compreensão de como cada tipo de varredura funciona e como eles interagem com o sistema alvo.
Salvar notas de comparação no editor de texto Xfce
Nesta etapa, você usará o editor de texto Xfce para salvar suas observações e comparações das etapas anteriores. Esta é uma etapa crucial para documentar suas descobertas e entender as diferenças entre os tipos de varredura Nmap.
Primeiro, abra o editor de texto Xfce. Você pode fazer isso pesquisando por "Editor de Texto" no menu de aplicativos Xfce ou executando o seguinte comando no terminal:
mousepad notes.txt
Este comando abrirá o editor de texto Xfce (Mousepad) e criará um novo arquivo chamado notes.txt no seu diretório ~/project.
Agora, no editor de texto, anote suas observações sobre as diferenças entre a varredura SYN e a varredura de conexão TCP. Considere os seguintes pontos:
- Velocidade: Qual tipo de varredura foi mais rápido?
- Precisão: Ambos os tipos de varredura identificaram as mesmas portas abertas? Caso contrário, por que isso pode acontecer?
- Furtividade (Stealth): Qual tipo de varredura é considerado mais furtivo e por quê?
- Evasão de Firewall (Firewall Evasion): Como os firewalls podem tratar cada tipo de varredura de maneira diferente?
- Saída Verbosa (Verbose Output): Que informações adicionais você obteve das varreduras verbosas?
Aqui está um exemplo de como suas notas podem ser:
Notas de Comparação da Varredura Nmap:
Varredura SYN (-sS):
- Mais rápida que a varredura de conexão TCP.
- Pode ser menos precisa devido a portas filtradas.
- Considerada mais furtiva, pois não completa o handshake TCP completo.
- Firewalls podem bloquear pacotes SYN, levando a resultados imprecisos.
Varredura de Conexão TCP (-sT):
- Mais lenta que a varredura SYN.
- Mais confiável, pois completa o handshake TCP completo.
- Menos furtiva, pois é facilmente detectável.
- Menos propenso a ser bloqueado por firewalls, fornecendo resultados mais precisos.
Saída Verbosa (-v):
- Fornece informações mais detalhadas sobre o processo de varredura.
- Útil para entender como o Nmap funciona e solucionar problemas.
- Mostra o tipo de varredura que está sendo executada e o número de portas varridas.
Diferenças Observadas:
- A varredura SYN relatou portas "filtradas", enquanto a varredura de conexão TCP relatou portas "fechadas".
- Isso sugere que algumas portas estavam sendo filtradas, impedindo que a varredura SYN determinasse seu estado.
Depois de terminar de escrever suas notas, salve o arquivo clicando em "Arquivo" -> "Salvar" no editor de texto ou pressionando Ctrl+S.
Este arquivo notes.txt será usado na próxima etapa para analisar as diferenças no terminal Xfce.
Analisar diferenças no terminal Xfce
Nesta etapa, você usará o terminal Xfce para analisar ainda mais as diferenças entre as varreduras SYN e de conexão TCP, com base nas notas que você salvou na etapa anterior. Você usará ferramentas de linha de comando para pesquisar padrões específicos e comparar os resultados da varredura.
Primeiro, abra o terminal Xfce.
Agora, vamos usar o comando cat para exibir o conteúdo dos arquivos syn.txt e tcp.txt, que contêm os resultados da varredura Nmap das duas primeiras etapas:
cat syn.txt
cat tcp.txt
Examine a saída de ambos os comandos. Preste atenção às diferenças nos resultados da varredura, como os estados das portas relatados (aberta, fechada, filtrada) e o tempo que levou para concluir as varreduras.
Em seguida, use o comando grep para pesquisar palavras-chave específicas nos resultados da varredura. Por exemplo, você pode pesquisar a palavra "open" em ambos os arquivos:
grep "open" syn.txt
grep "open" tcp.txt
Compare a saída desses comandos. Ambas as varreduras relatam as mesmas portas abertas? Caso contrário, quais são as diferenças?
Você também pode pesquisar outras palavras-chave, como "closed" ou "filtered", para analisar ainda mais os resultados da varredura.
Agora, vamos usar o comando diff novamente para comparar os arquivos syn.txt e tcp.txt:
diff syn.txt tcp.txt
Revise a saída do comando diff. Isso destacará as linhas que são diferentes entre os dois arquivos. Preste atenção às linhas que indicam diferenças nos estados das portas relatadas.
Finalmente, use o comando cat para exibir o conteúdo do seu arquivo notes.txt, que contém suas observações da etapa anterior:
cat notes.txt
Reflita sobre suas observações e compare-as com os resultados da varredura e a saída do comando diff. Suas observações estão alinhadas com os resultados da varredura? Você consegue explicar quaisquer discrepâncias?
Ao usar o terminal Xfce e as ferramentas de linha de comando para analisar os resultados da varredura Nmap, você pode obter uma compreensão mais profunda das diferenças entre as varreduras SYN e de conexão TCP e como elas interagem com o sistema alvo. Essa análise o ajudará a tomar decisões informadas sobre qual tipo de varredura usar em diferentes situações.
Resumo
Neste laboratório, começamos realizando uma varredura SYN em um endereço IP de destino (192.168.1.1 ou localhost) usando o Nmap com o comando nmap -sS -oN syn.txt 192.168.1.1. Isso envolveu a compreensão do propósito de uma varredura SYN como uma varredura de porta TCP "half-open" (meio aberta) mais furtiva, que evita estabelecer uma conexão completa. A saída da varredura foi salva em um arquivo chamado syn.txt em formato normal.
O ponto de aprendizado fundamental foi como executar uma varredura SYN usando o Nmap, interpretar os parâmetros do comando (-sS para varredura SYN, -oN para saída normal para um arquivo) e entender a potencial necessidade de privilégios sudo devido ao uso de pacotes brutos (raw packets). Também aprendemos como visualizar os resultados da varredura usando cat syn.txt.



