Scanners

Scanners
Definição

Todos sabemos que nenhum sistema é perfeito. Falhas em programas e sistemas existem sim e são uma ameaça à segurança. Geralmente ocorre do seguinte modo: um administrador acidentalmente descobre que algum recurso do seu sistema gera um erro em resposta a algum tipo de pedido. Para exemplificar, suponhamos que a rede em que o administrador trabalha só se comunica gerando mensagens de “olá”. Um dia ele escreve “alô” sem querer e descobre que ao enviar a mensagem para outra máquina, ela fica confusa e trava. Bem, a resposta deveria dizer “Desculpe, só olá aceito”. Foi descoberto um bug. Agora imagine que centenas de bugs são descobertos a cada dia e que o seu sistema “confiável” de hoje, pode ser destruído amanhã. Existem algumas saídas para fazer uma análise mais garantida. A primeira é que você se torne um completo nerd e conheça desde o primeiro ao último bug existente. Se você trabalha com mais de um tipo de sistema operacional então, boa sorte. Uma outra saída, infinitamente mais eficaz, é a utilização de scanners. São programas que analisam um sistema ou rede em busca de falhas de qualquer tipo. Existem dezenas de scanners diferentes, cada um com suas vantagens. Aprendendo melhor sobre eles, poderá se proteger melhor e evitar que algum invasor malicioso dê um passo à sua frente.
Descobrindo falhas em um host

Para entender qual a parte do seu sistema é mais vulnerável, você terá que pensar com malícia. Ora, se você usa um firewall e desabilita o acesso externo aos servidores de FTP e Telnet, com certeza eles não serão a sua maior preocupação. Em alguns hosts , deixa-se habilitada apenas a porta 80 (www) para acesso externo. Muitos se sentem seguros desse modo. Mas enganam-se. Atualmente, a quantidade de falhas existentes em servidores World Wide Web é absurda. Tanto Internet Information Server quanto Apache ou qualquer outro, possuem erros. Alguns deles tão perigosas que possibilitam acesso ao interpretador de comandos do sistema, podendo gerar uma “entrada” para o invasor na rede. Outros podem fazer com que se consuma toda a memória existente, causando um Buffer Overflow( nome dado ao travamento do sistema devido a falhas de memória). Vamos dividir o nosso estudo sobre scanners em partes: os scanners de portas, scanners de host, scanners netbios e scanners de vulnerabilidade.

Portas abertas com serviços ativos

Ao contrário do que popularmente se pensa, não é tão fácil assim invadir um computador pessoal. Nós já sabemos que o sistema é composto de 65535 portas TCP e UDP. Em servidores, muitas delas possuem serviços rodando, tais como:

21 - FTP (File Transfer Protocol)
23 - TELNET
25 - SMTP (Simple Mail Transfer Protocol)
79 - FINGER
80 - WWW

Esses são apenas alguns dos muitos serviços que são rodados em computadores de empresas que precisam estabelecer contato com filiais e clientes. Realmente, um sistema que possua os seguintes serviços acima ativos, pode ganhar sérios problemas com segurança. Mas imagine o seu computador na sua casa, em cima da mesa da sala, cheio de joguinhos dos seus filhos e que você só utiliza para ler e-mails e navegar pelas homepages. As portas da sua máquina estão descansando totalmente. Às vezes, uma ou outra se abre para estabelecer conexão com um site, ou mandar uma mensagem pelo ICQ. Mas essas são randômicas, ou seja, a cada vez que uma conexão for feita, a porta mudará. Isso impede que algum invasor fique à espreita e tente se conectar a portas padrões. Dificulta, mas não impede. Algum cavalo de tróia instalado sem você saber pode abrir uma porta qualquer e permitir a conexão de qualquer pessoa. Para saber quais portas estão abertas em um sistema remoto, utilizamos o scan de portas. Existem muitos e muitos programas desse tipo. Alguns exemplos são o Cha0scan , o Shadow Scan e o Haktek.
Funcionam da seguinte maneira: vão tentar se conectar a todas as portas de um endereço ip fornecido, mostrando todas as portas encontradas “ativas” e o seu conteúdo. É uma boa táticas para encontrar cavalos de tróia sem depender de anti-vírus, já que todos usam portas. Exemplo: eu quero analisar o meu próprio computador para saber se têm alguma porta aberta. Para isso, vou usar o HakTek. Então mando o programa tentar scannear portas no endereço 127.0.0.1( o chamado endereço de loopback. Serve para quando você não está conectado na Internet e precisa utilizar algum programa de análise que precise de endereço IP). Encontrei as seguintes portas ativas:

