Você está na página 1de 22

Este o primeiro de 5 ou 6 tutoriais que vou criar sobre testes de intruso, sei que muita

gente pode no compreender certos termos em Portugus de Portugal, mas esta a minha
lngua, por isso me desculpem, afinal sempre melhor que em ingls para muitos dos casos.
O tutorial no segue h risca um teste de penetrao simplificado, por isso no esperem
grandes detalhes no tutorial, por trata-se de um frum sou obrigado a resumir grande parte
dos passos.
Vou tentar pelo menos criar 2 captulos por semana, conforme o tempo disponvel e a vontade de
escrever, que no ser grandes problemas visto que adoro escrever.

Boa leitura e espero que assimilem alguma informao nas seguintes frases.
Vamos l ento:

legal, que te paguem por romper cristais melhor a que te paguem por regul-los.
Esta uma piada (portuguesa) que fiz mil vezes porque realmente o sinto assim. Os
testes de Intruso ou teste de penetrao (pentests) so divertidos, muito divertidos diria
eu. Neste artigo queria falar-vos dos passos para levar a cabo um teste de penetrao em
uma empresa. Mesmo que a grandes rasgos os testes de penetrao so todos similares
certo que cada um tem sua arte e seu ponto forte.
Auditoria de BlackBox:
Os testes de penetrao no chegam em ser uma auditoria j que estas devem ser exaustivas em
extenso e profundidade, isto , devem avaliar todos os riscos, todos os caminhos e avaliar o nvel de
cada um deles. Um pentest encontrar um caminho para resolver o sudoku. O certo que quando se
realiza um teste de intruso no final sai quase tudo, includo, o que mais importante, as ms prticas de
configurao, implementao ou desenvolvimento, mas preciso deixar clara a diferena entre uma
auditoria e um teste de intruso.
Quando se realiza uma auditoria de segurana estas sero diferentes se realizam desde dentro da rede
com uma conta pouco privilegiada, desde Internet sem nenhuma credencial ou desde dentro com os
privilgios do prprio administrador. Se devem realizar todas, no que uma seja melhor que outra, todas
se complementam e do diferente informao. As que se realizam desde fora e sem nenhuma credencial
se chamam auditorias de BlackBox, enquanto as que as que se realizam desde dentro se chamam
auditorias de WhiteBox.
Poderamos dizer que um teste de intruso uma auditoria de BlackBox e a diferena ser se se buscam
todos os caminhos ou s se procura justificar a necessidade de uma auditoria de segurana em
profundidade. Sim, mesmo que parea estranho em muitas companhias a dia de hoje ainda preciso
justificar a necessidade de uma auditoria de segurana. Porque a quem lhe importa se amanh no Site
pem um graffiti ou se os dados do banco de dados foram mudados parcialmente durante os ltimos trs
meses e no podemos recuperar nenhuma cpia de bases de dados porque no temos garantia que
nenhuma seja confivel?
Comea a festa:

Em primeiro lugar voc deve escolher o ponto de execuo do teste, como j vimos
antes, talvez queremos realizar uma auditoria simulando que somos um usurio externo
ou talvez, pensemos que o inimigo um cliente remoto ou possa ser um trabalhador
interno. Quem sabe? Ou no? Escolhemos o ponto de execuo e comea a campanha.
Para isso comeamos pela fases de combate.
Eleio de objectivos:
preciso buscar onde pode haver uma porta para entrar dentro e fazerj se ver! Ainda em breve,
no nos pomos objectivos, se vai conquistando pouco a pouco o inimigo. Para isso vamos analisar os
activos da empresa expostos a nosso ponto de execuo. Isto , desde onde estamos que servios e/ou
servidores esto em nossa linha de tiro. Servidores site, servidores de conexes VPN, o servidor de
correio, de arquivos, de dns, etc. Inventariamos os activos a testar e comeamos a segunda fase.

