Em um processo de scanning, precisamos investigar se os sistemas alvos estão ativos. Lembre-se que enquanto você estava coletando informações, você deve ter pego o IP e o range de IPs que a organização é dona ou está conectada, o que não quer dizer que tenha algo conectado a eles. Com isto em mente, precisamos identificar quais IPs tem um sistema ativo por trás dele.
Existem algumas formas de se verificar isto, como:
- Wardialing
- Wardriving
- Pinging
- Port scanning
Cada uma das técnicas fornece informações que não não necessariamente são dadas por outros métodos, ou pelo menos não oferecem isto de forma facilmente. Uma vez que você entenda as diferenças, você precisa ter uma ideia melhor de como fazer o pentest.
Quando olhamos para estes métodos, deve-se prestar atenção em quais áreas eles são fortes ou fracos. Usar o método errado pode te fazer perder tempo facilmente, assim como alertar os donos dos sistemas com a sua presença, dando tempo a eles para reagir com a sua presença.
Wardialing
O primeiro tipo de scan e mais velho é chamado de wardialing. Ele existe dos anos 80 e nunca mudou muita coisa, pois continua provando ser uma forma útil de coletar informações. Ná prática, é uma forma extremamente simples comparada às outras formas de scanning, onde simples ligações para um bloco de número de telefones pode revelar modens comuns conectados a sistemas e estejam aceitando conexões. Atualmente, isto é considerado muito antigo devido a evolução digital, mas alguns países ainda usam modens conectados aos computadores.
Modens são usados são usado em conexões via cabo, digital subscriber lines (DSL) e linhas T1 e T3. A ideia é que se todas estas formas de conexões falharem, a linha de telefone ainda continuem disponíveis, exceto por um grave acidente ou interrupção. Lembre-se que as linhas telefônicas são usadas por máquinas de fax e dispositivos multifuncionais em vários escritórios.
Depois de encontrar um modem e obter uma resposta, a pergunta torna-se o que fazer com essas informações. Para responder a isso, você precisa saber quais os dispositivos modems são comumente ligado ao mundo moderno. Private branch exchanges (PBXs) geralmente têm modems anexados (os não digitais), o que pode fornecer uma boa oportunidade para o atacante. Outros dispositivos que às vezes têm modems anexados são firewalls, roteadores e aparelhos de fax. Se um invasor disca para um firewall e obtém acesso, um ambiente pode rapidamente se tornar desprotegido.
Algo a considerar quando um atacante ganha acesso a um sistema é que eles podem estar usando-o como um ponto de pivô (máquina de salto). Um ponto de pivô é um sistema comprometido que é usado para direcionar outros sistemas que podem ser mais profundos no ambiente alvo. No caso de sistemas como os mencionados aqui, é possível que um atacante possa ganhar acesso ao dispositivo ou sistema e começar a cometer outras ações agressivas.
Um modem deve sempre ser considerado um método de acesso backdoor para um determinado ambiente, porque eles são frequentemente utilizados dessa forma por seus proprietários. Embora ainda podem usá-los para acessar a Internet, eles são mais frequentemente usados como métodos para acessar uma rede quando todos os outros meios não estão disponíveis.
Veja abaixo alguns programas para Wardialing:
- ToneLoc – Este programa liga para vários números dentro de um range de números em busca de um tom (sinal) de forma aleatória. Ele também procura por uma frequência de modem ou fax;
- THC-SCAN – Um programa baseado em DOS que pode um modem para discar para um range de números em busca de uma frequência de modem ou fax;
- NIKSUN’s PhoneSweep – Uma opção comercial disponíveis no mercado.
Este método de ataque continua sendo válido em algumas organizações devido a falta de atenção que estes tipos de dispositivos recebem. Apesar de serem conexões lentas, são possíveis brechas que não são monitoradas.
Usando o Ping
Esta ferramenta é a mais conhecida. Pode ser usada para determinar a conectividade de uma rede e saber se um host está ativo ou inativo. Como ele é super simples de usar, é ótimo para iniciar o processo de scanning.
Ping funciona através de mensagens Internet Control Message Protocol (ICMP), por isto é chamada de ICMP scanning. O processo funciona através de um sistema enviando solicitações ICMP echo para outro sistema; se o sistema estiver ativo, ele irá responder com um ICMP echo reply. Uma vez recebida, o sistema confirma que ele está ativo ou vivo.
Pinging é útil porque ele pode dizer não só se o sistema está ativo, mas também a velocidade que os pacotes foram de um host a outro baseado na informação do time to live (TTL).
Para usar o ping no Windows, vá até o command prompt e use o comando da seguinte forma:
ping IPou
Na maioria das versões Linux, o comando é praticamente o mesmo, mas ele ficará enviando ping até você apertar Ctrl+C para terminar o processo.
Apesar de você usar o ping pelo IP ou hostname, é melhor você pegar o hábito de usar o IP antes de ir pro método do hostname. Se você usar o hostname e não receber uma resposta, isto pode indicar um problema de DNS ao invés de um sistema indisponível. Por outro lado, usar o ping em um IP pode informar sempre se o sistema está ativo.
Também é possível que você use o ping em um sistema que você sabe que ele está disponível mas ele não responder, o que pode indicar que ele está com o serviço de ping desativado ou está sendo filtrado por um roteador ou firewall.
Existe uma outra forma de fazer scanning por IP usando o nmap através do comando abaixo:
nmap –sP –v IPSe o comando achar um host ativo, ele irá responder com o endereço MAC e informações da placa de rede (caso o nmap conheça).
Pense no nmap como um canivete suíço que irá te fornecer muitas informações durante um pentest.
Esta técnica de scan usando ICMP é chamada de ping sweep, pois sai varrendo um bloco de IPs. Uma forma de fazer um scan rápido é através do comando:
nmap –sP –PE –PA<número das portas> <IP inicial/IP final> nmap –sP –PE –PA21,23,80,3389 192.168.10.1-50Ping sweeps são muito efetivos e que pode criar um inventário dos sistemas rapidamente; Entretanto, existe algumas possíveis barreiras, como o administrador de rede ter bloqueado o uso de ping no firewall, então então usar o ping de fora da rede poderá ser impossível sem um esforço extra.
Um intrusion-detection system (IDS) ou intrusion-prevention system (IPS) sempre estará presente em uma grande rede emrpesarial e eles irão alertar o dono do sistema e/ou impedir o scan. Finalmente, não existe uma forma de saber se o sistema estão desligados. Neste caso, o sistema ficará aguardando a resposta do ping até ele perceber que não foi possível chegar ao host.
Hping3: a artilharia pesada
Ping não é a única forma existente. De fato, ele é limitado de alguma forma e existe outro meio de fazer seu scan usando o hping3. De forma simples, o hping3 é um montador de pacotes TCP/IP baseado em linhas de comando. Isto significa que você será capaz de enviar, não só, pacotes através da rede, mas também permitirá criar pacotes personalizados para avaliar o comportamento de um host remoto. hping não está restrito ao envio de solicitações ICMP echo como ping, mas também suporta TCP, UDP, ICMP, e protocolos RAW-IP, que tem o modo traceroute e a possibilidade de transferir arquivos.
Vejamos algumas funcionalidades desta ferramenta:
- Enviar um ping:
hping3 -1 <nome do domínio> - Verificando se um firewall está bloqueando as solicitações de ping através do pacote com flag ACK enviado
ao alvo (-A para ACK, -V para verbose, -p seguido por uma porta do alvo, e -s para a porta de origem do computador de onde o pacote vai sair, por exemplo porta 80 do alvo e porta 5050 do atacante:
hping3 -c 1 -V -p 80 -s 5050 -A <nome do domínio>
Se receber uma resposta, o sistema está ativo e a porta aberta. Caso contrário, pode existir um firewall entre o scanner e o alvo.
hping3 foi feito para rodar no Linux, mas não está restrito a esta plataforma. No site oficial existe uma documentação explicando como usar no Windows.
Uma vez que você tenha achado sistemas ativos, você pode realizar um port scan e verificar quais portas estão abertas.
Sugestão de Livro: Certified Ethical Hacker version 9: Study Guide. Sybex. 2016.