80
1256
21554
31337

Ora, a primeira porta eu sei que é o servidor de páginas que rodo no meu pc. Mas e as outras três? A porta 1256 era a que o icq havia aberto na hora. As outras duas são portas de trojans que usei como teste. A porta 21554 é do trojan Girlfriend e a porta 31337 é do Back Orifice.
O único problema desse scan é que como ele foi feito nas três vias do tcp (syn, syn-ack, ack) pode ser facilmente detectado por sistemas IDS (detecção de intrusos). Uma boa saída é usar o NMAP , disponível tanto em Windows NT quanto Linux. Utilizando-o, você pode scannear portas de maneira furtiva, sem realizar as três vias do tcp. Ele possui muitas opções diferentes para scan de portas, experimente-as.
Máquinas ativas da subnet

O segundo tipo de scanner estudado, é o mais usado quando o objetivo do invasor é determinar todos os hosts ativos da subnet e saber seus nomes (DNS). Assim, vamos supor que o endereço principal de um provedor é www.phela.com.br. Usamos um ping qualquer, ou o próprio scanner, e descobrimos que o endereço ip é 200.205.215.37. Agora vou utilizar o scanner de hosts para saber quais outras máquinas dessa rede estão ativas.
200.205.215.9 - diretoria.phela.com.br
200.205.215.34 - laboratorio.phela.com.br
200.205.215.35 - milho.phela.com.br
200.205.215.36 - gilmara.phela.com.br
200.205.215.37 - server.phela.com.br
200.205.215.65 - route.phela.com.br

Com isso conseguimos informações importantes do sistema. Sabemos por exemplo qual é o endereço do roteador, e onde deve ficar informações importantes. Se fosse um site de comércio eletrônico por exemplo, as chances de conseguir os dados era enorme, pois mesmo que o invasor não conseguisse acesso diretamente ao computador 200.205.215.37 (que pode inclusive ser um firewall) ele poderia se conectar a um outro IP da subnet e conseguir os dados a partir dele. Às vezes poderia haver algum backup perdido por aí. Alguns bons scanners de hosts são o Shadow Scan ,o Haktek e o projeto r3x, entre outros.. Claro que para Unix e Linux existem outros muito melhores. No site www.securityfocus.com existem códigos fontes ótimos para essa tarefa.
Scanneando o netbios

Netbios é uma espécie de protocolo que facilita a comunicação de uma pequena rede, porém não é roteável. Isso significa que: você pode conseguir invadir o computador e mapear drives de todas as pessoas que estão conectadas no mesmo provedor que você, pois estão na mesma subnet. Agora, se você estiver em um provedor e tentar alguma invasão em outro, ela não será possível com o SMB, apenas com o Netbios por TCP/IP (o que acaba dando quase na mesma, coloquei as diferenças para uma questão didática). Alguns cuidados devem ser tomados. Que hacker iniciante nunca ouviu falar de “invasão por ip”, um texto que roda na internet há anos?. Pois é, ele corresponde à invasão por netbios. Para que você esteja protegido quanto a ataques, tome algumas providências:
? Se você não pertencer a nenhuma rede ou não precisar de compartilhar arquivos pela Internet, desabilite as opções “Compartilhar arquivos e impressoras” no assistente de rede do painel de controle do Windows. Assim você não será detectado por netbios.
? Caso você precise do protocolo, ao menos quando for compartilhar algum disco, coloque uma senha. Assim dificulta o acesso não-autorizado.
? Corrija os bugs do seu sistema. Especialmente se utiliza o Samba para compartilhar uma conexão netbios entre o Linux e o Windows. O Windows 98, ME, NT e 2000 também possuem alguns erros graves. Alguns deles possibilita que você possa mapear algum recurso da rede sabendo apenas o primeiro caractere da senha do netbios.
? Utilize algum bom scanner para netbios. Um excelente é o NAT (Netbios Auditing Tool). Ele utiliza um dicionário de senhas para tentar conseguir acesso ao sistema, e ainda checa se o mesmo possui falhas que possibilitem a conexão anônima. Para os que têm preguiça de usar programas em linhas de comando, sugiro o Legion, o Shadow Scan e o projeto r3x. Uma outra maneira rápida de checar se o netbios está ativo é usando o comando nbtstat do Windows. Geralmente a sintaxe é: nbtstat –a <endereço ip>. Existe um modo mais fácil de se tentar invadir um computador que esteja com o netbios ativo. É só ir em iniciar / executar e digitar \\número do ip. Mas vamos fazer do modo convencional:
1º passo: utilizar o nbtstat.
2º passo: encontrado um computador ativo (é sempre o que possui os números 00 e 03, além de ser UNIQUE no Type), vamos explorar os seus recursos.
3º passo: Encontrado algum recurso disponível (no caso do exemplo, o disco C) , vamos mapeá-lo (mapear significa adicionar o recurso como se fosse do seu próprio computador, como é o caso dos discos e impressoras em rede). Para mapear, utilizamos o comando:
net use F: \\gambit\C
Pronto. Mapeamos o disco C da máquina encontrada para o nosso disco F. É só ir ao Windows Explorer para acessar o disco ou simplesmente acessá-lo pelo DOS (o que é muito mais rápido). Para desconectar a unidade mapeada, usaremos o seguinte comando:
net use F: /DELETE
Para uma explicação melhor sobre a sintaxe do comando NET ou para conhecer outros recursos do Windows, cheque o capítulo 11.