Recolha de Informao:
Que nos interessa? TUDO. Toda informao que se possa conseguir til, sinto dizer isto mas at a
informao sobre as pessoas que operam e ou trabalham na empresa directa ou indirectamente com os
sistemas til. Para isso realizamos duas batidas de recolhida de informao diferentes utilizando duas
filosofias diferentes. Em primeiro lugar vamos apanhar toda a informao que seja pblica da empresa e
dos objectivos. pblica, por tanto a recolhemos e aprendamos tudo o que possamos deles. As
ferramentas que utilizamos so ferramentas de Footprinting ou de seguimento ou rastros de pegadas.
Footprinting:
Para conhecer a informao da empresa comeamos por consultar o servidor DNS para ver que servidores
tm registados com que servios. Normalmente vamos tirar as Direces de IP dos servidores DNS, dos
servidores Web, dos servidores de correio e tudo o que se possa. Para fazer esta parte eu uso o prprio
Nslookup que vem no sistema e com simples comandos podemos tirar toda esta informao.
Nslookup:
Quando entramos no interface de comandos de nslookup estamos realizando consultas directamente
contra o servidor de DNS que temos configurado em nossa mquina, por tanto primeiro averiguar qual
o servidor de dns de nosso objectivo e perguntar-lhe a ele. Para isso escolhemos o tipo de registo que
queremos consultar com o comando set type. Para tirar os servidores dns: set type=ns; Para os hosts: set
type=a; para os redireccionadores de correio: set type=mx, etc.
Uma vez eleito o tipo se realiza a petio de resoluo com o domnio que se quer consultar e nos devolve
as Direces de IP dos servidores DNS primrio e secundrio. Por tanto quando saibamos quais so,
configuramos a esses servidores como os receptores de nossas consultas com o comando: Server IP e
uma vez que estejamos ali tiramos toda a informao pblica que tenhamos. Se o DNS est logo que
configurado nos permitir duas coisas que nunca se devem permitir, a transferncia de zonas e a lista de
todos os registos. Para isso basta conectar-se ao servidor de dns e desde o nslookup e realizar um simples
teste com o comando ls nome_de_domnio. Se cola, nos retornar toda a informao da zona na tela. E
perguntando ao registo SOA da Zona DNS poderemos saber qual o correio do responsvel do dns e o
mais provvel webmaster.
Da informao que extraiamos daqui poderemos saber coisas como se os servidores esto em hosting,
housing ou os tem a companhia, se tm servios de apoio externos, se o administrador cuidadoso e
detalhista ou no. Pensem que o processo de ataque pode depender destes pequenos voc detalhes.
Imaginemos um servio Web de uma empresa que est em hosting, se compramos um domino no mesmo
fornecedor teremos acesso ao mesmo servidor de nosso objectivo quase mais de 100 perus ao ano e
atacar a um companheiro de hosting oferece a possibilidade de um novo caminho digno de explorar.
Neste exemplo, com uma empresa escolhida ao acaso, o tugamania.com por exemplo, veremos o que ele
nos mostra em suas propriedades, se pode fazer ls do domnio que permite ver a lista de todos os
servidores, e o IP interno de um servidor muito, muito significativo, que se chama bd (Banco de Dados?)
com um direccionamentos 192.168.1.1. Curioso.
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 668x613.

Imagem 1: Nslookup

Traar e Posicionar:
Uma vez que se tm os objectivos iniciais marcados com direces IPS o seguinte situ-los na rede e
geograficamente, pode dar-nos alguma informao curiosa. Ferramentas como tracert ou o Visualroute
nos vo permitir averiguar qual a localizao fsica e quem so os seus provedores de acesso a Internet.
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 662x555.

Imagem 2: Tracert visual


Baixar em http://visualroute.visualware.com/
Nele visualizamos as redes que lhe conectam, neste caso podemos ver quem seu fornecedor
de servios de Internet.
Whois:
Quando uma empresa regista um domnio na Internet deve encher uma srie de dados no registador que
devem estar em uma base de dados de informao que se chama Whois. A informao que se regista
neste banco de dados pode proteger-se parcialmente configurando-se no registo, mas por defeito toda ela
pblica. Cada registador oferece ferramentas de acesso ao banco de dados whois para que qualquer
possa consult-la.
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 663x744.

Imagem 3: Informao que nos oferece sobre o domnio http://www.tugamania.com atravs


do acesso ao banco de dados whois de SamSpade.

Whois online em http://samspade.org/


Baixar em http://www.webmasterfree.com/samspade.html

Spiders (aranhas de Internet):

