domingo, outubro 04, 2009

Uma Introdução ao Hacking

Este artigo não pretende fomentar o crime informático, mas sim dar a conhecer uma realidade importante nos nossos dias. A palavra ‘hacking’ é aqui utilizada como sinónimo de um processo utilizado por alguém que procura invadir um sistema informático. Para trás ficam as outras definições, favorecidas pela riqueza da palavra, como ‘criativo’, ‘programador’ ou ‘especialista em segurança’.
É óbvio que, quanto mais amplos forem os conhecimentos de informática, maiores são as opções do hacker. No entanto, é possível dar os primeiros passos nesta arte negra sem saber programar, por exemplo. As técnicas estão facilitadas hoje em dia graças à existência de programas que fazem quase tudo e que podem ser utilizadas por qualquer pessoa, incluindo o utilizador que não tem conhecimentos profundos de Informática. Este artigo procura dar a conhecer tais programas, em que consistem e como se utilizam para invadir uma rede.
O primeiro passo de qualquer hacker consiste em recolher informações sobre o sistema que pretende conquistar. Inicia, portanto, o processo recolhendo dados técnicos ou de outra natureza que lhe permitirão descobrir uma forma de penetrar na “fortaleza”. Repare, caro leitor, que para descobrir uma palavra-passe, por vezes, basta iludir a pessoa que a detém levando-a a revelar-nos o segredo. Para isto nem é preciso ligar o computador. Basta entrar em contacto verbal com a vítima e ter uma “boa lábia”, a capacidade de criar uma conversação nos nossos moldes. Em português chama-se a esta técnica “tirar nabos da púcara”, mas os hackers preferem um nome mais sofisticado: engenharia social. Acredite, estimado leitor, que muitas invasões são praticadas por indivíduos sem grande perícia técnica, mas peritos na arte de “bem conversar”.
Deixemos agora o doce linguajar e rumemos aos tais programas de que lhe falei. A primeira classe de programas que deve conhecer é a dos scanners.
Um scanner é, por definição, um dispositivo que “sonda” outros computadores, redes ou outro tipo de hardware e que permite recolher informações. Há dois tipos de scanner: os que sondam redes inteiras e que, no final do processo lhe oferecem um relatório com as características da rede e das máquinas por ela interligadas (scanners de rede); e os scanners que pesquisam vulnerabilidades num determinado hospedeiro (um computador, por exemplo). Estes últimos, denominados scanners de vulnerabilidades, procuram no computador da vítima informações que possam ser exploradas pelo atacante para levar avante os seus intentos. Há muita variedade neste campo de software. Eu sugiro apenas estes:
Nmap – para utilizadores de Linux
GFI LANguard – para utilizadores de Windows


Imagem: GFI Languard

