Varredura de Portas

Alunos
Juliano Marinho
Lucas de Paula
Lucas Rolim
Rodrigo Haddad
Professor:
Otto Carlos Muniz Bandeira Duarte

Resumo

Varredura de porta, também conhecida com análise de porta ou escaneamento de porta, é o nome dado à técnica usada para identificar o estado de uma porta em uma rede. O principal objetivo dessa técnica é encontrar portas abertas e, dessa forma, uma vulnerabilidade na rede ou sistema. Trata-se de uma técnica largamente utilizada por hackers para realizar ataques ou identificar alvos, uma vez que todos os computadores conectados na internet ou com uma rede local necessariamente precisam ter algumas de suas portas abertas para eventuais trocas de dados ou informações.

Em essência, a varredura de portas consiste em enviar mensagens para cada uma das portas da rede alvo, uma mensagem de cada vez, e analisar a resposta obtida. O tipo de resposta pode evidenciar, por exemplo, que uma determinada porta está vulnerável. Esse ato, quando feito em pequena escala, não pode ser identificado como um crime, a não ser que passe a enviar tantas requisições que possa ser considerado uma negação de serviço (DoS).

Uma analogia comum para o fácil entendimento é que a varredura de portas é como um bandido que toca diversas campainhas em uma rua. A resposta dos moradores, ou a ausência desses, pode identificar uma vulnerabilidade que pode ser aproveitada pelo mau elemento. Em contrapartida, o ato de tocar a campainha é perfeitamente dentro das leis, a não ser que seja com tal frequência que prejudique os moradores da residência.

Ao longo do desenvolvimento deste trabalho, portanto, vamos analisar não só o conceito da varredura de portas, mas também as implicações e os ferramentais mais importantes para o bom entendimento deste tópico.

conceito port scanning

Conceitos Essenciais

Porta

Porta

Portas são um mecanismo essencial de todo computador. Elas proporcionam as interfaces de saída e entrada que o dispositivo precisa para se comunicar com periféricos e outros computadores em uma rede local ou internet.

Uma porta pode ser física ou virtual. Portas físicas, como por exemplo portas ethernet e portas USB, são usadas para aplicações com roteadores e outros periféricos. Portas virtuais, que serão as quais daremos maior atenção neste trabalho, como as dos padrões TCP e UDP, são usadas para estabelecer a conexão e troca de serviços e dados entre computadores em rede.

    0 até 1023 - São as consideradas “portas conhecidas”. Portas nesse intervalo são fornecidas apenas para serviços estabelecidos e grandes empresas ou centros de pesquisa de confiança.

    1024 até 49151 - São as chamadas “portas registradas”. Esse nome significa que as portas nesse intervalo podem ser registradas para protocolos específicos por grandes corporações.
    49152 até 65535 - É o intervalo que engloba as portas dinâmicas e as portas privadas. Portas nesse intervalo podem ser usadas por praticamente qualquer um e, portanto, são as com maior probabilidade de haver vulnerabilidade.
Firewall

Firewall

Firewall é um dispositivo de segurança de rede, baseado em software ou hardware, que controla a entrada e saída de tráfego da rede baseado em um conjunto de regras pré estabelecidas.

Quando estamos falando de varredura de portas o Firewall é considerado o melhor tipo de defesa em que se pode investir. Um Firewall pode ser configurado para negar acesso ou tornar “invisível” o estado das portas para requisições que sigam determinado padrão ou cumpram certos requisitos. Dessa forma, o computador defendido fica de certa forma invisível para visitantes ou sistemas de requisição indesejados ou maliciosos.

Direitos Autorais:

"Este trabalho foi totalmente produzido pelos autores que declaram não terem violado os direitos autorais de terceiros, sejam eles pessoas físicas ou jurídicas. Havendo textos, tabelas e figuras transcritos de obras de terceiros com direitos autorais protegidos ou de domínio público tal como idéias e conceitos de terceiros, mesmo que sejam encontrados na Internet, os mesmos estão com os devidos créditos aos autores originais e estão incluídas apenas com o intuito de deixar o trabalho autocontido. O(s) autor(es) tem(êm) ciência dos Artigos 297 a 299 do Código Penal Brasileiro e também que o uso do artifício de copiar/colar texto de outras fontes e outras formas de plágio é um ato ilícito, condenável e passível de punição severa. No contexto da Universidade a punição não precisa se restringir à reprovação na disciplina e pode gerar um processo disciplinar que pode levar o(s) aluno(s) à suspensão;"