Usem a informao que os spiders j recolheram e aprende a tirar-lhe partido s bases de dados sobre as
lugares que tm nossos amigos os buscadores. Existe um banco de dados que se chama Google Hacking
Database (GHD) que tem catalogadas em diferentes categorias correntes de busca para usar-se no google
para tirar informao para hacking de empresas atravs das bases de dados do buscador google. H uma
seco que me encanta se chama Passwords e a explicao que do no prprio banco de dados sobre
essa categoria : FOR THE LOVE OF GOD, GOOGLE FINDS PASSWORDS. Aprende a fuar (termo vosso)
no google/msn search para seguirem os rastros da empresa e dos administradores, te surpreender o que
pode fazer um administrador de uma empresa com seus correios corporativos.

Imagem 4: Google Hacking Database (GHDB)

Acessar em http://johnny.ihackstuff.com
Fim do primeiro Capitulo...

Spidering:
As tcnicas de Spidering se utilizam para poder se encontrar toda a informao que nos
oferece gratuitamente atravs das paginas web da empresa. Nos oferece pginas html,
aplicativos, arquivos de imagens, documentos, javascripts, applets, etc Quando
realizamos um pentest preciso tirar toda a informao que se possa extrair
de comentrios, meta informao de arquivos grficos ou documentos, etc Por
exemplo os arquivos doc de Microsoft Office no costumam ser limpos, falo na
informao de seus criadores que ficas registada no documento antes de ser publicados,
esses geralmente nos vo dar rotas de arquivos em mquinas locais e nomes de contas
dos usurios nos domnios.
S por colocar um exemplo. Alm disso, quando se est realizando uma descarga
completa de um website se procura tambm aquilo que, aparentemente no est
disponvel ao publico, mas que prescindvel, como os directrios tpicos /cgi-bin, /bin,
/imagens, /admin, /privado, etc e os arquivos prescindveis, como arquivos de
exemplo, configurao etc Para isso se utilizam ferramentas que se chamam Scanners
de Cgi e que, mesmo que em origem rastreavam programas cgi vulnerveis, hoje em dia
se usam como rastreadores de arquivos em tcnicas de spidering.
Exemplo 1:

Documento office descarregado da Universidade das Illes Balears


com informao do usurio e a rota do sistema de arquivos de seu criador.
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 811x279.

Imagem 5: Usurio tsiralb.


Soa a um certo escndalo no governo britnico com um certo documento sobre as armas de destruio
em massa no Iraque que tinha sido modificado?
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 655x333.

Imagem 6: Comentrio em um site que delata que foi desenvolvida com Dreamweaver.
H Dreamweaver para Linux?
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 657x375.

Imagem 7: Foto descarregada da Internet com meta informao sobre o criador.


uma foto de Artur baixada de um directrio que h por aqui na mesma universidade de antes. J
sabemos que dia foi a festa, a camarata e inclusive se pode averiguar a hora do dia que foi tirada, o que
parece ser na hora de jantar.

Ferramentas como Teleport Pr permitem-te baixar todos os arquivos que se oferecem publicamente em
um site, scaners de cgi como voideye, whisker, cgi-scan ou qualquer outro permitem carregar uma lista de
arquivos e directrios a buscar. Como se pode ver na imagem, a voideye se lhe pode configurar o uso de
servidores Proxy annimos para evitar a deteco de quem est realizando o scaneamento.

Imagem 8:VoidEYE

Imagem 9: Teleport Pro

Fingerprinting:
J recolhemos toda a informao que era pblica, agora vamos apanhar aquela que tambm est
acessvel publicamente mas que a propriamente no possvel de se ver. Isto , vamos inferir informao
a partir de provas que vamos ir realizando a cada um dos servios e ou servidores. Fcil, no?

Identificao de Sistemas Operativos e/ou Firewalls:


Para identificar os sistemas operativos que correm sobre os servidores ou debaixo dos
servios que queremos testar existem diferentes ferramentas. Todas estas ferramentas se
baseiam em jogar ao Quem Quem? Vocs Lembram aquele jogo no qual se ia
perguntando ao invs se tinha bigode ou chapu? Pois a mesma ideia. Averiguar um
sistema operativo consiste em enviar-lhe diferentes tipo de comandos e ir analisando as