Ao utilizar estes programas não se está a cometer nenhum crime. É como estar na rua, diante de uma casa, observando tudo o que se passa. Ninguém vai preso por analisar, a partir do exterior, uma habitação, ainda que preste especial atenção a janelas e portas abertas, fechaduras, etc. No entanto, caro leitor, recomendo que não use os scanners para investigar organizações governamentais ou de empresas. Têm sempre equipas de segurança e basta estar a “olhar” para lá para que se torne suspeito. Se fizer um scanning à NASA, não se admire de, passado algum tempo, ter uns agentes a bater-lhe à porta.
Após ter recolhido informações sobre o sistema que pretende invadir, precisará de uma outra classe de programas para “arrombar a porta”: os exploits. Qualquer software instalado num computador tem a capacidade de…errar! A sua vítima tem no PC programas que terão comportamentos imprevistos se receberem instruções para as quais não estão preparados. Um exploit é um programa que executa instruções no computador da vítima, que geram erros num determinado software que lá está instalado, e que podem ser utilizados a favor do atacante. Há exploits para todos os gostos. Os hackers, espalhados pelo mundo inteiro, já se deram ao trabalho de encontrar vulnerabilidades em todo o tipo de software e de criar exploits que exploram os pontos fracos dos programas.
O sítio milw0rm (http://www.milw0rm.com/) é um verdadeiro armazém de exploits que qualquer pessoa pode descarregar para depois utilizar contra outro computador.


Imagem: exploit em execução

Há outra classe de programas, a que eu chamo tudo-em-um, que fazem o scanning da máquina-alvo e que contêm também exploits para invadir. Ou seja, recolhem informações e depois atacam, “automatizando” o processo de assalto. Recomendo dois:
- O Metasploit (gratuito) http://metasploit.com/
- O Core Impact (caro e não está acessível a qualquer pessoa) http://www.coresecurity.com/content/core-impact-overview

A partir do momento que o atacante entrou no computador da vítima, tem duas opções: faz o que tem a fazer no momento ou então tem que arranjar uma maneira de poder voltar lá mais tarde sem ter o trabalho inicial. Para poder voltar ao “local do crime” as vezes que forem necessárias, recomenda-se a utilização de outra classe de programas: os Cavalos de Tróia. Um Cavalo de Tróia é sempre constituído por dois programas. O primeiro (denominado servidor) é instalado no PC da vítima; o outro actua no computador do hacker (chamado cliente). Os dois programas comunicam um com o outro e permitem que o invasor tenha o controlo completo da máquina que invadiu. No seu computador, o hacker abre a “sua parte” do Cavalo de Tróia (cliente) e fica diante de si com um painel de opções. Dentro das muitas (inúmeras opções) do painel contam-se: transferir ficheiros de um PC para o outro, tomar conta do rato, abrir as gavetas de CD (os hackers gostam destas brincadeiras), gravar tudo o que se passa (incluindo imagens de webcam) ou simplesmente apagar todo o conteúdo guardado no computador (formatar os discos).


Imagem: Cliente do Cavalo de Tróia NetBus (antigo)









Pode acontecer que o hacker tenha diante de si um ficheiro que está protegido por palavra-passe. Para “quebrar” as senhas existem programas específicos (password crackers), cada um especializado no software para o qual foi programado. Há de tudo: para quebrar senhas do Word, Pdf, Zip, do próprio Sistema Operativo, etc. Nem sequer vou aqui sugerir alguns, uma vez que a oferta destes programas é imensa. Escreva no Google “password cracker” seguido do nome do programa que pretende desvendar (por exemplo, “password cracker Windows”, para ter diante de si vários programas que descobrem as palavras-chave do famoso Sistema Operativo da Microsoft).

Invadir uma página da Web pode passar por utilizar métodos já aqui descritos (como os exploits, para invadir o servidor onde está hospedada a página), a Engenharia Social (a tal “lábia” que leva uma pessoa a dizer o que não deve), um Cavalo de Tróia (o hacker tem acesso ao PC da vítima e, consequentemente, às palavras-chave) ou então utiliza um processo denominado phishing, que consiste em criar uma página de login igualzinha à que o utilizador vê diariamente e dela se serve para estabelecer ligação com a página Web. O resultado é que a vítima vê uma página que julga ser real e na verdade é um embuste criado pelo hacker. Introduz os seus dados, como está habituado a fazer, e estes são enviados para um e-mail que pertence ao bandido. Não irei aqui descrever ao pormenor como se cria uma destas páginas falsas. Em traços largos, basta copiar para o seu computador a página de login do site (clique com o botão direito do rato na página e escolha “guardar página como”) e, uma vez tendo uma cópia no seu computador, pode alterar o HTML de forma apropriada. Depois, hospeda o seu “trabalhinho” num servidor e envia para a vítima o link da sua página falsa (por e-mail, por exemplo). Ao clicar no link, o utilizador verá uma página de login igual à que usa todos os dias. A diferença é que, ao inserir o nome de utilizador e a password, estas serão enviadas ao assaltante.
Ao descrever estas técnicas procurei dar-lhe uma ideia de como “a coisa funciona”. Há inúmeros recursos na Internet, incluindo aulas em vídeo que explicam de forma muito simples como se executa os processos aqui descritos e outros. Há cursos inteiros de hacking.
Finalizo esta breve introdução sugerindo-lhe dois fóruns, em Português do Brasil, que lhe poderão ser úteis.
http://www.forum.darkers.com.br/
http://www.invasao.com.br/

Sem comentários: