Escolar Documentos
Profissional Documentos
Cultura Documentos
Novatec
Primeira edio
captulo 1
Introduo
Os testes de invaso podem ser definidos como uma tentativa legal e
autorizada de localizar e explorar sistemas de computadores de forma
bem-sucedida com o intuito de tornar esses sistemas mais seguros. O
processo inclui sondar as vulnerabilidades, bem como oferecer ataques
que funcionem como prova de conceito para demonstrar que eles so reais.
Os testes de invaso adequados sempre terminam com recomendaes
especficas para enderear e corrigir os problemas descobertos durante o
teste. Esse processo como um todo usado para ajudar a manter as redes
e os computadores seguros contra ataques no futuro. A ideia geral consiste
em identificar problemas de segurana usando as mesmas ferramentas e
tcnicas usadas por um invasor. Podemos ento atenuar os riscos identificados por essas descobertas antes que um hacker de verdade os explore.
Os testes de invaso tambm so conhecidos como:
Pen testing
23
24
PT (penetration testing)
Hacking
Hacking tico
Hacking white hat
Segurana ofensiva
Red teaming (equipe vermelha)
importante investir um tempo discutindo a diferena entre testes de
invaso e avaliao de vulnerabilidades. Muitas pessoas (e fornecedores)
na comunidade de segurana usam esses termos incorretamente de forma
intercambivel. Uma avaliao de vulnerabilidades corresponde ao processo de analisar servios e sistemas em busca de problemas de segurana
em potencial, enquanto um teste de invaso realmente executa exploraes
de falhas (exploitation) e ataques como Prova de Conceito (PoC, ou Proof
of Concept) para provar a existncia de um problema de segurana. Os
testes de invaso vo um passo alm das avaliaes de vulnerabilidades,
simulando a atividade de um hacker e enviando payloads ativos. Neste
livro, abordaremos o processo de avaliao de vulnerabilidades como um
dos passos utilizados para realizar um teste de invaso.
Configurando o ambiente
Entender todos os diversos participantes e suas funes no mundo do
hacking e dos testes de invaso crucial para compreender o quadro geral.
Vamos comear a compor o quadro com pinceladas bem largas. Saiba que
o que ser exposto a seguir uma simplificao bem grosseira; no entanto
isso deve ajudar voc a ver as diferenas entre os vrios grupos de pessoas
envolvidas.
Considerar o universo de Guerra nas Estrelas, em que existem dois lados
da fora os Jedis e os Siths , pode ajudar. O Bem contra o Mal. Ambos
os lados tm acesso a um poder inacreditvel. Um lado usa o seu poder
para proteger e para servir, enquanto o outro o usa para obter ganhos
pessoais e para explorar.
25
26
Informaes adicionais
Definir e entender claramente o escopo do teste muito importante. O
escopo define formalmente as regras de compromisso vlidas tanto para
o pentester quanto para o cliente. Ele deve incluir uma lista de alvos, bem
como listar especificamente qualquer sistema ou ataque que o cliente no
queira que seja includo no teste. O escopo deve ser registrado por escrito
e assinado por pessoas autorizadas pela equipe de testes e pelo cliente.
Ocasionalmente, o escopo ter de ser revisto durante um teste de invaso.
Se isso ocorrer, no se esquea de atualiz-lo e assin-lo novamente antes
de prosseguir com os testes em novos alvos.
27
tomar dinheiro da vtima, por vingana, fama ou algo do tipo, essa pessoa
dever ser considerada um black hat. No entanto, se o invasor tiver uma
autorizao prvia e sua inteno for ajudar a empresa a melhorar seu sistema de segurana, ele pode ser considerado um white hat. Alm do mais,
um hacker black hat pode gastar uma quantidade significativa de tempo
focado em atacar a empresa. Na maioria dos casos, um teste de invaso
pode durar de uma a vrias semanas. Por causa do tempo reservado ao
teste de invaso, um white hat pode no descobrir exposies sofisticadas
que exijam mais tempo.
Por fim, se a inteno for proporcionar uma simulao de ataque realista
empresa para que ela possa melhorar sua segurana fazendo descobertas
mais cedo e adotando medidas para atenuar as vulnerabilidades, o invasor
dever ser considerado um white hat. Tambm importante compreender a natureza crtica de manter as descobertas do teste de invaso como
confidenciais. Os hackers ticos nunca compartilharo informaes sutis
descobertas durante o processo de um teste de invaso com ningum alm
do cliente. Por outro lado, se a inteno for tirar proveito das informaes a
fim de obter lucros pessoais, o invasor dever ser considerado um black hat.
Tambm importante entender que nem todos os testes de invaso
so conduzidos da mesma maneira ou tm o mesmo propsito. Testes
de invaso do tipo caixa branca (white box), tambm conhecidos como
testes explcitos, so bem completos e abrangentes. O objetivo do teste
examinar todos os mnimos detalhes do sistema ou da rede alvo. Esse tipo
de teste importante para avaliar a segurana de uma empresa em geral.
Como a discrio no uma preocupao, muitas das ferramentas que
analisaremos ao longo deste livro podero ser executadas com a verbosidade habilitada. Ao deixar a discrio de lado em favor da abrangncia,
o pentester, com frequncia, poder descobrir mais vulnerabilidades. A
desvantagem desse tipo de teste que ele no possibilita uma simulao
muito precisa de como os invasores atuais, mais modernos e habilidosos,
exploram as redes. Esse tipo de teste tambm no oferece uma chance
para a empresa testar sua resposta ao incidente ou os sistemas que efetuam
alertas precocemente. Lembre-se de que o testador no est tentando ser
discreto. Ele est tentando ser abrangente.
28
29
Informaes avanadas
O APT (Advanced Package Tool) um sistema de gerenciamento de
pacotes. O APT permite instalar, atualizar e remover softwares de forma
rpida e fcil a partir da linha de comando. Alm de sua simplicidade, uma
das melhores caractersticas do APT o fato de ele resolver problemas
de dependncia automaticamente. Isso significa que, se um pacote que
voc estiver instalando exigir um software adicional, o APT ir localizar
e instalar esse software adicional automaticamente. uma melhoria
significativa em relao poca do inferno das dependncias.
30
31
32
Informaes adicionais
Na primavera de 2013, a equipe da Offensive Security disponibilizou
uma verso redefinida e remodelada do Backtrack chamada Kali Linux.
Assim como o Backtrack, o Kali Linux est disponvel gratuitamente e
vem previamente configurado com vrias ferramentas para auditoria de
segurana. O Kali pode ser baixado a partir de www.kali.org. Se voc
novo no mundo dos testes de invaso e do hacking, as diferenas entre
o Backtrack e o Kali podero parecer um pouco confusas. Entretanto,
para entender o bsico e trabalhar com os exemplos deste livro, qualquer
distribuio ser conveniente. Em vrios casos, o Kali Linux poder ser
mais fcil de utilizar (do que o Backtrack) porque todas as ferramentas esto
embutidas no path, o que significa que elas podem ser executadas a partir
de qualquer lugar. Basta abrir um terminal e digitar o nome da ferramenta,
juntamente com as opes desejadas. Se voc estiver usando o Backtrack,
em geral ser preciso navegar at a pasta especfica antes de executar uma
determinada ferramenta. Se toda essa conversa sobre navegao, paths,
opes e terminais parecer confusa, no se preocupe. Discutiremos tudo
isso nos prximos captulos. Por enquanto, voc deve simplesmente decidir
com que verso quer aprender: o Kali ou o Backtrack. Lembre-se de que
no h uma escolha errada.
33
34
opes, mas elas esto alm do escopo deste livro. Para selecionar a opo
de inicializao desejada, basta usar as teclas de direo para escolher a linha apropriada e teclar enter para confirmar sua opo. A figura 1.1 mostra
um exemplo das telas de inicializao tanto do Kali quanto do Backtrack.
Figura 1.1 Captura de tela mostrando as opes de inicializao ao usar um "live DVD".
35
Aps digitar esse comando e teclar Enter, o X comear a ser carregado. Esse ambiente dever parecer vagamente familiar para a maioria dos
usurios de computador. Aps a carga ter sido concluda totalmente, voc
ver um desktop, cones, uma barra de tarefas e uma rea de notificao.
Assim como ocorre no Microsoft Windows, podemos interagir com esses
itens movendo o cursor do mouse sobre eles e clicando no objeto desejado.
Se estiver usando o Kali Linux, depois que fizer o login com o nome de
usurio root e a senha toor padro, voc ser conduzido automaticamente
ao Gnome, um ambiente de desktop baseado em GUI.
A maior parte dos programas que utilizaremos neste livro ser executada a partir do terminal. Existem diversas maneiras de iniciar o terminal.
Na maioria das distribuies Linux, a combinao de teclas Ctrl + Alt + T
pode ser usada como atalho. Muitos sistemas tambm incluem um cone
representado por uma caixa preta com um >_ dentro. Em geral, ele est
localizado na barra de tarefas ou no menu do sistema. A figura 1.2 destaca
o atalho para o terminal no desktop Gnome.
36
37
Observe que o dhclient tentar atribuir um endereo IP automaticamente sua NIC e configurar todas as opes necessrias, incluindo as
informaes sobre DNS e Gateway. Se voc estiver executando o Kali ou o
Backtrack Linux a partir de um VMware Player, o software VMware far
o papel do servidor DHCP.
38
Independentemente de ter usado um DHCP ou de ter atribudo estaticamente um endereo ao seu computador, ele agora dever ter um endereo
IP. Se voc estiver usando o Kali Linux, sua rede dever estar previamente
configurada. No obstante, se voc tiver qualquer problema, a seo anterior poder ser til. O ltimo assunto a ser abordado refere-se ao modo de
encerrar o Backtrack ou o Kali. Como ocorre com quase tudo no Linux,
h diversas maneiras de realizar essa tarefa. Uma das maneiras mais fceis
por meio da digitao do comando a seguir em uma janela do terminal:
poweroff
ALERTA!
sempre uma boa ideia desligar ou reinicializar seu computador de
ataque aps terminar a execuo de um pen test. O comando shutdown
ou shutdown now tambm pode ser executado para desligar o seu
computador. um bom hbito, que evita que voc deixe acidentalmente
uma ferramenta executando e enviando trfego inadvertidamente a
partir de sua rede, enquanto voc estiver longe de seu computador.
39
40
41
42
ALERTA!
Mesmo que voc no consiga pr as mos em uma VM com Windows
XP, ainda ser possvel acompanhar muitos dos exemplos deste livro
usando o Metasploitable. Outra opo simplesmente criar uma
segunda cpia do Backtrack (ou do Kali). Se voc usar duas cpias
de seu computador de ataque, uma poder servir como o invasor e a
outra como o alvo.
43
44
no sistema? Como voc pode ver, cada uma dessas perguntas torna-se
cada vez mais detalhada e especfica. importante observar que formular
e responder a essas perguntas em uma determinada ordem relevante.
Informaes adicionais
medida que suas habilidades avanarem para alm do bsico, voc
deve comear a se afastar dos scanners de vulnerabilidades em sua
metodologia de ataque. Quando voc estiver iniciando, importante
compreender o uso adequado dos scanners de vulnerabilidades, pois eles
podem ajudar a unir os pontos e entender como a aparncia de uma
vulnerabilidade. No entanto, medida que voc se tornar mais experiente,
os scanners de vulnerabilidade podero se tornar um apoio indesejado
para a mentalidade de hacker que voc est tentando aprimorar. Contar
contnua e exclusivamente com essa classe de ferramentas, em algum
momento pode se transformar em um entrave para o crescimento e para
compreender o modo como as vulnerabilidades funcionam e a maneira de
identific-las. A maioria dos pentesters sofisticados que conheo raramente
usa scanners de vulnerabilidades, a menos que eles no tenham nenhuma
outra opo.
Entretanto, pelo fato de este livro abordar o bsico, discutiremos os
scanners de vulnerabilidades e seu uso apropriado na metodologia Hacking
de Entrada Zero.
45
46
47
ALERTA!
A explorao pode ocorrer de forma local ou remota. A explorao
local exige que o invasor tenha acesso fsico ao computador, enquanto
a explorao remota ocorre por meio de redes e de sistemas, quando o
invasor no pode atingir fisicamente o alvo. Este livro discutir tanto
os ataques locais quanto os remotos. Independentemente de o ataque
ser local ou remoto, o acesso total do administrador normalmente
permanece como o objetivo final. O acesso de administrador permite
que um hacker tenha um controle total e completo do computador-alvo.
Novos programas podem ser instalados, ferramentas de defesa podem
ser desabilitadas, documentos confidenciais podem ser copiados,
alterados ou apagados, configuraes de segurana podem ser alteradas
e muito mais.
48
Informaes adicionais
O PTES (Penetration Testing Execution Standard, ou Padro para
Execuo de Testes de Invaso) um excelente recurso se voc estiver
procura de uma metodologia mais detalhada e completa. O PTES inclui
diretrizes tcnicas que podem ser usadas por profissionais da rea de
segurana, alm de um framework e uma linguagem comum dos quais a
comunidade de negcios pode tirar proveito. Mais informaes podem
ser encontradas em http://www.pentest-standard.org.
49
Por fim, voc pode querer explorar a distribuio STD clssica, bem como
o Pentoo, o NodeZero e o SamuraiWTF. H muitas outras distribuies
de Linux para testes de invaso uma pesquisa simples no Google por
Linux testes de invaso distribuies fornecer uma infinidade de opes.
Voc tambm pode investir um tempo na criao e na personalizao de
sua prpria distribuio de Linux, reunindo e instalando ferramentas
medida que sua carreira de hacker progredir.
Resumo
Este captulo apresentou o conceito de testes de invaso e de hacking como
meios para garantir a segurana de sistemas. Uma metodologia especial de
quatro passos, contendo somente o bsico, incluindo Reconhecimento,
Scanning, Explorao de falhas e Ps-Explorao e Preservao do Acesso
foi apresentada. Neste captulo, tambm discutimos os vrios papis e personagens envolvidos no cenrio do hacking. O bsico sobre o Backtrack
Linux, incluindo sua inicializao, o login, como iniciar o X, acessar o
terminal, obter um endereo IP e desligar o sistema, foi discutido. O Kali
Linux, uma verso remodelada do Backtrack, tambm foi apresentado. A
criao e o uso de um laboratrio de testes de invaso foram abordados.
Os requisitos especficos para permitir que voc pratique suas habilidades em um ambiente seguro e isolado e possa acompanhar os exemplos
deste livro foram apresentados. Este captulo foi concludo com detalhes
adicionais sobre alternativas ao Kali ou ao Backtrack Linux que poderiam
ser explorados pelo leitor.