Prévia do material em texto
Varredura de Portas e Serviços APRESENTAÇÃO Você já ouviu falar em ataques cibernéticos, invasão de sistemas e vazamento de dados na rede? Atualmente, esse tipo de notícia tem se tornado comum, pois, hoje, tudo tem algum tipo de conexão ou armazena algum de dado, até mesmo uma localização. Nesta Unidade de Aprendizagem, serão abordados assuntos relacionados à varredura de portas e serviços, etapa crucial para que uma invasão ou ataque possa ocorrer. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Conceituar o que é uma varredura de porta.• Identificar as portas e os serviços.• Implementar técnicas de varredura.• DESAFIO A empresa ABC contratou você para gerenciar a equipe de segurança da informação e suporte de redes. Dada a sua nova função, seu gerente solicitou que você listasse medidas para que esse tipo de situação não volte a se repetir, devendo apresentar precauções a serem tomadas pela empresa. INFOGRÁFICO A intrusão pode ser realizada por um usuário legítimo que tenta obter acessos adicionais aos que já possui ou, até mesmo, por um usuário que pretende agir de forma maliciosa, na maioria das vezes, com finalidades financeiras. No Infográfico a seguir, você verá o que é a intrusão e como ela ocorre. CONTEÚDO DO LIVRO Geralmente, a varredura de portas e serviços antecede a etapa de enumeração para que haja um ataque cibernético, o qual pode atingir não apenas um computador si, mas toda a rede. Dessa forma, a identificação das portas ocorre para que as vulnerabilidades da rede sejam reveladas, facilitando a execução de ataques maliciosos. No capítulo Varredura de portas e serviços, da obra Fundamentos de Segurança da Informação, você poderá compreender melhor o contexto que envolve a varredura de portas e serviços, além de conhecer suas definições. Ainda, você verá como as portas são identificadas, bem como algumas das principais formas de realizar uma varredura. Boa leitura. FUNDAMENTOS DE SEGURANÇA DA INFORMAÇÃO Izabelly Soares de Morais Varredura de portas e serviços Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: Conceituar varredura de porta. Identificar as portas e serviços. Implementar técnicas de varreduras. Introdução Ataques cibernéticos, vazamentos de dados e invasão de sistemas são ocorrências que nos últimos 15 anos têm preocupado cada vez mais o cidadão comum. Mais do que nunca, nossos equipamentos estão inces- santemente trocando dados com servidores distantes. Nossos relógios, carros, ou mesmo geladeiras estão constantemente conectados com a World Wide Web, de forma que mesmo os dispositivos mais inocentes podem armazenar algum tipo de informação, até nossa localização em um dado momento. Nesse contexto, entender algumas das formas uti- lizadas por esses dispositivos para se comunicar pode nos tornar mais aptos a protegermos. Neste capítulo, abordaremos assuntos relacionados à varredura de portas e serviços, uma etapa crucial para que uma invasão ou ataque possa ocorrer. É importante que você tenha conhecimentos acerca do tema, até mesmo para que tente se proteger deste tipo de ação maliciosa à qual sempre estamos sujeitos. Varredura de portas A experiência relacionada à varredura de portas e serviços está totalmente ligada ao contexto de uma invasão de rede e de segurança da informação. E quando falamos de invasão estamos expondo automaticamente algumas maneiras de evitar este tipo de situação. Conforme Goodrich e Tamassia (2013, p. 293): Um sistema de detecção de intrusão (intrusion detection system, IDS) é um sistema de software ou hardware que é usado para detectar sinais de atividade maliciosa em uma rede ou um computador individual. As funções de um IDS são divididas entre sensores IDS, que coletam dados em tempo real sobre o funcionamento dos componentes da rede e computadores, e um gerente IDS, que recebe relatórios de sensores (grifos do autor). Ainda sob o ponto de vista dos autores, um IDS é destinado a detectar várias ameaças, incluindo: Impostor — um atacante que está falsamente usando a identidade e/ ou credenciais de um usuário legítimo para obter acesso a um sistema de computadores ou rede. Infrator — um usuário legítimo que realiza ações às quais não está autorizado. Usuário clandestino — um usuário que tenta bloquear ou encobrir suas ações eliminando arquivos de auditoria e/ou de registros do sistema. Devemos considerar que existem alguns passos primordiais para ocorrer um ataque cibernético. Dentre eles, podemos destacar o que chamamos de varredura. Conforme Goodrich e Tamassia (2013), a varredura de portas é responsável pela coleta de informação destinada a determinar quais portas de um host estão abertas para conexões Transmission Control Protocol (Protocolo de Controle de Transmissão, ou TCP). Para que possamos compreender melhor o papel da varredura na invasão, primeiro devemos compreender as etapas adjacentes a esse processo. Antes da varredura, o primeiro passo é a análise de perfil (do público alvo). O perfil sistemático e metódico de uma organização permite aos invasores criar um quadro quase completo de sua segurança (McCLURE; SCAMBRAY; KURTZ, 2014). Na etapa de reconhecimento, o hacker busca informações sobre a vítima, ação que pode ser realizada a partir de uma base de dados do tipo WHOIS, na qual o hacker busca informações de domínio, contatos e endereços IP. Essas informações são públicas na Internet e acessá-las não representa nenhum tipo de delito. No Brasil, o registro BR é o responsável pela base de dados de WHOIS de qualquer empresa.br (MORAES, 2010). Varredura de portas e serviços2 Após a varredura, são realizadas as enumerações. Para Moraes (2010), este processo testa os serviços identificados no passo anterior para verificar se eles estão vulneráveis. Os serviços podem ser: File Transfer Protocol — podemos verificar se o FTP anônimo está habilitado. Simple Mail Transfer Protocol — podemos verificar se o relay do servidor de e-mail está aberto, permitindo assim o envio de um e-mail falso de um usuário não autorizado. Domain Name System — pode-se verificar se o servidor DNS permite zone transfer e, desta maneira, capturar todos os registros e nomes de máquinas internas do servidor de DNS. Web — pode-se identificar a versão do servidor Web para depois esco- lher o melhor exploit (exploração da vulnerabilidade) a ser utilizado. Simple Network Management Protocol — é possível realizar vários ataques, uma vez que muitos equipamentos possuem Management Information Base onde as community strings estão configuradas com o padrão public ou private. O software utilizado para isso é o SNMP Walk. Se determinar o perfil é o equivalente a cercar um local em busca de informações, então a varredura é o equivalente a inspecionar portas e janelas como pontos de entrada em potencial. Durante a determinação do perfil, obtivemos uma lista de blocos de rede IP e endereços IP por meio de diversas técnicas, incluindo consultas de WHOIS e ARIN. “Essas técnicas fornecem ao administrador de segurança (e ao hacker) informações valiosas sobre a rede alvo, incluindo nomes e números de telefone de funcionários, intervalos de endereço IP, servidores DNS e servidores de correio eletrônico” (McCLURE; SCAMBRAY; KURTZ, 2014, p. 48). De acordo com Goodrich e Tamassia (2013), um IDS é destinado a detectar ataques e ameaças automatizadas, incluindo: ataques de negação de serviço — ataques a redes destinados a sobrecarregar um host e impedir acessos legítimos. ataques de malware — ataques de software malicioso que se replica, como cavalos de troia, vermes de computadores, vírus, etc. 3Varredura de portas e serviços Identificação das portas e de serviços Para Goodrich e Tamassia (2013, p. 302): Determinar qual tráfego é permitido através de um firewall e quaisportas em uma máquina alvo estão executando serviços remotos é uma etapa crucial na análise de uma rede em busca de fragilidades de segurança. Qualquer técnica que permita a um usuário enumerar quais portas em uma máquina estão aceitando conexões é conhecida como varredura de porta. Portas podem estar abertas (aceitando conexões), fechadas (não aceitando conexões) ou bloqueadas (se um firewall ou outro dispositivo está evitando que tráfego alcance a porta de destino). A varredura de portas tem uma reputação legal e ética um tanto controversa: embora possa ser usada para propósitos legítimos, para avaliar a segurança da rede privativa de alguém, também é comumente usada para fazer o reco- nhecimento de uma rede em preparação para um ataque. Portanto, realizar varredura de portas é uma forma preliminar de detectar uma intrusão. Um dos programas de varreduras de portas mais popular em uso é o nmap [...] (grifos do autor). Nmap é um software gratuito e de código aberto. Saiba mais acessando o link ou código a seguir: https://goo.gl/IN14Wj Ainda sob ponto de vista dos autores: [...] portas abertas representam um ponto de contato entre a Internet e a apli- cação que está ouvindo essa porta particular. Como tal, portas abertas são alvos potenciais para ataque. Se uma parte mal-intencionada puder explo- rar com sucesso uma vulnerabilidade do sistema operacional do host ou da aplicação que estiver ouvindo uma porta aberta, é possível obter acesso ao sistema alvo e ganhar uma base de operações na rede que pode ser usada para exploração posterior. Devido a esse risco, é recomendável abrir portas apenas para serviços essenciais da rede e assegurar que as aplicações que ouvem essas portas estejam atualizadas e corrigidas contra vulnerabilida- Varredura de portas e serviços4 des recentes de software. Da mesma forma, administradores algumas vezes realizam varreduras de portas em suas próprias redes de computadores para revelar quaisquer vulnerabilidades que devem ser fechadas (GOODRICH; TAMASSIA, 2013, p. 302). Técnicas de varredura Inicialmente, podemos verifi car se o sistema se encontra ativo. Dessa forma, conforme McClure, Scambray e Kurtz (2014, p. 48): Embora possamos ter uma lista de intervalos e alguns servidores suspeitos, não sabemos se existe realmente um host alocado para um IP específico e se esse host está ligado e online. Podemos deduzir isso fazendo uma varredura de ping dos endereços e intervalos de endereços que reunimos durante a fase da determinação do perfil. Para Goodrich e Tamassia (2013), algumas das principais técnicas são: Varreduras TCP — o método mais simples de varredura de portas, também conhecido como varredura de conexão, no qual a parte que está fazendo a varredura tenta iniciar uma conexão TCP em cada uma das portas da máquina alvo. Essas tentativas são feitas usando uma chamada padrão do sistema operacional para abrir uma conexão TCP em uma porta especificada. As portas que completarem a conexão estão abertas, enquanto aquelas que não completarem estão fechadas ou bloqueadas. Varreduras SYN — a parte que está realizando a varredura emite um pacote TCP de baixo nível marcado com o indicador SYN para cada porta na máquina alvo. Se a porta está aberta, o serviço que está ouvindo aquela porta irá retornar um pacote marcado com o indicador SYN–ACK e, se não, nenhuma resposta será́ emitida. Ao receber um pacote SYN–ACK, quem está fazendo a varredura emite um pacote RST para terminar, em vez de completar o handshake TCP. Varredura ociosa — esta técnica de varredura procura outra máquina, conhecida como “zumbi”, que tenha números de sequência TCP previsíveis. O atacante pode usar a implementação fraca do TCP na máquina zumbi como uma ferramenta para realizar uma varredura de portas em um alvo separado sem deixar nenhuma evidência na rede alvo. Primeiro, o atacante envia uma 5Varredura de portas e serviços sondagem para a zumbi, na forma de um pacote TCP SYN–ACK. Como esse pacote não foi solicitado pela máquina zumbi, ela irá responder ao atacante com um pacote RST contendo um número de sequência. O atacante então envia um pacote SYN para o alvo que ele deseja varrer, mas falsifica o endereço IP de origem como sendo da máquina zumbi. Se a porta varrida está aberta, o alvo irá responder para a zumbi com um pacote SYN–ACK. Como a zumbi não abriu a conexão com um pacote SYN, ela responde ao alvo com outro pacote RST, e incrementa seu contador de número de sequência. Quando o atacante sonda novamente a máquina zumbi, esta verifica o número de sequência recebido. Se este foi incrementado, então a porta escolhida no alvo é aberta e, se não, está fechada ou bloqueada. Como pode ser difícil encontrar uma zumbi com números de sequência previsíveis, essa varredura não é frequentemente usada na prática, porém fornece uma maneira eficaz de fazer uma varredura em um alvo sem deixar qualquer registro do endereço IP do atacante na rede alvo (GOODRICH; TAMASSIA, 2013). A Figura 1 traz uma demonstração visual deste tipo de varredura. Varreduras UDP — embora as varreduras descritas até aqui possam coletar informação sobre portas TCP, uma técnica diferente deve ser usada para verificar o estado de portas User Datagram Protocol. Como UDP é um protocolo sem conexão, existem menos oportunidades para coletar informa- ções. A maioria das varreduras de portas UDP simplesmente envia um pacote UDP para a porta especificada. Se a porta estiver fechada, em geral o alvo vai enviar um pacote ICMP “destino inatingível”. Se a porta estiver aberta, nenhuma resposta será́ enviada. Contudo, essa varredura não é muito confi- ável, porque portas abertas e portas bloqueadas por um firewall irão resultar em nenhuma resposta. Para melhorar a confiabilidade da resposta, muitas varreduras de portas optam por consultar portas UDP usando pacotes UDP contendo as cargas para a aplicação apropriada. Por exemplo, para verificar o estado da porta 53 (porta padrão para DNS) uma varredura de portas pode enviar uma requisição DNS para o alvo. Essa técnica pode ser mais confiável, mas é menos versátil, no sentido de que requer uma sondagem especializada para cada porta alvo (GOODRICH; TAMASSIA, 2013). Varredura de portas e serviços6 Figura 1. Uma varredura ociosa: (a) O atacante sonda um zumbi com números de sequência previsíveis. (b) O atacante envia um pacote TCP falsificado para o alvo. (c) O atacante verifica o estado das portas sondando o zumbi novamente. Fonte: Goodrich e Tamassia (2013, p. 305). (a) (b) (c) Cliente nocivo Zumbi Resposta RST: seq = x Sondagem SYN-ACK Resposta SYN-ACK Resposta RST: seq = x +1 Sondagem SYN, IP de origem falsi�cada Alvo Sondagem SYN-ACK Resposta RST: seq = x + 2 Escaneamento de ping — demonstra que o host remoto está ativo ao enviar pacotes de solicitação eco ICMP para esse host. Se o host-alvo envia pacotes de volta, pode-se supor que o host está ativo. Entretanto, às vezes os hosts bloqueiam ou derrubam pacotes de solicitação eco ICMP. Isso resulta em uma leitura falso-negativa desse host específico. Essa é uma falha do escaneamento de ping (BASTA, A.; BASTA, N.; BROWN, 2014). 7Varredura de portas e serviços “Fazer ping de rede significa enviar certos tipos de tráfego para um alvo e analisar os resultados (ou a falta deles)” (McCLURE; SCAMBRAY; KURTZ, 2014, p. 48). Escaneamento de protocolo IP — examina um host-alvo para encontrar os protocolos IP suportados. Nesse método, o escaneador transmite pacotes IP para cada protocolo em um host-alvo. Se um protocolo no host-alvo responde com uma mensagem unreachable do ICMP para o escaneador, logo o host- -alvo não usa esse protocolo. Se não há resposta, então o hacker assume que o host-alvo suporta esse protocolo (BASTA, A.; BASTA, N.; BROWN, 2014). Uma ferramenta que pode ser usada para detectar intrusões, incluindo varredura de portas, é um honeypot (pote de mel). Neste caso, um computadoré usado como “isca” para intrusos. Muitas vezes é colocado na rede de uma maneira que o torna atraente, como estar configurado com um software com vulnerabilidades conhecidas e com seu disco rígido repleto de documentos que aparentam conter segredos da empresa ou outra informação aparentemente valiosa (GOODRICH; TAMASSIA, 2013). A determinação do status das portas (se estão abertas, fechadas ou blo- queadas) é muitas vezes desejável para que se obtenha informações adicionais sobre um sistema alvo (GOODRICH; TAMASSIA, 2013). Em particular, o conhecimento do tipo e da versão de cada serviço remoto e da versão do sistema operacional podem ser valiosos no planejamento de um ataque. Os varredores de portas podem explorar o fato de que cada sistema operacional tem leves diferenças na sua implementação da pilha TCP/IP e, por isso, pode responder diferentemente às diversas requisições ou sondagens. Para Basta, Basta e Brown (2014, p. 47): A maioria dos escaneadores é escrita nas linguagens C ou Perl; além disso, para criar um escaneador é necessário ter conhecimento profundo dessas complexas linguagens de programação. Um amplo conhecimento das rotinas TCP/IP também é necessário para desenvolver um escaneador. Varredura de portas e serviços8 Entretanto, é desnecessário criar e construir um escaneador desde o início. Há muitas opções de có digo–fonte e binários compilados de ferramentas de escaneamento de código aberto, freeware e licenças shareware. Apesar dos primeiros escaneadores serem baseados em plataformas UNIX, eles estão disponíveis atualmente para plataformas Windows e Macintosh. Os autores demonstram, por meio do Quadro 1 a seguir, algumas das principais ferramentas de escaneamento. Fonte: Adaptado de Basta, Basta e Brown (2014, p.47–48). Fase Nome do scaneador Link Descoberta Nmap http://nmap.org UnicornScan www.unicornscan.org Reconhecimento Fierce http://ha.ckers.org/fierce Maltego www.paterva.com/ web4/index.php/maltego PassiveRecon https://addons. mozilla.org/en-US/ firefox/addon/6196 tcpdump www.tcpdump.org Wireshark www.wireshark.org Identificação de vulnerabilidade Nessus www.tenablesecurity. com/nessus NeXpose www.rapid7.com Nipper www.titania.co.uk OpenVAS www.openvas.org Qualys www.qualys.com SAINT www.saintcorporation. com Exploração Core Impact www.coresecurity.com MetalSploit www.metalsploit.com BackTrack www.backtrack-linux.org Quadro 1. Fases e ferramentas de escaneamento 9Varredura de portas e serviços O Quadro 1 ainda relaciona alguns escaneadores populares e os locais da internet nos quais eles podem ser encontrados com facilidade. O Quadro também documenta as várias fases do processo do teste de invasão no qual esses escaneadores em particular podem ser mais adequados. BASTA, A.; BASTA, N.; BROWN, M. Segurança de computadores e teste de invasão. São Paulo: Cengage Learning, 2014. GOODRICH, M. T.; TAMASSIA R. Introdução à segurança de computadores. Porto Alegre: Bookman, 2013. McCLURE, S.; SCAMBRAY, J.; KURTZ, G. Hackers expostos: segredos e soluções para a segurança de redes. 7. ed. Porto Alegre: Bookman, 2014. MORAES, A. F. Segurança em redes: fundamentos. São Paulo: É rica, 2010. Leituras recomendadas ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR/ISO/IEC 17799. Tecnologia da informação: código de prática para a gestão da segurança da informação. São Paulo: ABNT, 2002. PEIXOTO, M. C. P. Engenharia social e segurança da informação na gestão corporativa. Rio de Janeiro: Brasport, 2006. POLIZELLI, D. L.; OZAKI, A. M. Sociedade da informação: os desafios da era da colaboração e da gestão do conhecimento. São Paulo: Saraiva, 2008. Varredura de portas e serviços10 Encerra aqui o trecho do livro disponibilizado para esta Unidade de Aprendizagem. Na Biblioteca Virtual da Instituição, você encontra a obra na íntegra. DICA DO PROFESSOR A utilização constante de computadores para a execução das mais variadas atividades acabou atraindo o interesse não apenas pelo lado positivo de suas funcionalidades, mas pela quantidade de informações valiosas contidas nesses recursos. Dessa forma, a confidencialidade é um dos principais fatores ligados à Segurança da Informação. Nesta Dica do Professor, você ;vai conhecer mais sobre a confidencialidade. Conteúdo interativo disponível na plataforma de ensino! EXERCÍCIOS 1) Um sistema de detecção de intrusão (intrusion detection system - ISD) é utilizado para detecção de atividades maliciosas em uma rede ou, até mesmo, em um computador específico, podendo este ser pessoal ou corporativo. Assinale a alternativa que traz uma das possíveis ameaças que o ISD é capaz de detectar. A) Um falso ataque utilizando uma identificação com o objetivo de ter acesso a um determinado sistema denomina-se usuário clandestino. B) O bloqueio ou a eliminação de arquivos do sistema caracterizam a ação de um infrator. C) Um impostor encobre suas ações eliminando registros do sistema. D) Um usuário clandestino se caracteriza como aquele que realiza diversos testes de bloqueio do sistema por meio de tentativas de erros e acertos de senha de acesso. E) O acesso a funcionalidades do sistema – as quais não condizem com o perfil do usuário – caracteriza a ação de um infrator. 2) No decorrer dos anos, os sistemas computacionais passaram por diversas mudanças. Entretanto, deve-se ter em mente que algumas características acabaram sendo herdadas, uma delas é o acesso à Internet. Contudo, muitos ainda acreditam que todos os sistemas são sempre confiáveis. Assinale a alternativa que traz o conceito acerca da etapa de reconhecimento de perfil. A) É um processo que pode ser realizado em uma base de dados do tipo WHOIS, na qual o hacker busca informações de domínio, contatos e endereços IP. B) É uma série de ataques a redes com o objetivo de sobrecarregar um host e impedir acessos legítimos. C) São diversos ataques de softwares maliciosos que se replicam, como cavalos de Troia, vermes de computadores, vírus, entre outros. D) É uma ação voltada para a divulgação das informações confidenciais financeiras do cliente na rede. E) É a tentativa de bloquear registros do sistema, impedindo o acesso tanto aos softwares como aos recursos de hardware. 3) Conforne Goodrich et al. (2013,p.302), "qualquer técnica que permita a um usuário enumerar quais portas em uma máquina estão aceitando conexões é conhecida como varredura de porta. " Assinale a alternativa que traz o conceito acerca dos aspectos que representam um ponto de contato entre a Internet e a aplicação que está ouvindo essa porta particular. A) Portas ociosas. B) Portas abertas. C) Portas fechadas. D) Portas semiabertas. E) Portas bloqueadas. 4) Como pode ser difícil encontrar uma zumbi com números de sequência previsíveis, essa varredura não é frequentemente utilizada na prática, porém, fornece uma maneira eficaz de fazer uma varredura em um alvo sem deixar qualquer registro do endereço IP do atacante na rede-alvo. Sobre qual tipo de varredura estamos falando? A) Varredura SYN. B) Varredura TCP. C) Varredura ociosa. D) Varredura UDP. E) Varredura Honeypots. 5) A possibilidade de se conectar a host(s)-alvo(s), a análise de host-alvo para descobrir serviços que estão armazenados e sendo executados nele e a verificação de vulnerabilidades conhecidas são características de qual etapa de um ataque malicioso? A) Serviços de FTP. B) Serviços de SMTP. C) Serviços de enumeração. D) Serviços de varredura/escaneamento. E) Serviços de DNS. NA PRÁTICA Na execução de um protocolo de segurança da empresa X, José Amilton, funcionário responsável pelo gerenciamento de segurança de redes, precisa fazer a varredura de portas e, para isso, ele está executando todos os passos realizados em um ataque, com o intuito de efetuar testes de segurança nos dados da empresa, pois, quando se sabe o que se quer atacar e tem as informações detalhadas da empresa, como funcionários, e-mails e, principalmente, endereços de IP, a varredura deve ser executada. Acompanhe, Na Prática, o passo a passo realizado por José Amilton. SAIBA + Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor: NMAP - descubra portas abertas ou fechadas na rede O NMAP é uma ferramenta desenvolvida sob as licenças do código livre e que tem como objetivo realizar a varredura de portas, ou seja, ela é utilizada para detectar vulnerabilidades na rede. Este vídeo trata justamente dos conceitos em torno dessa ferramenta. Conteúdo interativo disponível na plataforma de ensino!