respostas. Por exemplo, pensemos em um simples ping. Se enviamos nas tramas TPC/IP
valores 1 nos bits de urgncia, que no vo ser utilizados pelo sistema operativo, e
observarmos os resultados obtidos, pode-se definir que sistema . Um sistema Windows
devolve esses valores sempre a 0, isso porque quando constri uma trama TCP/IP de
resposta o h desde uma nova trama; no entanto, um sistema Linux constri a resposta a
partir da trama de petio. Isto faz com que se enviarmos 1 e recebemos 0 possamos
inferir com uma percentagem alto de sucesso, e que o sistema operativo um Microsoft
Windows. Logicamente o nmero de provas que se podem fazer so muitas e as
diferenas podem existir entre um Microsoft Windows NT 4 Server e um Microsoft
Windows NT 4 Server Service Pack 6. s vezes pode-se afinar e saber exactamente
qual a verso do kernel de um sistema Linux e em outras no. Para isso vamos utilizar
diferentes ferramentas que j nos ajudam com um amplo conjunto de diferenciao de
sistemas operativos.
Nmap:
um scanner de informao sobre servidores, e, mesmo que sua principal utilidade a de um scanner de
portas tem opes de reconhecimento de sistemas operativos. A opo O. Voc tambm pode fazer
simplesmente um clique na interface grfica, se voc usa o frontend.(
. O scaneamento de sistemas
operativos que realiza o nmap no s se fica em Windows, Linux, etc.. .mas capaz de detectar
impressoras de rede, postos telefnicos PBX, ou telefones por IP. Para realizar esta deteco conta com
um enorme banco de dados para fazer uma deteco entre milhares, repito milhares, de sistemas
operativos (Windows Server NT, Windows NT Workstation SP4, Windows NT SP6, todos os sabores de
Linux, etc) Alm disso, nas novas verses realiza provas sobre as portas TCP e UDP descobertas e
capaz de tirar concluses do tipo Nokia Chekpoint redireccionando-se a IIS 6 sobre um Windows Server
2003.

Hping2 (ou hping3):


Esta utilidade [hping] se pode comparar com um ping mas em nvel TCP/IP, isto , podemos, mediante
comandos definir a conversao completa com um servidor com um tipo de pacotes enviados. A utilidade
nos permite enviar pacotes com os flags que queiramos activados, modificando todos e cada um dos
campos de uma mensagem TCP/IP: MTU, TOSSE, Bit de Urgncia, flags de SYN, etc Esta ferramenta vai
permitir averiguar o sistema operativo a base de realizar provas. Por sorte o nmap implementa quase
todas as tcnicas conhecidas para o reconhecimento de sistemas operativos, mas se alguma no estivesse
implementada pode-se utilizar o hping2 para implementa-la. Alm de reconhecer o sistema operativo
tambm vamos poder utiliz-la para averiguar os algoritmos de gerao de nmeros de sequncia (teis
em scaneamentos de portas e tcnicas de IP-Spoofing), a configurao de um firewall, e inclusive a
transmisso de arquivos encapsulados sobre os pacotes que configuremos.

As portas do sistema:
O seguinte passo, o que em um scaneamento rpido se realiza ao mesmo tempo, a deteco de portas
abertos em um sistema. O problema de uma porta estar aberta no nem mau nem bom. Uma porta se
abre para dar servio. O problema quando se abre uma porta que conecta com uma aplicao ou servio
que no est seguro ou que realmente o administrador ignora que o tem aberto em uma mquina. Desde
o ponto de vista de um teste de intruso preciso ver a que servios se pode chegar.
Detectar uma porta TCP aberta deveria ser to fcil como estabelecer uma conexo com dito servio; para
isso bastaria estabelecer uma conexo com um simples telnet, que, alm disso, nos mostrar a informao
na tela que servio ou aplicao do outro lado da porta est enviando.
Esta imagem foi redimensionada. Clique nesta barra para ver a imagem completa. A imagem original de tamanho 665x168.

Imagem 10: Telnet na porta 80

O problema reside nos alarmes que se activam ou na informao que se deixa nos logs quando se produz
o scaneamento, preciso levar em conta que o nmero de portas possveis de 65536 portas que podem
ser TCP ou UDP.

O mais provvel que um firewall deixe de responder a um determinado IP quando tenha-se produzido
mais de um nmero de tentativas de conexo vindo de um determinado ip, ou quando se pediram mais de
um nmero por unidade de tempo, ou quando h uma violao de protocolo (comando no vlido que
costuma denotar que um servio est falando com um ser humano atrs de um telnet e que cometeu um
erro ao digitar ou no comando), etc.

O objectivo dos mtodos de scan averiguar todos as portas que se encontram oferecendo
servio por TCP/UDP sem levantar alarmes e deixar o menos rastro possvel.

H muitos tipos de scaneamentos, e gostaria de explic-los todos aqui, mas no tenho espao e o Nilson
matava-me, mas se lhes os vou enumerar para que vocs possam buscar mais informao sobre eles. No
final a ideia consiste em enviar pacotes com uma determinada configurao e escutar como reage a
equipa scaneada. Um scaneamento no tem porque ser perfeito e s vezes no retornam todas as portas
que esto por trs de um firewall em um nico tipo de scaneamento. Os mais usados so o scaneamento
de SYN, de FIM, de SYN+ACK, de ACK, o scaneamento de NULL, que se realiza com todas as flags
apagadas e o de XMAS Tree, que recebe esse nome porque activa todas as bandeiras como se fossem luz
numa arvore de natal [E para UDP e Iddle Scanning].

Scan com Nmap:

Nmap, realiza o scan de estabelecimento de conexes (como se fizssemos um telnet) que se chama TCP
connect(), de SYN (ou de conexes meio abertas, j que se envia um pacote SYN a uma porta e se espera
a confirmao por parte do cliente sem nunca fechar a conexo), de FIM, de NULL e de XMAS Tree.

Para as portas UDP implementa-se um sistema baseado no envio de mensagens UDP a uma porta de 0
bytes de tamanho. Se se recebe uma mensagem ICMP que diz que inalcanvel ento porque a porta
est fechada, pelo contrrio se assume que est aberta. Este tipo de scaneamento, como muitos dos
anteriores pode ter um alto ndice de falsos positivos devido a que pode ter o firewall que proba todo o
trfego ICMP de sada ou que se tenha perdido a resposta.

Nos primeiros 2 capitulos deste megatutorial vimos como funcionavam as tcnicas de


footprinting e fingerprinting e vimos algumas ferramentas como a google hacking database, os
traceroutes, nmap ou hping2 (j est disponvel hping3). Agora vamos a estabilizar-nos
na busca de vulnerabilidades.
Identificao de Servios e Software:

Uma vez que sabemos quais so os sistemas operativos, firewalls e/ou portas abertas
necessrio descobrir as verses de software que correm por esses servios. O primeiro tentar
ver a informao que nos oferece abertamente. Para isso, costuma bastar uma conexo e
apanhar o banner do mesmo servio. No tpico anterior vimos como respondia um
servidor web, mas isto pode-se realizar com servios FTP, SMTP ou Listeners de Bases de
Dados.

Imagem: Telnet a SMTP

Imagem: Telnet a FTP


No caso de no poder afinar com o banner, com a inferncia de cruzar o sistema operativo, a porta
utilizada, etc, para identificar a verso, teremos que utilizar ferramentas de de servio fingerprinting. A
maioria dos scanners de vulnerabilidades (que vamos ver no terceiro artigo) implementam estas tcnicas
para a maioria de servios. Uma vez instalado o software, preciso procurar os problemas.
Bug:
O bug ou erro de segurana uma caracterstica de um software que pode fazer com que o programa
funcione incorrectamente ou de maneira no pensada. Muitos hackers definem bug como funcionalidade
no definida de um programa. Entendemos como Software confivel aquele que faz o que tem que fazer
e como software seguro aquele que faz o que tem que fazer e mais nada. Esse algo mais entre o software
confivel e o software seguro so os bugs.

Um software no tenha bugs muito difcil de se conseguir, preciso levar em conta que um programa
escrito em linguagem C, compilado com dois compiladores diferentes no gera o mesmo cdigo binrio,
depois um mesmo cdigo pode ser ou no vulnervel dependendo de compiladores, arquitecturas onde se
execute, linkadores, etc..

Na busca de bugs se utilizam duas tcnicas diferentes, as que podem realizar-se manualmente e com
olhos espertos, mas que se automatizam e que so as ferramentas de anlise esttico de cdigo e anlise
dinmico.

Ferramentas de Anlise Esttico de Cdigo:


Este tipo de ferramentas mantm uma base de dados de patres reconhecidos como erros de segurana,
como cpia de parmetros com strcopy sem comprovar tamanhos, etc e o que realizam uma busca
desses parmetros no cdigo de um programa sem que este se esteja executando. Esta forma de scanear
o cdigo o que recebe o nome de anlise esttico. Estas ferramentas podem analisar cdigos em
ensamblador, desensamblados directamente do binrio, ou cdigos fonte em linguagens me con .NET, C,
php, C++, etc ou em cdigos intermdios como Bytecodes ou IL. A diferena qualitativa entre estas
ferramentas a base de dados de patres que utilizam e a maioria das grandes casas de desenvolvimento
de software consideram isto como um conhecimento competitivo e de valor da companhia. Microsoft,
desde o ano 2002, utiliza ferramentas prprias de anlise de cdigo esttico em todos seus produtos. No
mundo do software livre, por causa do projeto bug hunting financiado pelo governo americano, utiliza
companhia Coverity para realizar anlise esttico de bugs nos principais projetos de software livre desde
Janeiro de 2006. Os relatrios com os primeiros resultados das anlises de Coverity esto disponveis
emhttp://scan.coverity.com
Existem mltiplas ferramentas de Anlise Esttica de Cdigo disponveis no site, e inclusive, muitos
compiladores acompanham seu ambiente de desenvolvimento com ferramentas deste tipo, como por
exemplo FxCop em Vistual Studio que comprova transbordamentos de buffer, condies de carreira, etc

Imagem: FxCop em Visual Studio


Projeto Bug Hunting:

Em Janeiro do ano 2006 comeou as instncias de uma universidade e o governo Americano do projeto
Bug Hunting, cujo objectivo era analisar os 50 projetos Open Source mais populares com as ferramentas
de Anlise Esttico de Cdigo da empresa Coverity. Os resultados que apareceram em Maro de 2006 (um
ano para quando saia publicado o artigo) esto disponveis na seguinte URL: http://scan.coverity.com. Se
pode ver na tbua, alguns dos resultados que se obtiveram depois de utilizar as ferramentas de anlise
esttica.

Imagem: Resultados Coverity

Ferramentas de Anlise dinmico:

A busca de bugs com ferramentas de anlise dinmica tem outra aproximao diferente. Neste caso o
programa a avaliar se executa e lhe passam provas e verificaes automticas que vo avaliar as
respostas e todo tipo de situaes diferentes. Uma ferramenta deste tipo deve ser capaz de avaliar todas
as possibilidades de todos os pontos de entrada de informao desde qualquer ponto externo para a
aplicao e detectar os casos anmalos.

Alguns exemplos de ferramentas deste tipo so Valgrind, pensada para detectar condies de carreira em
ambientes multihilo e erros de cor, Dmalloc.h, que uma livraria que se usa para comprovar as reservas
de cor ou VB Watch que injecta cdigos de anlise dinmicos dentro dos programas para monitorizar seu
funcionamento.

Exploits:

Uma vez que se encontraram os bugs, o objectivo criar uma ferramenta que saque partido
deles, isto , que seja capaz de fazer uso dessa funcionalidade no definida do programa.
Para isso, se analisam as possibilidades e alcance desse bug e se opta por um determinado
exploit. Todos os exploits tm duas partes diferenciadas, a cabeceira, que o que se denomina
exploit puramente, e o corpo, denominado payload. A cabeceira a parte artes que depende
de cada bug concretamente, enquanto o payload so aes j programadas que se reutilizam.
Por exemplo, uma ao tpica de um exploit seria devolver uma a shell de comandos da

mquina explorada a um determinado porto. Este payload se vai poder reutilizar para
mltiplos cabeceiras diferentes.
Metasploit Framework:
Esta ferramenta uma ferramenta bsica na tarefa de realizar um teste de intruso em uma empresa.
um ambiente que ana uma base de dados de cabeceiras de exploits e de payloads para poder realizar o
teste em uns determinados servidores. Actualmente na verso 3.0 em beta 3 tem um actualizador
automtico das bases de dados e ferramenta de administrao site.

Imagem: Metasploit Update


Na seguinte imagem pode-se ver como, mediante o interface web, podemos configurar os diferentes
payloads para um exploit, neste caso, um exploit de Samba para Linux.

Imagem: Configurao de Payload para um Exploit de SAMBA em Linux

0 days:

O termo 0-days se vai repetir muito nas auditorias de segurana:

- Um servidor em 0-days aquele que tem actualizado todo seu software s ltimas verses, isto , que o
software no tem nenhum bug conhecido. Esse o ponto mais seguro em que se pode ter o software de
um servidor.

- Um exploit de 0-days aquele que funciona em servidores 0-day, isto , que actualmente no existe
uma verso de software mais moderna para solucionar esse problema.

O objectivo de uma auditoria de segurana ser obter um servidor de 0-days e, se existissem exploits de
0-days, tomem as medidas para que o software vulnervel no se veja exposto. Isto , bloqueando
peties em firewalls, fortificando as restries nas mquinas ou com polticas de segurana nas diretivas
de segurana da rede.

POC e Os Meses temticos:


Quando se quer realizar um teste de intruso completo em um servidor, no valem s as ferramentas
comerciais e as que nos oferecem os fabricantes j que h muita informao que no sai pelos canais
comuns. As chamadas Provas de Conceito (POC) actualmente so muitas e normal que se saiba que
existe um exploit mas que no seja de uso pblico. Durante o ano passado H.D. Moore, um dos principais
contribuintes ao projecto Metasploit, decidiu realizar meses temticos junto de outros pesquisadores de
segurana, orientados a buscar exploits 0-days em diferentes reas. Assim, durante o ms de Julio se
centrou nos navegadores de Internet, durante o ms de Novembro nos kernels dos sistemas operativos,
durante o ms de Janeiro em Apple e j, Stefan Esser anunciou para o ms de maro, o ms dos erros em
PHP. Haver que estar atentos. Nestes projectos temticos o objectivo buscar um bug por dia e faz-lo
pblico. Isto, logicamente, acho muita controvrsia j que os canais de informao tradicionais so os de
avisar ao fabricante para que o corrija sem que os clientes fiquem expostos. Esta controvrsia levou, a
que se anunciasse para a ltima semana do ano 2006 a Semana dos erros de Oracle Database, por parte
de Cesar Cerrudo, um investigador de segurana centrado em Bases de dados, mas, devido presso
pblica a cancelasse.
As POC podem encontrar-se em muitas Websites dedicados segurana informtica: FRSirt
(http://www.frsirt.com), Milworm (http://www.milwOrm.com) ou Packet Storm
(http://packetstormsecurity.org/) so alguns dos mais utilizados.

Imagem: ltimas POC remotas em MilwOrm

Os meses temticos se podem encontrar nas seguintes URLS:

Imagem: ltimos dias no ms das vulnerabilidades da Apple


Fim do Capitulo III.
Expedientes de Segurana:

Quando um bug descoberto deve informar-se correctamente. Para isso cada fabricante de
software costuma manter sua prpria forma de codificar os expedientes de segurana, mas
surgiram na Internet muitas empresas que se dedicaram a manter suas prprias bases de
dados de expedientes de segurana. O trabalho rduo se pensarmos na quantidade de
projectos de software e o rpido que se descobrem novos bugs, com o qual impossvel dizer
que um banco de dados tem todos os erros conhecidos. O que se est claro que algumas se
transformaram em um standard de facto. As duas bases de dados mais utilizadas pela gente
que se dedica a segurana so Bugtraq de SecurityFocus [http://www.securityfocus.com/bid] e CVE
(Common Vulnerabilities and Exposures) [http://cve.mitre.org/cve]. Ambas bases de dados codificam
cada erro com um identificador e a partir da se analisa o software vulnervel, o software no
vulnervel que poderia ser susceptvel de s-lo por ser parte da famlia de produtos ou
verses, se discute sobre qual poderia ser o alcance de dito bug, se existe ou no o exploit
disponvel para esse erro e qual a soluo oferecida pelo fabricante. A vantagem destas
bases de dados, que em qualquer momento se podem consultar todos os expedientes de
segurana relativos a um determinado produto e verso para ver quais so as solues a
aplicar.

Imagem: ltimos expedientes em Bugtraqid

Imagem: Expediente de Segurana de um Bug

Como se pode ver na imagem, os expedientes de segurana armazenam os exploits associados a estes
erros, depois, se o servidor tem um erro sem regular e o exploit pblico nosso servidor est em um claro
risco, mas, mesmo que o exploit no seja pblico se devem aplicar as medidas de soluo que recomende
o fabricante j que, muitos exploits, devido a sua importncia ou impacto so de pagamento e pode que
existam e estejam circulando por Internet. preciso lembrar que os rumores falam de preos exagerados
para exploits de produtos populares ou de alto nvel de credibilidade. Na imagem se pode apreciar como
security focus, relaciona sua codificao com a codificao CVE.
Scanners de Explorao:

Uma das ferramentas que costumam aparecer justo depois que se tenha tornado pblico o
bug o exploit associado so scanners que implementam motores de busca de servidores
vulnerveis a esse erro e um mecanismo para executar dito exploit. Esto preparados para
atir-los de forma cmoda, j que a maioria das vezes se requer fazer modificaes nas POC
para que estas funcionem em diferentes ambientes, isto , se requer certo nvel tcnico para
poder utiliz-los, enquanto com estas ferramentas costuma ser to fcil como aplicar botes.
Alguns exemplos destas ferramentas nas seguintes capturas:

Imagem: RPC Jode Jode. Antigo scanner para um erro RPC.

Imagem: WebDAVScan. Para detectar Servidores com WebDAV activado.

Imagem: WebDAV Exploit. Associado ao WebDAVScan

Atualizaes de Segurana ou paths:


A maioria das solues que se aplicam aos erros de segurana do software costumam ser as actualizaes
de Segurana ou tambm chamados paths que nos oferece o prprio fabricante. Estes remendos devem
ser aplicados o mais rpido possvel, aps haver realizado previamente as comprovaes que estes no
afectam ao funcionamento normal de nossa infra-estrutura certamente. A premncia na aplicao dos
remendos se deve a que no momento em que se publica um remendo se est acelerando a criao dos
exploit. Por que? Pois porque o contar com o software sem patchear e com o software patcheado permite
aos criadores de exploits realizar engenharia inversa localizada. A ideia simples, se realiza uma imagem
do sistema sem parchear e depois outra imagem com o sistema patcheado, se comparam e se buscam as
diferenas. Quando se tm localizados os arquivos modificados se realizam comparaes desses arquivos
e mediante as tcnicas de debugging, similares s utilizadas para a criao craques, se procura o ponto de
erro no programa. Digamos que publicar um remendo marcar o lugar do problema por isso muito
importante actualizar o mais rpido possvel. Isto fez com que agora se fale que o segundo tera-feira de
cada ms, dia que Microsoft h pblicas suas actualizaes de segurana seja o dia do remendo e que o
segunda quarta-feira de cada ms seja o dia do exploit.
Microsoft Baseline Security Analyzer:
O primeira ferramenta que se deve utilizar para realizar uma auditoria de whitebox sua ou minha empresa
o MBSA, que vai a permitir-nos comprovar se alguma equipe ou servidor de B]nossa empresa lhe falta
alguma actualizao de segurana. Esta ferramenta da Microsoft e portanto s nos vai comprovar as
actualizaes de segurana dos produtos Microsoft, por isso se temos software de outras empresas, o
primeiro ver como se distribuem, se actualiza e se comprova se nossos produtos tm ou no todas as
actualizaes de segurana aplicadas.

Imagem: Microsoft Baseline Security Analyzer

MBSA no s uma ferramenta para buscar remendos no instalados, mas alm disso o que
denominamos uma ferramenta de Auditoria de whitebox, porque nos vai apanhar informao sobre o
sistema relativa a segurana, desde a poltica de senhas, a configurao de segurana do servidor web ou
os servios correndo. whitebox porque exige a utilizao das credenciais de um usurio e o primeiro
que se deve realizar em qualquer auditoria de segurana de servidores Microsoft. Mais informao sobre
MBSA na seguinte URL: http://www.microsoft.com/technet/sec.../mbsahome.mspx
Na mesma linha que MBSA, Microsoft oferece mais duas ferramentas, todas gratuitas, que so MS
Exchange Best Practices Analyzer e MS SQL Server Best Practices Analyzer. Estas ferramentas no ficam
s na configurao de segurana mas alm disso ajudam a ajustar os servidores para poder aplicar meias
de defesa em profundidade ou ajuste do rendimento. Se vamos analisar a segurana e um servidor os
relatrios oferecidos por estas ferramentas so importantes e a ter muito em conta.
E o ultimo artigo:
Pois no ltimo artigo desta srie veremos as ferramentas de scaneamento de vulnerabilidades e como se
deve realizar um processo completo da auditoria que ser no capitulo 6.

Você também pode gostar