Importância da Varredura de portas

O estudo de técnicas de varredura de porta e o bom entendimento de como gerenciar o fluxo de informações que passa pelas portas de um dispositivo vem se tornando cada vez mais importante nos dias atuais. Grande parte do aumento dessa importância advém do fato da maior parte de técnicas mais avançadas de exploração de falhas de segurança utilizarem a varredura de portas como uma primeira “sondagem” em suas vítimas para encontrar pontos de ataque. Outro grande fator influenciador é o crescimento de dispositivos conectados a internet. Com o possível sucesso da chamada Internet das Coisas, o número de dispositivos conectados na rede aumentará de maneira jamais vista, o que por consequência aumentará o número de portas que precisarão ser utilizadas e exigirá dos profissionais de segurança uma estruturação e gestão do fluxo de abertura e fechamento de portas de maneira muito mais eficiente.

Laptop Infectado

Portas e os perigos de as deixarem abertas

De acordo com o Wikipédia temos a seguinte definição para uma porta:

Uma porta é uma conexão virtual/lógica de dados que pode ser usada por programas para trocar dados diretamente, ao invés de passar por um arquivo ou outro local de armazenamento temporário. As mais comuns são as portas do tipo TCP e UDP, que são usadas para trocar dados entre computadores na Internet.

Uma porta aberta é uma superfície de ataque e um dos princípios fundamentais de Segurança da Informação é o de diminuir ao máximo as superfícies de ataque e garantir que os servidores tenham mínimo possível de seus serviços e informações expostas. Dessa forma, portas abertas desnecessariamente ou de maneira imprudente podem servir de ponto de vulnerabilidade para, por exemplo, ataques de buffer overflow.

Portas abertas podem revelar informações sobre o sistema ou arquitetura de rede de uma possível vítima. Muitas vezes é possível descobrir, por exemplo, que o usuário vítima usa alguma versão de software que possui uma vulnerabilidade já conhecida e então partir para um ataque mais avançado que utilize essa vulnerabilidade.

Outro problema que pode ser causado pela varredura de portas, mesmo quando as portas se encontram fechadas, é o esgotamento de recursos da rede. As diversas requisições enviadas para cada porta, dependendo do volume e da frequência, podem culminar em uma negação de serviço (DoS) e prejudicar o desempenho da máquina do usuário vítima. Isso porque mesmo tratando as requisições enviadas pela varredura como inválida elas ainda consomem processamento de entrada.

Abaixo podemos ver um exemplo de varredura realizado pelo Nmap, que iremos abordar mais afundo nesse trabalho.

Exemplo de Varredura

NMap (Network Mapper) é uma ferramenta de código aberto utilizada para exploração de redes e análise de segurança, seja de hosts únicos ou largas redes. Com ele, é possível determinar os hosts disponíveis na rede, bem como os serviços que cada host dispõe, seus sistemas operacionais além dos tipos de firewall e filtro de pacotes em uso.

O NMap possui diversos métodos de varreduras que podem ser personalizadas, deixando-as fácil ou dificilmente detectáveis. Além disso, alguns desses métodos de varredura podem simular a origem da varredura, logo, falsificando o emissor do ataque, além de poder simular diversas varreduras pela rede.

Timing e Desempenho

O NMap utiliza de paralelismo e algoritmos que aceleram a execução das varreduras, contudo, determinadas escolhas de varredura podem acarretar em uma queda de performance, que também está atrelado ao tamanho da rede.

Usuários experientes executam varreduras em busca apenas de informações que são de interesse, atendendo, inclusive à uma restrição de tempo. Para melhorar os tempos da varredura pode-se omitir testes não críticos, e otimizar os parâmetros de tempo, como “--host-timeout”, que define um tempo limite para tentativa de varredura em um dado host. É possível definir não só o valor, mas também a unidade (horas, minutos, segundos [padrão], milissegundos) aplicando --host-timeout 900s / 900000ms / 900 / 15m.