Checando as vulnerabilidades em servidores HTTP e FTP

Tranqüilamente o mais perigoso de todos. Os scanners de servidores HTTP e FTP, chamados de scanners de vulnerabilidade, podem encontrar erros em sistemas em segundos e ainda indicar como explorar esses erros. Essa é a principal ferramenta do “Script Kiddie”, típico garoto que quer ser hacker, consegue um software destes e sai fazendo varreduras em diversos sistemas. Mesmo que você não tenha inimigos, pode ser alvo de algum desses indivíduos algum dia, pois ele se diverte em tirar páginas do ar, colocar mensagens bobas e rir das pessoas que o acham um mestre. Não têm interesses de espionagem, é apenas uma criança. Chegamos em um problema: essas ferramentas não deviam ter a sua distribuição controlada? Se são tão perigosas, algumas até facilmente encontradas na Internet, deviam possuir algum tipo de restrição. Todos têm direito à informação, se souberem usá-la da maneira certa. Alguns scanners são tão poderosos que possuem funções de scanneamento de portas, hosts e vulnerabilidades em um só host. Ou seja: descobre os hosts ativos, analisa as portas e analisa as vulnerabilidades encontradas nas portas. E meu amigo, se não tiver uma boa política de segurança, tudo desaba.
Alguns bons scanners de vulnerabilidades para Windows: Security Shadow Scan, Retina, TWWWScan, Simpsons CGI Scanner, entre outros. Para Unix, temos o Nmap, o Nessus, o ISS e uma infinidade de programas. Não importa qual sistema seja rodado, geralmente esses programas podem scannear servidores em todo tipo de sistema. Do Windows ao Macintosh. Retomando o exemplo do provedor fictício www.phela.com.br, vamos realizar uma análise. Passamos um scanner qualquer e veremos os resultados.

Win NT 4.0 - Internet Information Server 4.0

::DATA
IIS Unicode
Buffer overflow