Outro parâmetro que afeta diretamente o desempenho do NMap é o --min-hostgroup . O NMap tem a capacidade de analisar diversos hosts em paralelo, e faz isso com o auxílio deste comando. O IP destino é dividido em grupos, e, então, cada grupo é analisado por vez. Em geral, grupos grandes são mais eficientes. A desvantagem, é que o relatório da varredura só é exposto ao usuário após o grupo todo ser analisado; assim, caso haja 50 hosts em um grupo, apenas após os 50 serem analisados, é que é possível saber a situação de um dado host nesse meio.

Acompanhado de --max-hostgroup que determina o máximo de hosts para um grupo (O NMap utiliza esse parâmetro como limite superior, enquanto o mínimo é o inferior). Contudo, há uma exceção: caso não hajam hosts suficientes para o número mínimo especificado, o NMap irá utilizar valores inferiores ao limite estabelecido.

Os comandos --min-parallelism ; --max-parallelism controlam o número total de análises que podem estar pendentes por um grupo de hosts. O NMap calcula automaticamente o número ideal, não necessitando trabalhar com esses comandos, muito embora, para usuários avançados e para determinados testes possa ser interessante. É comum utilizar esse comando para agilizar a análise da rede, porém, é sempre um risco pois pode afetar a precisão dos resultados.

Interação em Tempo de Execução

Enquanto o NMap está sendo executado, as teclas pressionadas são capturadas e interpretadas, permitindo assim a interação do usuário com o software sem abortar a operação em andamento naquele instante.

Determinadas teclas alteram opções do scan, enquanto outras exibem informações na tela. Para o segundo caso, existe uma convenção, onde letras minúsculas aumentam a taxa de exibição e letras maiúsculas reduzem a taxa de exibição de novas informações.

Outros Usos do NMap

O NMap consegue, de forma bastante simples (do ponto de vista do usuário final) detectar informações acerca de um dado dispositivo. Com o comando -O você já obtém informações do sistema operacional; adicionando também o comando -v você consegue novas informações sobre o sistema.

Diante dos dados coletados, algumas das informações fornecidas são: tipo de dispositivo, distância da rede, predição de sequência TCP e geração de sequência IP ID.

NMap

Figura 5 - Terminal com relatório de uma varredura com NMap

Modus operandi

O ZMap é o varredor de porta usado para varreduras massivas em todo o espaço IPv4 da rede, almejando a uma porta comum entre todos os hosts varridos e realizando seu objetivo em altíssima velocidade. Esse varredor envia tantos pacotes quanto a NIC e a CPU do remetente aguentam. Pacotes são enviados, no ZMap, através de “raw socket” (socket que permite o envio e recebimento de pacotes sem o uso específico de algum protocolo de transporte) diretamente na camada Ethernet. Desta maneira, o ZMap impede que o Sistema Operacional realize tarefas de rotina sobre os pacotes. Como tecnicamente não é estabelecida uma conexão TCP, assim que o host fonte receber TCP SYN-ACK, a resposta de TCP RST será enviada. Na sua forma básica, esse varredor suporta TPC SYN, ICMP e UDP scans.

O ZMap foi feito para realizar scans de toda Internet (IPv4), mas suporta a exclusão de endereços (blacklisting) das suas varreduras para melhora de performance (endereços da IANA) e outros por pedidos de administradores dos alvos. Quanto aos hosts "disponíveis" para scan, o módulo de recebimento do ZMap precisa saber se o tráfico de pacotes recebido é proveniente de respostas ao scans, ou faz parte de algum tráfico de fundo da fonte. Para que isso ocorra, campos dos pacotes enviados são preenchidos com dados que sejam replicados nos pacotes de resposta. Para cada host varrido, ZMap computa o MAC (Media Access Control) do host de destino nos campos de Número de Sequência e porta de destino (para TCP) e Número de Sequência e identificador ICMP (para ICMP).

Limitações

Apesar de conseguir fazer varreduras rápidas no espaço IPv4, ZMap ainda não é rápido o bastante para fazer varreduras no espaço de endereços IPv6. Além disso, o ZMap também está limitado pela velocidade da internet do host remetente. Uma internet mais lenta do que a usada para testes [1] pode resultar em scans mais lentos, enquanto uma internet mais rápida pode acabar sobrecarregando redes e hosts.

Usos experimentados

Medição de adesão de protocolo