Descobrimos muita coisa. O sistema operacional usado, o servidor http e três erros. Se fosse o programa real fazendo a análise, ele daria um link ou exemplos de como explorar os erros para conseguir acesso ao servidor. E para colocar um pouco mais de medo nos administradores ,esses softwares têm uma opção de auto-upgrade, ou seja, se atualizam semanalmente com novas falhas descobertas.
Analisando partes físicas
O firewall e o roteador, por também conter falhas, são muito analisados pelos scanners. Alguns deles (firewalls) são tão sofisticados que enviam vários tipos de pacotes de informação somente para “deduzir” quais deles o firewall barra e quais não, assim descobrindo erros na sua implementação e para onde redirecionam os dados. O Shadow Scan por exemplo, consegue descobrir o endereço real de um servidor através da grande maioria dos firewalls. Portanto não adianta apenas instalar a sua barreira. Precisa atualizá-la sempre. Para saber mais sobre o assunto e conhecer alguns problemas exclusivos que elas sofrem , consulte a seção Firewall.
Wardialers
Os wardialers ou discadores de guerra, são programas que checam uma lista de telefones procurando por telefones conectáveis. Podem ser bem úteis. Por exemplo, supondo que o telefone comercial de uma empresa seja 829-1122. Mande algum programa (como Toneloc) tentar se conectar a telefones do número 829-1100 a 829-1300. Bom, pode ficar um pouco caro os impulsos mas a chance de você conseguir algum número de modem externo é grande. E geralmente usando sistemas com senhas ridículas (ou até sem senhas).
Instalando proteções
Para se proteger, você precisa seguir a seguinte política: esteja sempre passando scanners no seu sistema, atualizando seu firewall e instalando proteções extras (como detectores para scanners de porta. Quando alguém tentar varrer o seu sistema checando os serviços ativos, ele impede e lhe fornece o ip da pessoa). Mas e se você descobrir alguma falha? Na informação fornecida pelo scanner de vulnerabilidade está aonde você pode conseguir o patch (atualização) para essa falha. Então visite o site do fabricante (no caso do nosso exemplo do provedor Phela, seria a Microsoft), pegue o patch e leia com atenção para saber como aplicá-lo no seu sistema. Se arrumar um tempinho para fazer tudo isso, garanto que pode lhe render algumas boas noites de sono.
Passo-a-passo: Scanneando
Scanneando hosts conhecidos de uma rede
Para esse exercício pode ser usado qualquer scanner. Usaremos o haktek.
1. Abra o programa
2. Clique no botãozinho que parece um controle remoto e coloque em range os ips que deseja procurar. Por exemplo: 200.187.138.1 a 200.187.138.250 (endereço fictício).
3. Mande ver.

O programa mostrará todos os hosts encontrados (que estão ativos) e mostrar seus respectivos nomes (se tiverem).
Scanneando o NetBIOS
Para realizarmos uma checagens de máquinas com NetBIOS ativas, utilizaremos primeiramente o programa Shadow Scan.
Abra o programa.
1. Clique em Internet Scaner de depois em Scaners.
2. Selecione NetBios Scanner.
3. Clique em IP Zone e coloque a subnet que você irá procurar (de qual a qual endereço ip). Não se esqueça que como o NetBIOS não é roteável você só pode fazê-lo no seu provedor ou rede local.

O ShadowScan é um dos melhores programas de segurança para Windows. Possui praticamente de tudo.

Se preferir , use o projeto R3X. Ele é mais rápido que o Shadow Scan e às vezes até mais eficiente, além de explorar um erro que descobre qualquer senha de Netbios do Windows 95, 98 e 98 SE.


Scanneando à procura de falhas
Nesse teste, utilizaremos algum dos scanners de vulnerabilidade para descobrir falhas em um host. Na minha opinião, o Shadow Security Scanner é o melhor para Windows (ele é baseado no programa Retina do grupo EEYE) e o Nessus o melhor para Unix. Utilizaremos o TWWWSCAN como exemplo pois ele é bem simples.
1. Abra o prompt do ms-dos.
2. Execute o programa.
3. Após o programa mostrar essa tela, execute-o novamente com o seguinte comando: twwwscan <endereço ip ou nome do host> 80 –v –t3 –pa –ids


Pedimos ao scanner para utilizar a porta 80 (padrão), -v (mostrar o status), -t3 (utilizar dois tipos de métodos de teste), -pa (tentar erros de unix e de windows) e –ids (tática para conseguir um resultado mais eficiente). O programa irá rodar, testar diversas combinações e lhe fornecer os erros encontrados.

Outros bom programas para serem testados:
Retina (www.eeye.com)
Typhon (visto no capítulo sobre falhas, pode ser pego em www.security-focus.com)
Stealth (visto no capítulo sobre falhas, pode ser pego em www.nstalker.com)

E muitos outros. O negócio é fuçar para descobrir as novidades. E isso é o que não falta. Visite sempre páginas como www.blackcode.com e www.securityfocus.com para obter novidades.

Copyright © Cyber Nine/Crack's S.A todos direitos reservados
Hosted by www.Geocities.ws

Hosted by www.Geocities.ws

Hosted by www.Geocities.ws

1