Uma mesma porta deve ser varrida várias vezes ao longo de algum período de tempo, possibilitando, dessa forma, que seja identificado algum acréscimo no número de portas abertas. Caso isso aconteça, pode-se dizer que houve um aumento no protocolo usado naquela porta. Como por exemplo, pode-se configurar o ZMap para fazer varreduras constantes na porta 443, identificando possíveis variações no uso do protocolo HTTPS.

Scanner global de vulnerabilidades de alta velocidade

Uma vulnerabilidade pode ser detectada em hosts no mundo inteiro num espaço curto de tempo. Possibilitando que usuários mal intencionados façam ataques com alta possibilidade de sucesso em portas executando aplicações vulneráveis. Exemplos de vulnerabilidade são o SQL Server operando na porta 1434 (já foi sujeito a buff overflow, possibilitando a execução de código malicioso) e aparelhos UPnP.

Monitoramento da disponibilidade de serviço

Estudos predecessores ao ZMap já previam que o uso do scan ICMP echo request poderiam detectar interrupções em massa da Internet. Durante o Furacão Sandy, que atingiu a costa oeste dos EUA em 2013, o ZMap foi usado para varrer a porta 443 (é usada para a comunicação com websites em geral) de todo o espaço do IPv4 a cada duas horas [1]. O observado foi que, nas localidades afetadas, houve uma queda de 30% na quantidade de portas abertas.

Comunicação anônima

Por causa da característica de enviar incontáveis pacotes para toda a rede IPv4, torna-se impossível de se rastrear qual era o real destinatário de um envio de mensagem objetivando o anonimato.

Principais técnicas de Varredura de Portas

TCP SYN
TCP SYN
Figura 1 - Esquema do TCP SYN

Esse é um dos tipos de varredura mais utilizados devido à sua velocidade de execução, pois em condições favoráveis é capaz de escanear milhares de portas em pouco segundos. Uma das características do TCP SYN é o fato dele ser camuflado, pois durante a sua varredura ele não completa uma conexão TCP, sendo assim menos intrusivo.

Nesse tipo, é enviado um pacote SYN tentando abrir uma conexão. Se for recebido uma resposta SYN/ACK significa que a porta está ouvindo e caso seja recebido um RST como resposta, a porta não estará ouvindo. O diferencial é que quando é recebido um SYN/ACK indicando porta aberta, logo é enviado um RST para cancelar a conexão, assim na maioria das vezes, não é detectado nenhuma conexão.

ICMP

É o scan base de vários tipos de varredores de porta. É usado antes dos outros tipos de scan para detectar quais hosts estão conectados à rede. Um ICMP echo request é enviado para o host alvo. Se e o alvo responder com um ICMP echo reply, ele está ativo.

UDP

Serviços UDP são amplamente difundidos pela rede e o escaneamento das portas que registram serviços UDP costumam ser mais lentos, pois ao enviar um pacote UDP, ele espera por um certo tempo uma resposta. Quando a resposta não chega, supõe-se que a porta está aberta ou filtrada. Na presença de firewall, como não haverá resposta, o scan pode retornar como se a porta estivesse aberta, sendo que está filtrada. Em outros casos, será retornado um erro e a porta será classificada como fechada.

TCP Connect
TCP Connect
Figura 2 - Esquema do TCP Connect

Esse tipo é utilizado quando não é possível usar o TCP SYN. A diferença entre esses dois é que, no TCP Connect, ao receber um SYN/ACK indicando porta aberta, o sinal de RST não é enviado, mas sim um ACK, estabelecendo uma conexão com a porta. O estabelecimento dessa conexão demanda mais tempo e também é facilmente percebido por qualquer programa com o propósito de detectar alguma atividade estranha nas portas, pois informações do IP invasor estão nessa resposta.

X-MAS Tree, TCP Null e FIN

Esses três tipos de varredura tem o comportamento muito parecidos. A diferença são as flags TCP dos pacotes de sondagem. No X-mas é enviado um pacote com as flags FIN, PSH e URG ativados, No FIN é marcado a flag FIN (como o próprio nome já diz), já o TCP Null não marca nenhuma flag no pacote. Quando nenhuma resposta é recebida, a porta está aberta. Caso um RST ou ACK seja recebido, significa que a porta está fechada.

Idle

Tipo de varredura altamente camuflada devido à sua natureza cega. Para que funcione, são necessárias três máquinas: a do invasor, a máquina zumbi e a máquina alvo.

Idle
Figura 3 - Esquema do Idle

A máquina zumbi é uma máquina que não está realizando absolutamente nenhuma conexão, pois será possível saber se a porta da máquina alvo está aberta através do IPID na máquina zumbi. IPID é um identificador que há em todo pacote e é incrementado sequencialmente.

O invasor manda um SYN/ACK para o zumbi que não espera conexão, então ele manda um RST e retorna um IPID incrementado em um. Em seguida, a máquina invasora manda um SYN para a máquina alvo que retorna um SYN/ACK para o zumbi que novamente retorna outro RST, incrementando o IPID em mais um novamente. Assim, se a máquina invasora manda SYN/ACK novamente para o zumbi, ele retornará o RST com um IPID incrementado em dois, mostrando assim que a porta testada da máquina alvo está aberta. Se a porta estiver fechada e ela receber um SYN, o retorno será um RST direcionado ao zumbi que não terá seu IPID incrementado. Assim, se o invasor mandar um SYN/ACK novamente para o zumbi, ele retornará um RST com o seu IPID incrementado apenas em um.

FTP Bounce
FTP Bounce
Figura 4 - Etapas do FTP Bounce

Nesse caso, o invasor solicita a um servidor FTP que um arquivo seja enviado a uma determinada porta para o alvo. O alvo retorna informações para o servidor FTP e esse servidor entrega essa informação para o invasor. Assim, o invasor terá informações sobre a determinada porta.

TCP ACK

Essa técnica não consegue identificar se uma porta está ou não aberta, mas sim se há um firewall presente e quais são os conjuntos de regras que compõem esse firewall e as portas filtradas por ele.

Um pacote ACK é enviado, caso seja recebido um RST, então não há firewall, mas nada se pode dizer sobre a disponibilidade da porta. Quando não há resposta ou quando há sinais de erro, isso significa que há um firewall bloqueando esse pacote.

IP Protocol

Muito semelhante com o UDP, porém ele envia cabeçalhos de pacote IP. Quando recebe qualquer resposta ou nenhuma, a porta é marcada como aberta.

TCP Window

Muito semelhante ao ACK, porém ele diferencia a porta de aberta e fechada. Ele faz isso analisando a janela TCP do pacote RST devolvido. Essas janelas possuem valores positivos quando a porta do RST está aberta e zero quando está fechada.

Bibliografia

[1] Z. Durumeric, E. Wustrow, J. Alex Halderman, Univesidade de Michigan. ZMap: Fast Internet-wide Scanning and Its Security Applicatons, Agosto 2013.

[2] Diego Kreutz et al; Software-Defined Networking: A Comprehensive Survey.

[3] J. Kurose, K. Ross. Computer Networking: A Top-Down Approach.

[4] L. Gordon; The Official Nmap Project Guide to Network Discovery and Security Scanning

  • [1] Ícone Firewall disponibilizado por Madebyoliver
  • [2] Ícone Connect disponibilizado por Freepik
  • [3] Figura 1. Defenses Against TCP SYN Flooding Attacks - The Internet Protocol Journal - Volume 9, Number 4
  • [4] Figura 2. INFOSEC INSTITUTE Port Scanning using Scapy
  • [4] Figura 3. Nmap: a “Hacker Tool” for Security Professionals
  • [5] Figura 4. Computer Security and PGP BLOG - What is an FTP Bounce Attack ?
  • [6] Figura 5. NMap Manual (NMap.org)
  • [7] Figura 6. ZMap: Fast Internet-wide Scanning and Its Security Applicatons
  • [8] Figura 7. ZMap: Fast Internet-wide Scanning and Its Security Applicatons
  • Conclusão

    A varredura de portas, além de possibilitar a descoberta de quais serviços estão sendo executados nos hosts de uma determinada rede, o que é interessante para um administrador de redes, por exemplo, também detecta portas vulneráveis que podem ser usadas para ataques externos. Assim, a varredura de portas é uma ferramenta poderosa tanto para usuários com boas intenções, como para usuários maliciosos.

    Existem vários tipos de port scanners. Dentre eles, dois se destacam; ZMap e NMap. Por possuírem características díspares, a análise deles, em conjunto, é muito conclusiva. Apesar de funcionarem com o mesmo objetivo (varrer portas), cada varredor alcança um resultado muito diferente. O ZMap visa, através da sua varredura única de porta e global do IPv4, a reunir informações sobre toda rede. Por outro lado, o NMap age de maneira mais individual, dando mais atenção a cada host e fazendo uma varredura total, ou parcial, de suas portas.

    Como dito anteriormente, mesmo sendo scanners com objetivos diferentes, ZMap e NMap alcançam seus resultados da mesma forma: através da transmissão de pacotes através da rede. O ZMap, em sua configuração inicial, realiza varreduras TCP SYN, UDP e ICMP, enquanto o NMap possui uma gama bem maior de scans, realizando esses e outros tipos, pois deve se preocupar em varrer várias portas num mesmo alvo sem ser detectado.

    Por conta dessas ameaças, o usuário precisa entender que um host está em constante risco de ataque e medidas de segurança devem ser tomadas. O firewall é uma das ferramentas de segurança indicadas para esse tipo de problema, pois previne conexões indesejadas às portas abertas, criando condições para que pacotes sejam entregues ao host protegido.

    NMap vs ZMap

    NMap e ZMap foram desenvolvidos para propósitos bem diferentes. Enquanto o NMap é otimizado para varrer um número grande de portas em um host ou num número reduzido de hosts, o ZMap é feito para varrer somente uma porta em toda a rede da Internet. A título de comparação, ao se varrer a porta 443 em todo o espaço de endereços IPv4 usando o TCP SYN, é estimada uma duração de 1h10min para o ZMap e 63 dias para o NMap [1].

    comparacao1
    Figura 6 - Comparação em número com NMap

    Sondagem otimizada

    Enquanto o NMap adapta sua taxa de transmissão de pacotes para evitar saturar as redes da fonte e do destino, ZMap assume que a rede do alvo consegue sustentar sua taxa de envio e que, por conta da aleatoriedade nas escolhas dos alvos, não haverá perigo de sobrecarregar um caminho em comum. Na fonte, o ZMap manda tantos pacotes quanto a Placa de Rede do host permite, “pulando” o protocolo TCP/IP e gerando Ethernet frames diretamente.

    Conexão sem estado

    Enquanto NMap mantém o estado de cada conexão para ter controle de hosts varridos, retransmissões e timeouts, ZMap não registra informações dos endereços varridos, ou que precisam ser varridos. Para evitar repetições de endereços e manter a aleatoriedade, esse scan usa um método chamado “permutação aleatória gerada por um grupo de multiplicação cíclica” [1]. Ao invés de fazer controle dos timeouts, ZMap aceita respostas aos pacotes enviados por toda a duração do scan.

    Retransmissão

    Enquanto NMap transmite, por padrão, dois pacotes por porta e faz adaptações de retransmissão de acordo com os timeouts causados por perda de pacotes, ZMap sempre manda uma quantidade fixa de pacotes (um). Apesar de parecer que esse scan acaba ficando defasado no quesito confiabilidade, foi estimado que, mesmo com o scan usando apenas um pacote e sem uso de timeouts, 98% dos alvos são varridos.

    comparacao2
    Figura 7 - Comparação de características

    1.Explique em poucas palavras o que é Varredura de Portas e como funciona.

    Varredura de portas é uma técnica utilizada para testar a vulnerabilidade de redes ou de sistemas, verificando se as portas conectadas estão abertas ou fechadas. Durante a varredura são enviadas mensagens a determinadas portas, e é possível fazer uma análise da resposta dessas mensagens, assim é possível determinar se a porta está ou não vulnerável.

    2.Explique as três características que garantem que o ZMap é ideal para varreduras num espaço muito largo de endereços.

    ZMap envia pacotes tão rapidamente quanto a placa de rede do remetente aguenta pulando protocolos de transporte e enviando frames diretamente na camada Ethernet através de raw sockets. Não há armazenamento de endereços e, por consequência, nem controle de timeouts e retransmissões, ou seja, pode ser considerado sem estado. Somente um pacote é enviado para cada host alvo, sem retransmissões.

    3.Explique alguns modos de utilização do ZMap.

    Detecção global de vulnerabilidades: é possível descobrir o volume de hosts que executam aplicações com falhas. Comunicação anônima: através de alterações no pacote enviado durante a varredura, é possível que haja comunicação na qual não é possível saber qual host é o verdadeiro alvo. Monitoramento da disponibilidade do serviço: através do ICMP sweep, pode ser checada a disponibilidade de acesso a rede, e, por conta da alta velocidade, permitir que medidas imediatas sejam tomadas. Medição da adoção de protocolos: por haver portas associadas a certos protocolos, é possível medir sua adesão ao longo do tempo. Uma vez que o ZMap encontra essa porta aberta, é certo que tal protocolo esteja sendo utilizado.

    4.Qual é a principal diferença entre o TCP SYN e o TCP Connect?

    A principal diferença entre esses dois tipos de varredura é que ao ser recebido uma resposta SYN/ACK do servidor, o TCP SYN envia um RST para que a conexão não seja completada, já o TCP Connect manda um ACK que estabelece a conexão. Assim, o TCP SYN acaba sendo bem mais rápido do que o TCP Connect, já que não precisa de uma conexão completa.

    5.Visto que é possível interagir com o NMap ao longo de uma varredura, responda: é possível alterar configurações da varredura ao longo de sua execução?

    Nem todas as configurações podem ser alteradas em tempo de execução, pois, caso contrário algumas informações poderiam ser perdidas. Contudo, é possível alterar o nível de verbosidade (velocidade com que as informações são exibidas no terminal durante uma varredura); ligar ou desligar o rastreamento de pacotes (packet tracing); exibir informações de ajuda; e, também alterar o nível do debug, a fim de extrair mais informações da varredura.

    Para fins de aplicação dos conceitos apresentados aqui nesse trabalho, foi realizado um teste prático utilizando um ambiente virtual, emulado pelo Virtual Box, com sistema operacional Kali Linux.

    Máquina Virtual sendo criada

    Antes de apresentar de fato os testes, abaixo estão mais alguns conceitos importantes para pleno compreendimento do procedimento realizado:

    VirtualBox: Ambiente de virtualização de máquinas Open Source, sob licença GNU GPL. É compatível com Windows, Solaris, Linux e Macintosh, e suporta praticamente todos os tipos de sistemas operacionais existentes. Há uma grande comunidade focada no desenvolvimento e aprimoração do produto.

    Kali Linux: É uma distribuição Linux baseada no Debian, voltado para auditoria de segurança de computadores em geral. Dispõe de inúmeros softwares para testes de segurança, dentre eles o NMap, apresentado neste trabalho.

    O Teste Prático

    Tendo instalado o ambiente necessário, foi realizado o seguinte teste: Nmap –sp 192.168.0.0-100 (faz a varredura dos endereços de IP de 192-168.0.0 até 192-168.0.101)
    O resultado foi o seguinte:

    Teste 1 - O tempo necessário para analisar cada IP é irrisório

    O segundo teste realizado foi Nmap –sS 192.168.0.NUMERO_PORTA -O (Realiza a varredura da porta de número escolhido utilizando a técnica Nmap. O parâmetro Ss significa que estamos usando a técnica SYN scan. O parâmetro –O, por sua vez, significa que estamos fazendo uma detecção de Sistema Operacional.)

    Teste 2 - Nesse caso vemos que todas as requisições foram filtradas, o que nos lembra da importância do Firewall.

    Algumas vezes somos capazes de obter alguma informação mesmo com as requisições do Nmap sendo filtradas. Contudo, esses resultados não são confiáveis. Abaixo um exemplo.

    Teste 3 - Exemplo de testes com resultados não confiáveis.

    Em determinados casos um aviso RTTVAR (Round Trip Time Variation) é exibido devido ao aumento do tempo para se varrer uma ou mais portas. Geralmente é causado por filtros que são usados pelo Firewall da “vítima”.

    Teste 4 - RTTVAR sendo exibido após tentativa de varredura em uma vítima com Firewall.

    Em um dos testes foi possível comprovar também o efeito de uma boa configuração de segurança contra uma varredura de portas:

    Teste 5 - Escanear a porta de um determinado endereço demorou 44 minutos, quando os demais comumente demoraram segundos.

    Abaixo está o exemplo de portas que estão abertas, informadas após uma varredura do NMap: