You are on page 1of 63

Captulo

4
Tcnicas de Segurana da Informao: da Teoria
Prtica

Vincius da Silveira Serafim, Raul Fernando Weber, Rafael Saldanha


Campello

Abstract

The importance of the information security is unquestionable. New mechanisms, more


efficient techniques and international norms for the administration of the security of the
information are constantly developed. The availability of those new tools, however,
does not represent an equivalent increase in the security level. This is caused mainly by
the lack of the correct policy in the selection and implementation of those techniques.
The great problem observed nowadays is the excessive focus in security mechanisms
and, in many cases, a false sense of security. Operating systems are selected merely
according to commercial characteristics, firewalls are not well configured and are
installed in ineffective points and intrusion detection systems are installed without a
minimum knowledge of the reality of an organization, among other problems. It is not
enough to acquaint good knowledge in security mechanisms: it is necessary to take in
consideration the politics and the culture of security.

This tutorial is aimed to present, in a practical and objective way, the principles of
information security and its correct application in the current systems. For so much,
besides the conceptual aspects, practical applications of those techniques are the main
focus. Practical considerations on the most well known attacks, analysis of risks in an
organization, establishment of a security policy, selection and implementation of
security techniques, among other, are examples of the topics discussed.

Resumo

indiscutvel a importncia da segurana da informao. Novos mecanismos, tcnicas


mais eficientes e normas internacionais para a gesto da segurana da informao so
constantemente desenvolvidos. A disponibilidade dessas novas ferramentas, no entanto,
no tem representado um aumento equivalente no nvel de segurana, retrato,
principalmente, da falta de uma abordagem correta na seleo e implementao dessas
tcnicas. O grande problema observado atualmente o excessivo enfoque em
mecanismos de segurana e, em muitos casos, uma falsa sensao de segurana.
Sistemas operacionais so selecionados segundo caractersticas meramente comerciais,
firewalls so mal configurados e instalados em pontos pouco eficazes e sistemas de
deteco de intruso so instalados sem um conhecimento mnimo da realidade de tal
organizao, entre outros problemas. No bastam bons conhecimentos em mecanismos
de segurana: preciso levar em considerao a poltica e a cultura de segurana.

Nesse sentido, o objetivo deste trabalho apresentar, de forma prtica e objetiva, os


princpios de segurana da informao e sua correta aplicao nos sistemas atuais.
Para tanto, alm dos aspectos conceituais, aplicaes prticas dessas tcnicas so o
enfoque principal. Consideraes prticas sobre os ataques mais conhecidos, anlise
de riscos em uma organizao, estabelecimento de uma poltica de segurana, seleo e
implementao de tcnicas, dentre outros, so exemplos dos tpicos abordados.

4.1. Introduo
indiscutvel a importncia da segurana da informao no cenrio atual. O aumento
no nmero de aplicaes, a distribuio dessas aplicaes atravs do uso macio de
redes de computadores e o nmero crescente de ataques a esses sistemas retrata essa
preocupao e justifica o esforo em pesquisas voltadas a essa rea. Novos mecanismos,
tcnicas mais eficientes e normas internacionais para a gesto da segurana da
informao so constantemente desenvolvidos, incentivados por organismos
governamentais e empresas preocupados com o atual estgio de fragilidade da maioria
das instalaes computacionais.
A disponibilidade dessas novas ferramentas, no entanto, no tem representado
um aumento equivalente no nvel de segurana das organizaes, retrato,
principalmente, da falta de uma abordagem correta na seleo e implementao dessas
tcnicas. A maioria dos profissionais responsveis pela gerncia de segurana, oriundos
principalmente da rea de computao, possui uma formao tcnica que os leva a partir
da seleo de mecanismos sem considerar as reais necessidades da organizao. Essa
prtica causa distores que vo desde o gasto desnecessrio com mecanismos
desproporcionais ao problema enfrentado at a falta de proteo s informaes
realmente importantes, problemas abordados como ponto principal neste curso.
Segurana um atributo muito complexo e difcil de implementar
consistentemente em um sistema, principalmente em ambientes computacionais.
Projetar e implementar um sistema visando segurana significa analisar um conjunto
complexo de situaes adversas onde o projetista e um oponente elaboram estratgias de
modo completamente independente. O resultado desta anlise depende fortemente das
escolhas e tcnicas feitas por cada um dos oponentes.
Outra caracterstica marcante que segurana essencialmente um atributo
negativo. fcil caracterizar um sistema inseguro, mas no existe uma metodologia
capaz de provar que um sistema seguro. Assim, um sistema considerado seguro se
no foi possvel, at o momento atual, determinar uma maneira de torn-lo inseguro.
Com muita freqncia isto decorre simplesmente do fato que no foram testados todos
os mtodos de ataque (ou at mesmo menosprezados alguns) ou que no foram
identificados todos os possveis atacantes.
Por esses e outros fatores, to invivel e ineficaz quanto construir um prdio sem
planejar antecipadamente cada detalhe, impossvel pensar em segurana como um
apanhado de ferramentas dispostas sem uma avaliao prvia, levando em considerao
vulnerabilidades, riscos, importncia dos bens e relao custo/benefcio. Isso representa
a conjugao de trs critrios fundamentais: poltica, cultura e mecanismos de
segurana. O desequilbrio causado pela falncia de algum desses trs aspectos pode
representar a queda significativa no nvel de segurana esperado, cenrio comum em
muitas instalaes atuais.
A poltica de segurana dita os princpios e as regras que regem a segurana da
informao, importante para balizar a escolha de mecanismos e a adoo de
procedimentos relacionados ao assunto. A cultura de segurana um dos aspectos mais
delicados e est ligada ao treinamento e conscientizao de todos os envolvidos no
processo computacional, sejam eles funcionrios, tcnicos ou mesmo acadmicos. Sem
essa preocupao, qualquer estratgia de segurana ser ineficaz pela simples razo de
estar suscetvel a ataques que explorem tal fragilidade, como os conhecidos ataques de
engenharia social, por exemplo. Por fim, mas no menos importante, os mecanismos de
segurana garantem o cumprimento da poltica de segurana traada, e devem estar
alinhados com as exigncias da mesma.
O grande problema observado atualmente o excessivo enfoque em mecanismos
de segurana, causando distores j citadas e, em muitos casos, uma falsa sensao de
segurana. Sistemas operacionais so selecionados segundo caractersticas meramente
comerciais, firewalls so mal configurados e instalados em pontos pouco eficazes e
sistemas de deteco de intruso so comprados e instalados sem um conhecimento
mnimo da realidade de tal organizao, entre outros problemas. Escolhas equivocadas
como essas esto ligadas ao despreparo que a maioria dos profissionais responsveis
pela administrao e gerncia tem em relao a prticas corretas de avaliao, seleo e
implementao de tcnicas de segurana. No bastam bons conhecimentos em
mecanismos de segurana: preciso levar em considerao a poltica e a cultura de
segurana.
Isso refora a importncia de profissionais que tenham uma boa noo de todos
os aspectos que permeiam a verdadeira segurana, encarando-a como uma poltica
global dentro de uma organizao e no como atitudes isoladas e mal planejadas. Alm
disso, vale ressaltar a importncia da experincia quando o assunto segurana, o que
pode ser adquirido com o tempo ou atravs do contato com exemplos e situaes
prticas na criao de polticas, no estabelecimento de uma cultura e na implementao
de mecanismos adequados.

4.1.1. Segurana lgica


Dentre os diversos aspectos sob os quais a segurana pode ser analisada, um dos mais
importantes o da segurana lgica (digital) dos dados, que visam garantir:
privacidade: os dados somente so acessveis para as pessoas autorizadas;
autenticidade: os dados so autenticados (gerados pelas pessoas autorizadas);
integridade: os dados esto protegidos contra modificaes;
irrefutabilidade: o autor dos dados no pode negar sua autoria;
disponibilidade: os dados devem estar disponveis quando forem necessrios.
Muitos destes atributos so garantidos como uso de criptografia ou de tcnicas
de tolerncia a falhas, mas deve-se dedicar especial ateno a preveno contra intruso
e contra falhas intencionais. Infelizmente, a evoluo histrica dos computadores
pessoais e das redes introduziu dois pontos fracos:
segurana em PCs praticamente inexistente - vrios aspectos de segurana foram
deliberadamente retirados do projeto dos computadores pessoais, com o
propsito inicial de torn-los mais baratos e acessveis. Como conseqncia, os
computadores pessoais atuais possuem arquitetura aberta ( fcil acrescentar
novos perifricos e/ou placas de expanso) e sistema operacional aberto (no
sentido de ser tambm fcil de acrescentar novas rotinas e funes ao sistema).
Acrescenta-se a isso o fato dos PCs serem amplamente difundidos e possurem
um controle de acesso ineficaz e tem-se uma plataforma insegura, fcil de ser
atacada e fcil de ser explorada para realizar ataques. extremamente simples a
um usurio instalar um sistema operacional em uma mquina, obter privilgios
de administrador nesta mquina e instalar nela toda a espcie de software.
segurana na Internet praticamente inexistente - desde o seu incio em 1969 com
a Arpanet, o objetivo principal era fornecer conectividade e disponibilidade.
Existia pouca preocupao com a segurana, pois o uso inicial foi
principalmente acadmico e de pesquisa. Atualmente, a Internet est sendo
usada para vrios fins no previstos inicialmente e os seus mecanismos fracos de
identificao e autenticao, aliados a um acesso irrestrito e a falta de proteo
aos dados, tornam a rede extremamente vulnervel.
A Internet foi projetada visando fornecer conectividade entre computadores para
uma comunidade restrita de usurios que confiavam mutuamente entre si. Ela no foi
projetada para um ambiente comercial, para trfego de informaes valiosas ou
sensveis ou para resistir a ataques mal-intencionados. Durante a dcada de 80, antes da
popularizao da Internet, os computadores foram alvos de ataques individuais e
isolados. A soluo adotada foi relativamente simples: incentivar os usurios a
escolherem boas senhas, prevenir o compartilhamento indiscriminado de contas e
arquivos e eliminar os bugs de segurana de programas como sendmail, finger e login
medida que eles iam sendo descobertos.
A partir da dcada de 90, entretanto, os ataques tornaram-se mais sofisticados e
organizados, principalmente devido difuso de programas que realizam estes ataques
de forma automtica (ironicamente, a difuso ocorre pela prpria Internet):
senhas e outras informaes importantes so capturadas por sniffers;
computadores so invadidos ou paralisados por ataques de spoofing;
sesses so desviadas atravs de connection hijacking;
dados so comprometidos pela insero de informao espria via data
spoofing;
Esses ataques so diretamente relacionados ao protocolo IP, que no foi
projetado para o ambiente atual da Internet:
embora projetado para ser tolerante a falhas de hardware e vrias falhas de
software, o IP no possui resistncia contra ataques intencionais;
o IP no foi projetado para fornecer segurana: assumiu-se que esta tarefa seria
realizada por protocolos de maior nvel de abstrao.

4.1.2. Ameaas e Ataques


A falta de segurana na estrutura e nos servios da Internet possibilita uma grande srie
de ameaas e ataques. O seu protocolo bsico, o IP (Internet Protocol), transmite os
dados em claro e sem autenticao eficaz, o que possibilita dois tipos bsicos de ataque:
ataque passivo, onde o atacante com o uso de um sniffer capaz de monitorar
toda a transmisso e obter uma cpia de todos os dados transmitidos;
ataque ativo, onde, adicionalmente, o atacante capaz de interceptar e alterar os
dados transmitidos, utilizando para isso desde a falsificao de dados, nos mais
diversos nveis (ARP spoofing, IP spoofing, DNS spoofing), at a realizao de
ataques sofisticados como o ataque do homem-no-meio e o uso de tcnicas de
engenharia social para obter informaes teis de usurios desavisados.
A esses ataques soma-se a explorao de vrias vulnerabilidades encontradas
nos servios baseados em IP que so disponibilizados na Internet:
m configurao dos servios, o que permite a pessoas sem autorizao ter
acesso a dados confidenciais. Podem tambm causar a queda de todo o sistema,
caso recebam mais dados do que consigam tratar;
servios no utilizam nenhuma forma de criptografia nos dados a serem
transmitidos pela Internet. Dados confidenciais que trafegam pela Internet
podem ser interceptados, incluindo senhas de usurios;
servios utilizam mecanismos de autenticao fceis de serem enganados.
Enganando o sistema de autenticao, pessoas podem se passar por usurios
legtimos ou mquinas confiveis;
implementao de clientes e servidores apresentam falhas de software (bugs).
Explorando esses bugs, pessoas podem executar aes s quais no teriam
originalmente permisso ou ento paralisar mquinas e servios (ataque de
negao de servio, ou denial of service).
servios so baseados em TCP/IP, o qual tem seus prprios problemas de
segurana. Permite que uma conexo j estabelecida e corretamente autenticada
pelo legtimo usurio seja roubada e utilizada por pessoas no autorizadas.
dever de todo administrador identificar os principais problemas de segurana
no seu domnio e empregar mecanismos para solucion-los. Para reduzir a probabilidade
de erros e reduzir o nmero de brechas no sistema, importante que se siga um padro
bem definido durante a configurao dos servios. importante, tambm, considerar
alternativas mais robustas, como uso de criptografia, quando tarefas crticas estiverem
envolvidas.
De todas as vulnerabilidades apresentadas acima, talvez as que mais sejam
exploradas por pessoas mal intencionadas so aquelas relacionadas com erros de
implementao. Ao longo dos anos, diversos bugs foram encontrados nos mais distintos
produtos de diferentes fornecedores, sendo utilizados por atacantes para conseguir
acesso. funo dos fornecedores liberar verses que os corrijam, e funo dos
administradores de sistemas implant-las. Caso esta implantao demore, atacantes
podero se valer de bugs j divulgados e amplamente discutidos.

4.1.3. Gerncia de segurana


A evoluo da Internet e dos sistemas de computao em geral contribuiu para uma
dificuldade inerente de gerenciar a segurana. Alm de diminuir a facilidade de uso de
um sistema e restringir a liberdade do usurio, a segurana ainda sofre de problemas de
falta de normalizao, falta de suporte nos sistemas de computao, problemas legais de
importao/exportao e de falta de conscientizao por parte de administradores e
usurios.
A definio de uma poltica de segurana o primeiro passo para que se possa
escolher e implementar quais os mecanismos de proteo sero utilizados. necessrio
que as seguintes questes sejam profundamente consideradas:
o que se est querendo proteger?
o que preciso para proteger?
qual a probabilidade de um ataque?
qual o prejuzo se o ataque for bem sucedido?
implementar procedimentos de segurana ir ser vantajoso no ponto de vista
custo/benefcio?
Cada uma dessas questes deve ser muito bem discutida. Qualquer medida de
segurana que for implantada deve levar em considerao o usurio, pois ele quem
utiliza o sistema no dia-a-dia. Do ponto de vista de segurana, pode-se encontrar quatro
posturas que definem, de forma irnica e um pouco sarcstica, os 4 Ps da segurana:
paranico: tudo proibido, mesmo aquilo que deveria ser permitido. Como
regra, a conexo Internet nunca deveria ter sido estabelecida;
prudente: tudo que no explicitamente permitido proibido. a melhor
postura atual, apesar de requerer uma boa administrao;
permissivo: tudo que no explicitamente proibido permitido. Esta era a
postura comum at o incio da dcada de 90;
promscuo: tudo permitido, inclusive o que deveria ser proibido.
A poltica de segurana deve estar sempre sendo revisada, pois ao longo do
tempo as necessidades se alteram. Note-se que a segurana atravs do desconhecimento
(security through obscurity), um enfoque muito adotado atualmente, uma postura
muito perigosa. Adotando esse enfoque, muitos domnios acreditam estar seguros pelo
fato de imaginarem que ningum sabe a seu respeito. Assim, realizam pouco ou nenhum
trabalho voltado segurana da organizao. Uma vez conhecidos, sero alvos fceis.
A segurana pode ser implementada no nvel de hosts ou no nvel de rede. Com
segurana de hosts, cada mquina protegida isoladamente. Este enfoque funciona bem
quando implantado em domnios pequenos, mas normalmente um processo complexo,
demorado e caro tornar cada mquina segura. Esta tarefa se torna ainda mais complexa
se uma grande variedade de fornecedores de mquinas, sistemas operacionais e
programas est envolvida.
Na segurana no nvel de rede, todas as mquinas de um domnio so protegidas
por apenas um mecanismo que est presente entre os canais de comunicao que
conectam mquinas internas com mquinas externas. Em outras palavras, este
mecanismo representa uma barreira entre todas as conversaes entre a rede interna e a
rede externa. Com a adoo deste enfoque, o domnio estar protegido
independentemente da configurao e das vulnerabilidades das mquinas internas.
Teoricamente, uma barreira pode proteger uma grande quantidade de computadores
contra ataques. Entretanto, como nenhuma segurana absoluta, importante que as
mquinas internas apresentem mecanismos de segurana no nvel de host. Atualmente a
segurana de rede implementada atravs de firewalls e IDSs baseados em rede.
Para implementar a poltica de segurana em um domnio, pode ser necessria a
aplicao de alguma estratgia de segurana. As mais comuns so:
atribuir privilgios mnimos (least privilege): dar a usurios, administradores e
programas somente os privilgios que so necessrios para que suas tarefas
sejam realizadas. Nunca se deve dar mais poder do que o necessrio;
criar redundncia de mecanismos (defense-in-depth): nunca confiar em somente
um mecanismo para realizar a segurana. Utilizar dois ou mais mecanismos
uma boa alternativa, pois implementa redundncia. Caso um componente falhe,
o sistema ainda estar protegido pela presena dos demais. Note-se que no
aconselhvel que se implemente defense-in-depth utilizando dois componentes
de um mesmo fabricante. Isto facilita a entrada de atacantes devido a erros de
configurao ou bugs no software;
criar ponto nico de acesso (choke point): esta estratgia fora que toda a
comunicao entre a rede interna e a Internet passe por apenas um canal. Nesse
canal devem estar presentes componentes de segurana e monitoramento a fim
de torn-lo seguro (como qualquer outra comunicao, tentativas de ataque
tambm passaro por ele);
determinar os pontos mais fracos (weakest link): deve-se eliminar todos os
pontos fracos do sistema. Pontos fracos so os alvos preferidos dos atacantes,
principalmente devido ao potencial de sucesso que eles representam. Se no for
possvel elimin-los, devero ser muito bem monitorados;
tornar o sistema livre de falhas (fail-safe): caso um componente falhe, ele deve
parar de funcionar de modo a no permitir o acesso do atacante. At que seja
consertado, ele negar tambm acesso de pessoas autorizadas;
prezar a simplicidade: o uso exagerado ou complexo de muitos mecanismos de
defesa pode at aumentar a segurana, mas dificulta a sua gerncia ou
modificaes futuras;
incentivar a participao universal: todos os integrantes de um sistema
computacional so importantes, desde o usurio mais simples at o
administrador. Todos devem ser conscientizados da importncia da segurana e
do seu papel na obteno efetiva da segurana.
4.2. Ameaas e ataques: aspectos prticos
Ao preocupar-se com a segurana de um sistema, um administrador no pode
simplesmente limitar-se ao tratamento dos efeitos de aes maliciosas executadas sobre
o mesmo, mas deve, principalmente, concentrar-se na preveno da causa desses
efeitos: o ataque. Para que isso seja possvel, o administrador deve ter ao menos
conhecimento das etapas mais comuns de um ataque e do funcionamento das tcnicas e
ferramentas mais utilizadas pelos atacantes. Infelizmente, como se pode constatar na
prtica, so muito poucos os administradores com esse conhecimento e com tempo
disponvel para adquiri-lo, o que representa uma grande vantagem para os atacantes.

4.2.1. Etapas de um ataque


Um ataque, seja ele de origem interna (e.g. executado por um usurio) ou externa (e.g.
vindo da Internet), composto basicamente por quatro etapas (figura 4.1). A primeira
etapa compreende a escolha do alvo pelo atacante e o levantamento de informaes
sobre o mesmo. A forma como a escolha do alvo realizada definida pela motivao
do atacante. Entre as formas de escolha mais comuns, destacam-se:
por vulnerabilidade: o alvo escolhido segundo as vulnerabilidades que esse
apresenta e no pelo papel que desempenha, ou seja, qualquer sistema vulnervel
ser escolhido como alvo. Normalmente o atacante escolhe uma vulnerabilidade
bastante comum e varre grandes faixas de endereos IP a procura de sistemas
potencialmente vulnerveis;
por popularidade: o atacante escolhe um determinado sistema como alvo
simplesmente pela grande popularidade do mesmo. Normalmente o objetivo do
atacante alterar pginas web;
pelo papel desempenhado: a escolha direcionada por objetivos mais
especficos do atacante com relao aos dados armazenados no alvo.
Escolha do alvo Aplicao das Explorao do
Obteno e teste
e levantamento ferramentas resultado
de ferramentas
de informaes contra o alvo do ataque

Figura 4.1. Etapas de um ataque

O levantamento de informaes principalmente baseado em fontes pblicas de


informao e em interaes, intrusivas ou no, com o alvo. As ferramentas utilizadas
nesta etapa, assim como nas outras, so descritas separadamente nas prximas sees.
As duas etapas seguintes, dependendo da postura adotada pelo atacante, podem
ser fundidas em uma nica. O atacante prudente, preocupado em reduzir ao mximo os
indcios de sua atividade, ir procurar (ou mesmo desenvolver) as ferramentas mais
apropriadas para atacar o seu alvo, levando em conta as vulnerabilidades anteriormente
enumeradas. A partir da, ele as testa em um ambiente controlado antes de aplic-las
diretamente no alvo. J o atacante menos preocupado com a deteco de suas
atividades, normalmente chamado script kid, escolhe suas ferramentas de forma menos
criteriosa e as testa diretamente sobre o alvo. O atacante prudente consegue reduzir
significativamente o nmero de tentativas mal sucedidas e, conseqentemente, o volume
de indcios deixados no alvo (e.g. em arquivos de log), dificultando a sua deteco mas
no a impossibilitando. Essas duas etapas podem ser repetidas diversas vezes at que o
atacante obtenha sucesso (ou simplesmente desista).
Por fim, a ltima etapa de um ataque a explorao dos resultados obtidos com
o sucesso da aplicao de uma ferramenta sobre uma vulnerabilidade do sistema. Nessa
etapa, o atacante busca aumentar os seus privilgios de acesso, se j no os possui no
mais alto grau (e.g. root ou administrador), garantir os seus acessos futuros (limpando
logs e instalando backdoors) e os demais passos necessrios para cumprir seu objetivo.
A partir desse ponto o atacante tende a desenvolver um novo ciclo de ataque tomando o
sistema invadido como base para atacar sistemas vizinhos, os quais muitas vezes no
eram visveis antes da invaso.
Apesar de tais procedimentos de ataque parecerem bastante simples, qualquer
ataque um pouco mais complexo do que aqueles baseados no uso de uma ou duas
ferramentas com uma boa interface grfica, at mesmo intuitiva, exige conhecimentos
um pouco mais profundos do funcionamento das tecnologias envolvidas (e.g. ethernet,
TCP/IP, firewalls e IDSs). Isso certamente constitui um fator limitador da gravidade dos
ataques mais comumente executados, embora no seja muito eficiente.

4.2.2. Ferramentas e tcnicas para o levantamento de informaes


Pode-se dividir essas ferramentas e tcnicas em duas classes: no intrusivas e intrusivas.
As pertencentes primeira classe normalmente no atuam diretamente sobre o alvo - ao
menos no de maneira diferente que um cliente comum de servios faria -, sendo
baseadas em fontes pblicas de informao. As da segunda classe atuam diretamente
sobre o alvo testando as mais variadas possibilidades de comunicao e obtendo ou
deduzindo da as informaes desejadas pelo atacante. Uma das caractersticas mais
comuns dessa segunda classe o comportamento completamente anormal quando
comparado ao dos clientes comuns de servios do sistema.
No intrusivas
A ferramenta mais comum empregada neste tipo de ao o navegador web. Atravs
dele pode-se acessar praticamente todas as fontes pblicas de informao do alvo
disponibilizadas na rede (ou na Internet). A primeira fonte a ser consultada o prprio
site do alvo, onde pode-se obter informaes sobre sua misso, tipos de clientes e de
servios declaradamente disponibilizados. claro que no s os dados visveis devem
ser consultados: deve-se tambm inspecionar os cdigos-fonte das pginas a procura de
comentrios e outras informaes potencialmente teis para o ataque mas que no so
apresentadas pelo navegador.
Ainda com o uso do navegador possvel utilizar servios como o whois. O
whois encontrado em sites regionalizados (normalmente por pas) e atravs dele
possvel obter-se informaes como faixas de endereos IP reservados para o alvo,
endereo fsico do alvo, nomes e endereos dos servidores de DNS, bem como nomes e
telefones para contato. A raiz mundial do whois pode ser consultada em
http://www.arin.net e no Brasil em http://registro.br. Abaixo segue um exemplo de uma
consulta realizada no Registro.br pelo domnio ufrgs.br:
domnio: UFRGS.BR
entidade: Universidade Federal do Rio Grande do Sul
documento: 092.969.856/0001-98
responsvel: <nome do responsvel>
endereo: Rua Ramiro Barcelos, 2574, UFRGS-CPD
endereo: 90035-003 - Porto Alegre - RS
telefone: (051) 3165072 []
...
servidor DNS: VORTEX.UFRGS.BR 143.54.1.7
...
servidor DNS: GW.CESUP.UFRGS.BR 143.54.3.12
...
servidor DNS: DNS.POP-RS.RNP.BR
...

ID: <normalmente as iniciais>


nome: <nome do responsvel>
e-mail: ...
endereo: Rua Ramiro Barcelos, 2574,
endereo: 90035-003 - Porto Alegre - RS
telefone: (051) 3165045 []
...

Outra possibilidade de coleta de informaes atravs da troca de e-mails com


usurios internos do alvo. Aqui, novamente, a informao interessante para o atacante
no est contida somente no contedo visvel do e-mail, mas principalmente nos
cabealhos do mesmo. Seguem abaixo alguns dados retirados do cabealho de um e-
mail:

1 Received: from mail.dominioX.com (localhost.localdomain [127.0.0.1])


2 by dominoX.com (8.11.0/8.11.3) with ESMTP id g32Mn2J53943;
3 Mon, 4 Mar 2001 19:49:01 -0300
4 Received: from smtp.dominioY.com (server.dominioY.com [230.110.90.20])
5 by dominoX.com (8.11.0/8.11.3) with ESMTP id g32Mn2J53943;
6 for <lista@dominoX.com>; Mon, 4 Mar 2001 19:48:39 -0300
7 Received: from dominioZ.com (dominioZ.com [230.110.90.25])
8 by dominioZ.com (8.12.1/8.12.1/Debian -5) with ESMTP id ...
9 for <lista@dominioX.com>; Mon, 4 Mar 2001 20:49:23 -0300
...
10 Message-ID: <Pine.LNX.4.43.0203042048370.29092-
...

Nesse cabealho, informaes como o IP do servidor SMTP do emissor (linha 7)


bem como a verso do servio e sua plataforma (linha 8) podem ser facilmente obtidas.
Ainda sobre o emissor, a linha 10 deixa evidente o programa de e-mail por ele utilizado
(Pine) e a plataforma em que estava trabalhando (Linux). Alm de informaes sobre o
emissor, pode-se obter informaes sobre servidores intermedirios (linhas 4 e 5) que,
quando combinadas com outras informaes de fontes adicionais, podem revelar para o
atacante dados sobre a organizao da rede interna.
Outras duas ferramentas bastante comuns so o ping e o traceroute. O primeiro
amplamente conhecido e sua funo bsica verificar se uma mquina est ativa atravs
do envio de mensagens ICMP tipo echo request. A mquina ativa normalmente
responde com outra mensagem ICMP mas do tipo echo reply. Na verdade o ping a
ferramenta mais simples que implementa esse tipo de mecanismo e, claro, existem
outras mais avanadas como o hping2 e o nmap. Dependendo da forma como so
utilizadas essas ferramentas podem ser consideradas intrusivas. O uso mais comum
dessas ferramentas feito pelo atacante para obter uma lista de endereos de mquinas
atualmente ativas e acessveis via ICMP.
O traceroute tambm baseado em mensagens ICMP, mas do tipo TTL
exceeded, e o seu objetivo determinar a rota que os pacotes esto fazendo at chegar
ao alvo. Com base na rota obtida possvel identificar, alm da rota externa (Internet),
as rotas internas do alvo, quando essas existem. Abaixo segue um exemplo do uso do
traceroute:

#traceroute alvo.sub.domZ.br
1 dial.domX.com.br (210.90.136.14) 116.963 ms 119.668 ms 130.050 ms
2 fw.domX.com.br (210.90.136.1) 119.751 ms 119.800 ms 119.907 ms
3 atm.domY.com.br (201.100.129.132) 119.875 ms 119.809 ms 119.917 ms
4 gw.domZ.br (201.100.129.4) 119.981 ms 129.798 ms 119.916 ms
5 gw.sub.domZ.br (154.34.4.3) 129.896 ms 139.799 ms 129.925 ms
6 154.34.12.2 (154.34.12.2) 129.912 ms 139.797 ms 129.968 ms
7 alvo.sub.domZ.br (154.34.8.66) 129.781 ms 139.886 ms 139.868 ms

Com esse resultado possvel identificar o gateway externo do alvo (linha 4) e


dois gateways internos (linhas 5 e 6), alm dos tempos de resposta de cada
intermedirio.
Tanto o traceroute quanto o ping podem fornecer mais algumas informaes
interessantes para o atacante. Por exemplo, supondo o seguinte caso:
com o uso do navegador possvel acessar as pginas servidas pelo
alvo.sub.domZ.br;
ao disparar um ping para alvo.sub.domZ.br nenhuma resposta obtida, ou seja, a
mquina tida como inativa;
o traceroute no consegue completar sua operao simplesmente parando em um
endereo que no do alvo.sub.domZ.br.
Com base nessas informaes o que o atacante poderia deduzir?1
Intrusivas
So vrias as ferramentas e tcnicas situadas nessa classe. Uma das tcnicas mais
simples a explorao de uma falha de configurao de servidores DNS. Normalmente
s possvel perguntar a um servidor DNS por nomes especficos, ou seja, no
comum clientes requisitarem a um DNS uma lista de todos os nomes encontrados
naquele domnio para s ento escolher o destino. A listagem de todo o contedo de um
domnio chamada de Zone Transfer e normalmente requisitada via TCP (porta 53)
apenas por servidores secundrios (slaves) de DNS, no devendo ficar disponvel
publicamente. Felizmente, para o atacante, no raro encontrar servidores mal
configurados. Afim de explorar esse erro de configurao o atacante pode utilizar duas
ferramentas: host e dig (ambas encontradas na grande maioria de sistemas GNU/Linux).
Utilizando o host o atacante busca obter uma lista de servidores DNS responsveis por
um determinado domnio:

1
como a mquina responde normalmente as requisies do navegador, evidente que ela est ativa, o que
deveria ser constatado tambm pelo uso do ping e do traceroute. Concluso: existe um firewall
protegendo o alvo.
# host t ns domX.com.br
domX.com.br name server ns1.domX.com.br
domX.com.br name server ns2.domX.com.br
domX.com.br name server gw.domX.com.br

Conforme citado anteriormente, esses mesmos dados podem ser obtidos atravs
do Registro.br. Em seguida, utilizando o dig, o atacante faz requisies de Zone
Transfer para cada um dos servidores. importante que o atacante teste todos os
servidores pois muito comum os administradores bloquearem o Zone Transfer apenas
para servidores primrios, esquecendo-se dos secundrios. Segue abaixo a seqncia
das aes do atacante:

1 # dig @ns1.domX.com.br domX.com.br axfr


2 ; <<>> DiG 9.1.3 <<>> @ns1.domX.com.br domX.com.br axfr
3 ;; global options: printcmd
4 ; Transfer failed.

5 # dig @ns2.domX.com.br domX.com.br axfr


6 ; <<>> DiG 9.1.3 <<>> @ns2.domX.com.br domX.com.br axfr
7 ;; global options: printcmd
8 domX.com.br. 86400 IN NS ns1.domX.com.br.
9 domX.com.br. 86400 IN NS ns2.domX.com.br.
10 domX.com.br. 86400 IN NS gw.domX.com.br.
11 domX.com.br. 86400 IN MX 10 mail.domX.com.br.
12 mail.domX.com.br. 86400 IN CNAME svr1.domX.com.br.
13 ftp.domX.com.br. 86400 IN CNAME svr1.domX.com.br.
...
14 svr1.domX.com.br. 86400 IN A 164.17.100.20
15 svr1.domX.com.br. 86400 IN HINFO "Pentium III 1GHz"
"Linux Red Hat 6.2"
...
16 fw.domX.com.br. 86400 IN A 164.17.100.1
17 fw.domX.com.br. 86400 IN HINFO "Pentium II 400MHz"
"Linux Red Hat 6.2"
...

Como pode ser constatado na linha 4 do exemplo, a primeira tentativa de realizar


um Zone Transfer (axfr) a partir do servidor ns1 falhou, j a segunda com o servidor ns2
(linha 5) foi realizada com sucesso. A partir da, alm de obter uma lista de todas as
mquinas cadastradas no domnio, o atacante pode vir a obter informaes ainda mais
interessantes como: o nome real de uma mquina (linhas 12 e 13), informaes sobre a
plataforma de hardware e sistema operacional (linhas 15 e17) alm de identificar o
papel de determinadas mquinas (linhas 16 e 17, onde fw significa firewall). Outras
ferramentas como o nslookup podem ser utilizadas ao invs do host ou do dig.
Outra tcnica bastante comum, talvez a mais utilizada pelos atacantes, a
varredura de endereos IP e de portas de servidores. A varredura de uma faixa de
endereos realizada com o objetivo de enumerar as mquinas ativas, ou ao menos
alcanveis. Normalmente isso feito com a transmisso em massa de mensagens
ICMP echo request, mas existem diversas outras tcnicas mais complexas que tambm
podem ser empregadas para esse fim. J a varredura de portas tem como objetivo
enumerar quais portas (TCP e UDP) de uma determinada mquina esto abertas,
fechadas ou mesmo filtradas. A ferramenta mais popular empregada para os dois tipos
de varredura o nmap (http://www.insecure.org/nmap/). A sua popularidade se deve ao
fato de reunir em si as mais diversas tcnicas de varredura, desde as mais simples at as
mais elaboradas. Abaixo segue um exemplo do uso do nmap:
# nmap sS O cruz.domX.br
Starting nmap V. 2.54BETA33 ( www.insecure.org/nmap/ )
Interesting ports on cruz.domX.br (154.34.13.4):
(The 1545 ports scanned but not shown below are in state: closed)
Port State Service
22/tcp filtered ssh
80/tcp open http
111/tcp open sunrpc
139/tcp open netbios-ssn
443/tcp open https
515/tcp open printer
548/tcp open afpovertcp
689/tcp open unknown
1024/tcp open kdm
Remote operating system guess: Linux 2.1.19 - 2.2.19
...

Alm da varredura de endereos e de portas existe a varredura de


vulnerabilidades, ou seja, o atacante testa, verifica, ativamente as configuraes e
verses dos servios disponibilizados pelo alvo. Assim como o nmap para as varreduras
de endereo e de portas, o Nessus (http://www.nessus.org) a ferramenta mais popular
para a varredura de vulnerabilidades. Ele realiza atualmente mais de 900 testes de
segurana para as mais variadas plataformas e servios. O Nessus foi desenvolvido para
ser utilizado pelos prprios administradores para verificarem a segurana dos seus
servidores, mas normalmente so os atacantes que acabam por utiliz-lo primeiro.
Existem tambm ferramentas para testar servios especficos, como o Stealth
(http://www.nstalker.com/nstealth) que testa servidores web. O Stealth uma
ferramenta desenvolvida por um brasileiro e inicialmente era livremente
disponibilizada, atualmente a mesma um produto comercial. Apesar disso, a ltima
verso livre bastante interessante e ainda aponta falhas bastante comuns em servidores
web.
Essas so apenas algumas das ferramentas e tcnicas das quais os atacantes
lanam mo no momento de levantar informaes sobre o seu alvo. Outras como o
levantamento de regras de firewalls, via hping2 (http://www.hping.org), firewalk
(http://www.packetfactory.net/Projects/ Firewalk) e nemesis
(http://jeff.wwti.com/nemesis/), so tambm bastante comuns. Dessa forma, recomenda-
se fortemente que o leitor busque informaes adicionais sobre elas.

4.2.3. Obteno de ferramentas e tcnicas de ataque


A grande maioria dos atacantes no desenvolve suas prprias tcnicas e ferramentas de
ataque, mas busca-as na Internet. Mais uma vez, chama-se a ateno para o fato de que
as mesmas informaes esto tambm disponveis para os administradores, que
deveriam manter-se informados sobre as ferramentas e tcnicas de ataque existentes.
Alguns dos principais sites de busca de ferramentas so:
http://online.securityfocus.org
http://packetstormsecurity.org
http://www.hackers.com/
claro que sites genricos de busca como http://www.google.com tambm so
bastante teis.
4.2.4. Ferramentas e tcnicas de ataque
As ferramentas abordadas nesta seo podem ser utilizadas tanto na quarta etapa do
ataque quanto nas duas etapas anteriores a ela. Cabe aqui lembrar que o fato do atacante
ser interno facilita bastante a primeira fase do ataque e normalmente permite que ele
empregue ferramentas como os sniffers para a captura de dados e senhas antes da quarta
etapa. Desse modo, no pretende-se aqui classificar as ferramentas, mas apenas indicar
e exemplificar os seus principais empregos.
Backdoors
A funo de um backdoor permitir algum tipo de acesso ilegal ao sistema alvo. Eles
servem tanto para manter o acesso do atacante ao sistema invadido quanto para criar um
novo canal de acesso (isso acontece principalmente com a ajuda de usurios internos).
Os backdoors podem operar atravs de praticamente qualquer tipo de firewall que no
bloqueie absolutamente todo o tipo de trfego (principalmente quando um usurio
interno est envolvido).
Utilizando a ferramenta netcat (hoje incorporada maioria das distribuies
GNU/Linux) bastante fcil a criao de um backdoor simples:
alvo# nc v l p 8080 e /bin/sh
atacante# nc v alvo 8080

Neste exemplo o netcat disparado no alvo de forma a ficar em estado de espera


(l) na porta 8080 e executar o comando /bin/sh quando a conexo for estabelecida. O
atacante apenas executa o netcat informando o endereo do alvo e a porta a ser
conectada. O resultado a abertura de uma shell remota sem nenhum tipo de
autenticao. Ainda tomando este exemplo, possvel alterar os papis de quem inicia e
quem recebe a conexo, ou seja, pode-se fazer o alvo iniciar a conexo e oferecer a shell
ao atacante (recurso muito til para passar por firewalls).
Outra ferramenta o hping2 que, assim como netcat, pode utilizar TCP e UDP
para a criao de um canal de comunicao alm do ICMP ou somente IP. Utilizando o
hping2 possvel a transferncia de dados utilizando-se pacotes ICMP echo
request/reply, por exemplo, evitando que o administrador d maior importncia ao
trfego gerado pelo atacante.
Tanto o netcat quanto o hping2 permitem a livre escolha de portas de origem e
de destino, tanto para o cliente quanto para o servidor, tornando possvel a passagem por
firewalls que filtram todas as portas deixando somente algumas abertas (e.g. 25, 80,
110, 443). Ainda, no caso de existncia de proxy pode-se utilizar uma dessas
ferramentas combinadas com um tnel (essas ltimas sero comentadas a seguir) afim
possibilitar a comunicao mesmo atravs do proxy.
Foi vista aqui somente uma nfima parte das inmeras possibilidades de uso
dessas ferramentas, assim recomendado que o leitor experimente cada uma delas a fim
de obter uma noo real das suas potencialidades.
Tneis ou canais subliminares
Essa uma tcnica bastante comum, utilizada para burlar firewalls e mesmo para evitar
a ateno dos administradores ao trfego gerado pelo atacante. O seu principal objetivo
fazer com que um determinado trfego no autorizado seja escondido dentro de
pacotes cujo trfego autorizado, por exemplo: caso exista um firewall entre o atacante
e o alvo, e o atacante consiga a cooperao (voluntria ou no) de um usurio interno,
possvel estabelecer um tnel com o protocolo HTTP e dentro passar uma conexo SSH,
Telnet ou mesmo netcat.
Das ferramentas mais difundidas, o HTTPTunnel
(http://www.nocrew.org/software/ httptunnel.html) a que tem maior destaque. Isso se
deve ao fato de explorar um protocolo bastante utilizado (normalmente permitido
atravs de firewalls) e tambm por ser capaz de funcionar atravs de proxies. Essa
ltima caracterstica bastante interessante pois permite a passagem mesmo atravs de
firewalls mais restritivos. O HTTPTunnel baseado em dois programas: cliente (htc) e
servidor (hts). Segue abaixo um exemplo de uso do HTTPTunnel:
servidor# hts F 192.168.1.10:25 80
cliente# htc F 25 servidor:80

No exemplo o servidor (hts) disparado para ficar esperando por conexes na


porta 80 e repass-las porta 25 da mquina 192.168.1.10. J o cliente estabelece o
tnel com a porta 80 do servidor e repassa todo o trfego da porta local 25 para o tnel.
Assim o atacante, ao iniciar uma conexo telnet para a prpria mquina, ser
redirecionado atravs do tnel at a mquina 192.168.1.10.
Alm do HTTP, outros protocolos como o ICMP, DNS e o SMTP so utilizados
para a criao de tneis e mesmo para a transmisso de arquivos.
Sniffers
Essas so ferramentas normalmente utilizadas em ataques locais (internos), pois
dependem do acesso ao trfego entre clientes e servidores. Na verdade, basta que o
atacante esteja situado em um ponto na rede entre o servidor e o cliente, mas no caso da
Internet, muito difcil para um atacante colocar-se nesse ponto sem que esteja na
mesma rede do cliente ou do servidor, pois isso exigiria a invaso de provedores ou
mesmo de pontos de presena de uma infra-estrutura de backbone.
O uso de sniffers permite a captura de, entre outros dados, senhas de servios
inseguros como o Telnet, FTP e POP3. Eles so normalmente empregados pelo atacante
para capturar dados da rede interna do alvo assim que conseguem permisses suficientes
para tal em uma das mquinas invadidas. Como o trfego em redes internas
considerado seguro pela maioria dos administradores de rede, que acabam por no
preocuparem-se com o emprego de protocolos seguros, freqentemente o atacante
obtm sucesso em sua investida.
Entre os sniffers mais difundidos tm-se:
sniffit (http://reptile.rug.ac.be/~coder/sniffit/sniffit.html): monitora conexes TCP e
permite que o atacante inspecione o contedo de cada uma delas no momento
captura;
dsniff (http://www.monkey.org/~dugsong/dsniff): especfico para a captura de
senhas; ele reconhece o protocolo de aplicao utilizado e extrai somente os dados
relevantes (e.g. login, senha, etc);
tcpdump (http://www.tcpdump.org): uma ferramenta comum nos sistemas
GNU/Linux, e permite que o atacante capture determinado trfego em um arquivo e
mais tarde faa o download do arquivo para ento analis-lo localmente;
Alm de senhas, os sniffers podem ajudar o atacante no mapeamento da rede
interna, identificando, por exemplo, as mquinas que recebem mais trfego.
Spoofers
A traduo literal de spoof enganar e justamente isso que as ferramentas
denominadas spoofers fazem. O spoof pode ser feito em qualquer nvel da pilha de
protocolos TCP/IP, desde protocolos do nvel fsico at os de aplicao. Assim como no
caso dos sniffers, a maioria das tcnicas de spoof exigem que o atacante tenha acesso ao
trfego entre cliente e servidor. Nos pargrafos seguintes so apresentados dois
exemplos de ataque de spoofing.
O protocolo de resoluo de nomes do DNS (Domain Name System) pode ser
facilmente comprometido por um atacante. Nesse protocolo o cliente faz uma requisio
a um determinado servidor DNS e aguarda a resposta do mesmo. A nica
autenticao que existe no protocolo a verificao do IP de onde a resposta foi
originada e o identificador (apenas um nmero inteiro) da requisio. Sendo assim, para
que um atacante possa enganar o cliente que solicita uma resoluo de nome e
conseqentemente desviar sua conexo para um outro destino, basta que ele capture o
pacote com a requisio do cliente e monte um pacote de resposta com o IP do servidor
DNS e o ID retirado do pacote capturado e o envie antes que o servidor responda. O
cliente ir aceitar a resposta do atacante (que chegou primeiro) e descartar a segunda
resposta (a do servidor). Uma ferramenta que implementa este ataque a dnsspoof
(http://www.monkey.org/~dugsong/dsniff). Esta ferramenta recebe como entrada um
arquivo de configurao que indica quais spoofings devem ser realizados e a partir da
fica escutando a rede aguardando as requisies dos clientes. A seguir alguns exemplos
do arquivo de configurao do dnsspoof e da sua execuo.
<arquivo spoofings.txt>
200.170.21.12 *.dominioX.com.br
200.182.12.23 www.dominioZ.com
<eof>
#dnsspoof f spoofings.txt

A primeira linha do arquivo spoofings.txt significa que qualquer requisio DNS


cujo prefixo seja dominioX.com.br deve ser resolvida para 200.170.21.12. A segunda
apenas faz com que requisies por www.dominoZ.com sejam resolvidas para
200.182.12.23.
Um exemplo de spoofing no nvel mais baixo da pilha de protocolos o ARP
(Address Resolution Protocol) Spoofing. Este ataque s possvel caso o atacante tenha
algum acesso fsico ao barramento de rede que deseja atacar. O princpio envolvido
neste ataque enganar as mquinas de uma rede em relao ao endereo fsico (MAC)
de um determinado destino. Isso pode ser utilizado, por exemplo, para fazer com que o
atacante se coloque no lugar de um gateway de uma rede, mesmo em redes segmentadas
com o uso de switches. O ataque possvel devido ao fato do ARP no possuir qualquer
mtodo de autenticao e, principalmente, da aceitao de mensagens no requisitadas
para a atualizao da ARP Cache dos hosts da rede. O arpspoof
(http://www.monkey.org/~dugsong/dsniff) uma ferramenta que implementa este
ataque, e seu funcionamento bastante simples: ela apenas envia pacotes ARP
anunciando o MAC do atacante como sendo o do gateway da rede em broadcast fazendo
com que todas as mquinas assumam esse novo MAC. At mesmo mquinas em outros
segmentos separados por switches so atingidas, j que os pacotes broadcast so
repassados, pelo switch, para cada um dos seus segmentos.
Dessa forma o atacante consegue capturar todo o trfego de uma rede
segmentada utilizando um sniffer. Um detalhe bastante importante: para que a captura
de dados seja possvel e para que os usurios da rede no notem o ataque, o atacante
deve fazer forwarding do trfego recebido para o verdadeiro gateway (algo trivial).
O uso da tcnica de spoofing permite ao atacante utilizar outras tcnicas como o
sniffing, citado no pargrafo anterior, e tambm a homem-no-meio. Nesta ltima, o
atacante, alm de desviar o trfego para a sua mquina, passa a manipular os dados das
conexes podendo obter acesso at mesmo a conexes cujo trfego seja cifrado e a
autenticao seja baseada na troca de chaves (e.g. HTTPS e SSH).

4.2.5. Comentrios
A forma de operao dos atacantes, as ferramentas e as tcnicas por eles utilizadas
foram aqui bastante resumidas, ou seja, os administradores de sistemas no devem ficar
restritos aos dados apresentados nesse captulo para o estudo de tema to importante
para o adequado entendimento das ameaas e vulnerabilidades a que todos os sistemas
conectados uma rede esto expostos.

4.3. Criptografia
Conforme a tecnologia de armazenamento e manipulao da informao se torna mais
complexa, as oportunidades para que ela seja utilizada por indivduos no autorizados
so cada vez maiores. neste contexto que a criptografia tem um papel muito
importante. Criptografia caracterizada como a cincia de escrever em cdigos ou em
cifras, ou seja, um conjunto de mtodos que permite tornar incompreensvel uma
mensagem (ou informao), de forma a permitir que apenas as pessoas autorizadas
consigam decifr-la e compreend-la. Por outro lado, a cincia de recuperar uma
determinada informao criptografada sem possuir a autorizao (a chave, a senha ou
at mesmo o conhecimento do algoritmo utilizado) denominada de criptoanlise.
tarefa de um criptoanalista determinar um mtodo que possa quebrar a codificao.
Uma tentativa de criptoanlise comumente chamada de ataque. Trs obras atuais
sobre criptografia so [Schneier 1996], [Menezes 1997] e [Stinson 1995].
A criptografia contempornea no mais baseada em obscuridade, ou seja, no
se utiliza mais a suposio de que qualquer sistema pode ser seguro na medida em que
ningum, exceto seus criadores, tem acesso metodologia ou aos algoritmos utilizados
internamente ao sistema. Para uso moderno, um criptosistema deve ter sua segurana
baseada no nos algoritmos de cifragem e decifragem (ou codificao e decodificao,
ou criptografia e decriptografia), mas sim em um valor secreto uma chave. O
mecanismo deve ser to seguro que nem mesmo o autor de um algoritmo deve ser capaz
de decifrar um texto cifrado sem dispor da chave apropriada. Assim, assume-se que um
criptoanalista conhece todo o criptosistema, exceto as chaves utilizadas. Esta
conhecida como a premissa de Kerckhoffs, matemtico holands do sculo XIX. Note-
se que isto exclui a segurana por obscuridade.
Os requisitos de segurana so, na realidade, ainda maiores. Para um algoritmo
ser analisado do ponto de vista de sua robustez a ataques so assumidas as seguintes
premissas [Schneier, 1996]:
o criptoanalista tem acesso descrio completa do algoritmo.
o criptoanalista tem acesso a grandes volumes de mensagens originais e suas
mensagens cifradas correspondentes.
o criptoanalista capaz de escolher quais mensagens sero cifradas e receber as
mensagens cifradas correspondentes.
Obviamente, a maioria dos sistemas utiliza normas para evitar que estas
premissas se realizem, mas um criptosistema que no se baseie nestas premissas
automaticamente assumido como inseguro.

4.3.1. Modelo de criptosistema


A finalidade bsica de um criptosistema cifrar (codificar e criptografar so aqui
considerados sinnimos) uma mensagem (tambm chamada de texto normal, texto
claro, texto original ou texto compreensvel) atravs de um mtodo de cifragem, que
recebe como entrada a prpria mensagem e uma chave de cifragem, produzindo como
resultado uma mensagem cifrada (texto cifrado ou criptograma). Esta mensagem cifrada
ento armazenada em um meio qualquer ou transmitida at um receptor. Para decifrar
a mensagem (ou decodificar, ou decriptografar) utiliza-se um mtodo de decifragem,
que recebe como entradas a mensagem cifrada e uma chave de decifragem e fornece
como sada a mensagem original. A figura 4.2 ilustra estes componentes.

Mensagem M Mensagem Mensagem M


Mtodo de cifrada C Mtodo de
cifragem E decifragem D

Chave de Chave de
cifragem K e decifragem Kd

Atacante ativo ou passivo


Figura 4.2. Modelo de criptosistema

Obviamente, a mensagem M e a mensagem cifrada C podem ser de qualquer


tipo e formato. Os mtodos de cifragem E e de decifragem D normalmente so distintos,
embora isto no seja necessrio. Caso as chaves de cifragem Ke e de decifragem Kd
sejam iguais, fala-se ento de um sistema de chaves simtricas, ou chave nica, ou
chave secreta, onde elas devem ser mantidas secretas. Caso estas chaves sejam
diferentes, fala-se de um sistema de chaves assimtricas, ou de chave pblica.
Matematicamente, tem-se:
C = E ( M, Ke )
M = D ( C, Kd ) = D ( E ( M, Ke ), Kd )
Uma pessoa no autorizada que tem acesso a alguns dos elementos acima
denominada de um atacante. Um atacante passivo somente consegue obter cpias destes
elementos, enquanto um atacante ativo consegue no somente obter cpias como
tambm modificar os elementos. Assim, por exemplo, um atacante ativo poderia
interceptar uma mensagem cifrada M1 e alter-la ou troc-la por uma mensagem M2. A
robustez de um criptosistema no analisada em termos do tipo de atacante; um ataque
ativo deve ser impedido atravs de um protocolo criptogrfico adequado (e no somente
pelos mtodos de cifragem e decifragem).

4.3.2. Segurana de criptosistemas


Um bom criptosistema deve seguir a premissa de Kerckhoffs, ou seja, deve garantir que
muito difcil inferir a senha ou o texto original conhecendo-se o algoritmo e o texto
cifrado. Ou, de maneira mais genrica, deve garantir que muito difcil inferir a senha
conhecendo-se o algoritmo, o texto cifrado e o texto original.
Criptosistemas distintos possuem diferentes graus de segurana, dependendo da
facilidade ou da dificuldade com que eles so atacados e quebrados. Um sistema dito
incondicionalmente seguro se ele teoricamente inquebrvel, ou seja, no interessa qual
a quantidade de texto normal ou cifrado a disposio, nunca se tem informao
suficiente para deduzir as chaves utilizadas ou decifrar um texto cifrado qualquer. At o
momento, s se conhece um mtodo nesta categoria: a Cifra de Vernam ou one-time
pad (cifra de uso nico), desenvolvida na dcada de 20 por Gilbert Vernam, da AT&T e
Joseph Mauborgne, do Exrcito americano. Em essncia, dois elementos que desejam se
comunicar dispem de cpias idnticas de uma seqncia randmica de valores, que so
usados como chave. O mtodo, entretanto, exige que cada chave seja usada somente
uma nica vez, e que o comprimento da seqncia (a chave) seja maior ou no mnimo
igual ao comprimento da mensagem a ser cifrada.
Todos os demais mtodos desenvolvidos e em uso atualmente so quebrveis,
desde que sejam fornecidos tempo e recursos computacionais suficientes. Para muitos
deles, entretanto, o tempo e o custo necessrios para quebr-los muito grande (alguns
se aproximam do infinito). Se o custo requerido para quebrar um sistema (ou decifrar
uma mensagem) maior que o valor da informao que ser obtida, ento para todos os
fins prticos, o sistema seguro. Deve-se observar, entretanto, que o poder de
processamento dos computadores est sempre crescendo, o que pode tornar um sistema
inseguro com o passar do tempo.
A criptologia atual est mais preocupada com os aspectos computacionais do
que com o valor da informao, e assim os criptosistemas normalmente so
classificados como computacionalmente seguros ou no. Sob este aspecto, um sistema
seguro se, com os recursos computacionais disponveis (atualmente ou em um futuro
prximo), ele no pode ser quebrado em um tempo razovel. Exatamente o que so
recursos disponveis e tempo razovel est aberto a interpretaes, mas atualmente
se considera que computadores com processamento da ordem de Tera operaes por
segundo e um tempo de alguns milhares de anos se enquadram nas definies acima.
Idealmente, o mtodo de cifragem deve ser tal que a probabilidade de ocorrncia
de qualquer smbolo na mensagem cifrada seja exatamente igual s probabilidades de
todos os demais smbolos, ou seja, a distribuio das freqncias dos smbolos
homognea (flat). Com isto, a alterao de um nico smbolo na mensagem normal
tem a probabilidade de alterar metade dos smbolos da mensagem cifrada, e vice-versa.
Em termos computacionais, a inverso de um nico bit na mensagem normal (ou na
cifrada) altera idealmente metade dos bits da mensagem cifrada (ou da normal). Isto
naturalmente impede qualquer anlise por freqncia de smbolos, mas por outro lado
torna a mensagem cifrada muito sensvel a erros ou alteraes intencionais. Ganha-se
em privacidade e segurana, mas perde-se em confiabilidade e autenticidade. Para
compensar esta desvantagem so normalmente utilizados cdigos de deteco de erros
ou de verificao de integridade.

4.3.4. Criptografia Simtrica


Quando a chave de cifragem e a de decifragem so iguais, tem-se a criptografia
simtrica. Os algoritmos de chave simtrica so baseados em operaes simples, de fcil
implementao (tanto em hardware como em software) e com grande velocidade de
processamento. Entre estas operaes podem ser citadas substituio, permutao,
operaes aritmticas simples e operaes booleanas (em especial ou exclusivo). Entre
os principais algoritmos utilizados atualmente podem ser citados:
DES (Data Encryption Standard): o exemplo mais difundido de um cifrador
computacional de chave nica, foi originalmente desenvolvido pela IBM e adotado
como padro nos Estados Unidos em 1977. O DES trabalha dividindo a mensagem
em blocos de 64 bits (8 caracteres) e cifrando cada um destes blocos com uma chave
de 56 bits (mais 8 bits de paridade, o que tambm completa 64 bits)
IDEA (International Data Encryption Algorithm): comeou a ser desenvolvido em
1990, por Xuejia Lai e James Massey, da Sua. Foi chamado inicialmente de PES
(Proposed Encryption Standard). IDEA um cifrador de bloco, operando sobre
blocos de 64 bits de cada vez. Utiliza chaves de 128 bits.
Triple-DES: um mtodo onde o DES aplicado trs vezes. Inicialmente cifra-se
com uma chave K1, depois decifra-se com uma chave K2 e a seguir cifra-se
novamente com a chave K1. Para a decifragem, usam-se os passos na ordem inversa,
ou seja, decifra-se com K1, cifra-se com K2 e decifra-se com K1. O mtodo tambm
pode ser usado com trs chaves distintas, ficando a chave total com 168 bits.
Blowfish: desenvolvido por Bruce Schneider em 1994, utiliza blocos de 64 bits e
pode trabalhar com vrios tamanhos de chave (de 32 a 448 bits, com passos de 32
bits).
CAST: desenvolvido por Carlisle Adams e Stafford Tavares, trabalha com blocos de
64 bits e chave entre 40 a 128 bits (em passos de 8 bits). mais utilizado na sua
verso de 128 bits (CAST-128).
Rijndael: o algoritmo finalista do AES (Advanced Encryption Standard). Trabalha
com chaves de 128, 192 ou 256 bits. Os demais finalistas do AES (Mars, RC6,
Serpent e Twofish) tambm possuem as mesmas caractersticas, e fornecem
praticamente o mesmo grau de segurana. Uma anlise detalhada destes algoritmos
pode ser encontrada em http://www.nist.gov/aes.

4.3.5. Criptografia Assimtrica ou de Chave Pblica


O conceito de criptosistemas de chave pblica, ou chaves assimtricas, foi introduzido
em 1976 por Whitfield Diffie e Martin Hellman e independentemente por Ralph
Merkle. At ento aceitava-se como fato natural que as chaves de cifragem e
decifragem, quer fossem iguais ou diferentes, deveriam ambas ser mantidas secretas. E
um dos grandes problemas era justamente o da distribuio de chaves por canais
inseguros, o que exigia um protocolo complexo e uma grande quantidade de troca de
dados.
Nos criptosistemas de chave pblica, uma das chaves de conhecimento
pblico, e somente a outra que deve ser mantida secreta. O problema de distribuio
de chaves eliminado, pois as chaves pblicas podem circular livremente, e no existe
nenhuma necessidade de enviar a chave secreta a qualquer outro participante do
sistema. Para este sistema ser vivel, cada um dos participantes deve ser capaz de gerar
seu par de chaves Ke e Kd com as seguintes propriedades:
1 Se C = E ( M, Ke), ento M = D ( C, Kd ) para todos M.
2 computacionalmente intratvel tentar deduzir Kd a partir de Ke.
3 computacionalmente tratvel calcular um par Kd e Ke que satisfaa os requisitos
acima.
Dentro destes requisitos, nada impede que Ke seja tornada pblica. E a
existncia de um sistema deste tipo permite uma comunicao segura e instantnea entre
participantes que nunca se encontraram nem se comunicaram antes. Supondo que o
usurio A queira enviar uma mensagem para o usurio B. Ele somente necessita cifrar
sua mensagem com a chave pblica de B, ou seja, ele calcula C = E(M,KeB). Para
decifrar a mensagem aps seu recebimento, B simplesmente calcula M = D(C,KdB).
Como nenhum outro participante conhece KdB, ningum mais consegue decifrar a
mensagem, a no ser seu destinatrio legtimo.
Todos os algoritmos de chave pblica propostos ao longo do tempo baseiam-se
em problemas NP-completos para garantir o requisito (2) acima. Destes, o mais fcil de
compreender e ao mesmo tempo um dos mais robustos o RSA, assim denominado
pelos seus trs autores, Ron Rivest, Adi Shamir e Leonard Adelman. Os mtodos de
cifragem e decifragem com o RSA so mostrados na figura 4.3. Um dos outros fatores
que determinam a popularidade do RSA o fato de ele tambm poder ser usado para
assinatura digital.

Chave pblica n: produto de dois primos, p e q (devem ser secretos)


e: primo relativo a (p1).(q1)
Chave privada d: (e.d) mod (p1).(q1) = 1, ou d = 1/e mod (p1).(q1)
Cifragem C = Me mod n
Decifragem M = Cd mod n
Assinatura A = Md mod n
Verificao Aceitar se Ae mod n = M
Figura 4.3. Mtodo RSA

A segurana do RSA est baseada no problema de fatorar nmeros grandes.


Embora na prtica o melhor caminho para deduzir d a partir de n e e seja fatorar n para
determinar os nmeros p e q, tecnicamente ainda no foi provado que este o nico
caminho. perfeitamente admissvel que uma maneira alternativa de criptoanalisar o
RSA possa ser descoberta. Entretanto, se uma nova tcnica permitisse calcular d, ela
tambm poderia ser utilizada para fatorar grandes nmeros, e este problema vem sendo
analisado a vrios sculos, sem que tenha sido encontrada uma soluo que no
envolvesse um crescimento exponencial da complexidade.
A lista a seguir indica os algoritmos de chave assimtrica mais comumente
encontrados na literatura. Nem todos se destinam a cifragem de mensagens. Alguns
orientam-se mais distribuio de chaves, outros somente para assinatura digital. Todos
algoritmos so lentos, o que torna muito lenta a cifragem e decifragem de uma grande
quantidade de dados.
Diffie-Hellman: o primeiro mtodo de chave pblica proposto, destina-se a
resolver o problema da distribuio de chaves, e no pode ser usado para
cifragem de mensagens.
Feige-Fiat-Shamir: um mtodo para assinatura digital e para identificao com
conhecimento zero (zero-knowledge proof of identity), composto por uma srie
de algoritmos, todos baseados em resduos quadrticos mdulo n. As chaves no
so usadas para criptografia, mas sim para implementar um protocolo de
identificao atravs de credenciamento: o processo repetido tantas vezes entre
dois participantes at que cada um esteja convencido de que o outro quem diz
ser. Isto feito utilizando-se operaes para as quais necessrio (mas no
obrigatrio) o conhecimento de s. No primeiro passo, um intruso tem 50% de
chances de acertar, mas aps t passos estas chances esto reduzidas a 1/2t.
Guillou-Quisquater: um mtodo de identificao com conhecimento zero. Cada
participante possui um bloco de bits J, que pblico e eqivale a suas
credenciais e outro bloco B, que secreto e calculado de forma que JBv mod n =
1. Os nmeros v e n so compartilhados, e n produto de dois primos secretos.
O participante que deseja se identificar envia J e a seguir executado um
protocolo destinado a provar que este participante conhece o B equivalente. Este
protocolo executado em um nico passo, e assim bem rpido.
ElGamal: um mtodo capaz de realizar cifragem e assinatura digital. Sua
segurana baseada na dificuldade de clculo de logaritmos discretos e
aritmtica de mdulo. Assim como RSA, ElGamal um dos poucos mtodos
que pode ser usado tanto para cifragem como para a assinatura de mensagens.
DSA: (Digital Signature Algorithm) o algoritmo proposto pelo NIST (National
Institute of Standards and Technology) para uso no padro DSS (Digital
Signature Standard). Como seu nome indica, foi desenvolvido exclusivamente
para assinatura digital, e no pode ser usado para cifragem.

4.3.6. Assinatura digital


Nos sistemas de criptografia de chave pblica, qualquer pessoa pode cifrar uma
menagem, mas somente o destinatrio desta mensagem pode decifr-la. Isto obtido
justamente pelo uso de duas chaves: uma pblica, para cifragem, disponvel para
qualquer um, e outra privada, para decifragem, conhecida apenas por uma pessoa.
Mensagens cifradas pela chave pblica somente podero ser decifradas pela chave
privada. Invertendo a ordem de uso das chaves, obtm-se uma mensagem que s pode
ser cifrada por uma pessoa, mas pode ser decifrada por qualquer um. Naturalmente, no
se pode falar em privacidade ou segredo neste caso, mas obtm-se um efeito de
personalizao do documento (somente uma pessoa pode t-lo cifrado), semelhante a
uma assinatura. Um sistema deste tipo denominado de assinatura digital, e possui as
seguintes propriedades:
a assinatura autntica: quando o usurio B usa KpubA (a chave pblica de A),
ele confirma que foi A e somente A quem assinou a mensagem.
a assinatura no pode ser forjada: somente A conhece sua chave privada KprivA,
e ningum mais pode assinar o documento no lugar de A.
documento assinado no pode ser alterado: se houver qualquer modificao em
C, ele no ir mais ser restaurado para M com o uso de KpubA (a chave pblica
de A).
a assinatura no reutilizvel: a assinatura uma funo do documento e no
pode ser transferida para outro documento.
a assinatura no pode ser repudiada: o usurio B no necessita de nenhuma ajuda
de A para verificar a assinatura de A, ou seja, o usurio A no pode
posteriormente negar ter assinado o documento.
No mtodo RSA, tem-se que E(D(M,Kq),Ke) = M, em adio a propriedade
usual de que D(E(M,Ke),Kd) = M. Isto permite que ele seja utilizado sem modificaes
tanto para cifragem como para assinatura, e inclusive para ambas funes na mesma
mensagem, conforme ilustrado a seguir. Na figura 4.3 encontra-se o resumo do mtodo
RSA.
cifragem: se A quer enviar uma mensagem cifrada para B, ele calcula C =
E(M,KeB), utilizando a chave pblica de B. O usurio B restaura a mensagem
calculando M = D(C,KdB), usando sua chave privada. Neste caso
D(E(M,KeB),KdB) = M;
assinatura: se A quer enviar uma mensagem assinada para B, ele calcula C =
D(M,KdA), utilizando sua chave privada. O usurio B verifica a mensagem
calculando M = E(C,KeA), usando a chave pblica de A. Neste caso
E(D(M,KdA),KeA) = M;
assinatura e cifragem: se A quer enviar uma mensagem assinada e cifrada para
B, ele primeiro assina M, calculando C1 = D(M,KdA), utilizando sua chave
privada. A seguir, ele calcula C = E(C1,KeB), utilizando a chave pblica de B.
Tem-se ento C = E(D(M,KdA),KeB), que enviada. O usurio B inicialmente
restaura a mensagem calculando C1 = D(M,KdB), usando sua chave privada.
Depois B verifica a mensagem calculando M = E(C1,KeA), usando a chave
pblica de A. Neste caso E(D(E(D(M,KdA),KeB),KdB),KeA) = M.

4.3.7. Funes unidirecionais


Em implementaes prticas, o uso de algoritmos de chave pblica para assinatura
digital so muitas vezes ineficientes para assinar documentos longos. A fim de reduzir o
tempo necessrio, muitos protocolos de assinatura digital so implementados com
funes de hash unidirecionais (one-way hash functions). No lugar de assinar um
documento, calcula-se o hash e aplica-se a assinatura somente sobre o hash, que
normalmente de tamanho reduzido (128 a 512 bits). O processo segue ento os
seguintes passos:
o usurio A produz um hash unidirecional do documento;
o usurio A assina o hash com sua chave privada, assinando assim o documento;
o usurio A envia o documento e o hash assinado para o usurio B;
o usurio B calcula o hash do documento. A seguir, B restaura o hash assinado,
usando a chave pblica de A. Se o hash produzido e o hash restaurado foram
iguais, ento o documento e a assinatura so vlidos.
Este protocolo tem outras vantagens adicionais. O documento pode ser
armazenado em forma legvel, o que facilita o acesso e a leitura. Documento e hash
podem ser guardados em locais diferentes, o que dificulta mais ainda adulteraes. O
espao necessrio para guardar o hash bem reduzido. E o mais interessante,
relacionado com privacidade e outros aspectos legais: o documento pode ser mantido
secreto; somente o seu hash assinado necessita ser tornado pblico. S quando a autoria
de um documento (ou de uma idia) deve ser provada que o documento precisa ser
tornado pblico.
Uma funo de hash unidirecional, H(M), opera sobre uma mensagem de
comprimento qualquer, M, e retorna um valor de hash de comprimento fixo, h, ou seja,
h = H(M). Existem muitas funes que realizam hash, mas para serem unidirecionais
estas funes devem ter caractersticas adicionais:
dado M, deve ser rpido e fcil calcular h;
dado h, muito demorado e difcil calcular M;
dado um M, deve ser muito difcil encontrar outra mensagem M' tal que H(M) =
H(M').
O termo difcil depende da segurana desejada, mas para a maioria das
aplicaes atuais uma ordem de 264 a 2128 operaes, ou mesmo at mais.
Existem dois ataques contra uma funo de hash unidirecional. O primeiro o
mais bvio: dado o hash de uma mensagem, h = H(M), o atacante procura criar outro
documento M' que produza o mesmo valor de hash, ou seja, H(M) = H(M'). Com isto
ele pode comprometer toda a segurana do protocolo que usa este hash. Por exemplo, se
o usurio A assina o hash H(M), o atacante poderia apresentar M' e alegar que este foi o
documento assinado por A.
O segundo ataque mais sutil. Deve ser difcil encontrar duas mensagens
quaisquer, M e M', que produzam o mesmo valor de hash. Este ataque muito mais
fcil que o primeiro, pois no necessita obedecer a um valor de hash j existente. Ele
conhecido como ataque do aniversrio, por refletir um paradoxo estatstico. Quantas
pessoas devem ser reunidas at que exista uma probabilidade maior que 50% de uma
delas fazer aniversrio em uma data especfica? A resposta 183, ou seja, 365/2 (Este
corresponde ao primeiro ataque). Agora, quantas pessoas devem ser reunidas para que
existam mais de 50% de chance de duas delas terem aniversrio no mesmo dia? A
resposta surpreendentemente baixa: 24. Podem existir poucas pessoas, mas existem
276 pares possveis de pessoas (este corresponde ao segundo ataque). Com o ataque do
aniversrio, um atacante prepararia dois documentos, M e M'. Um destes documentos
seria mostrado ao usurio A, que produziria um hash assinado. O atacante pode mais
tarde mostrar M' e alegar que foi este o documento assinado.
Considere-se que uma funo de hash unidirecional tenha as propriedades
discutidas acima, que ela produz uma sada de m bits e que o melhor meio de ataque o
da fora bruta. Achar uma mensagem que produza um determinado valor de hash ir
ento requerer testar 2m mensagens, enquanto que achar duas mensagens que produzam
o mesmo hash ir requerer o teste de 2m/2 mensagens. Supondo um hash de 64 bits, uma
mquina que consiga realizar um milho de hashs por segundo necessitar 600.000 anos
para achar uma segunda mensagem que possua um dado valor de hash, mas encontra
duas mensagens que produzam o mesmo hash em cerca de uma hora. Por este motivo, o
tamanho mnimo recomendado para o comprimento de um hash 128 bits.
A maioria das implementaes das funes de hash unidirecionais so
implementadas a partir de uma funo que produz uma sada de m bits dadas duas
entradas de m bits cada. Estas duas entradas so normalmente um bloco de texto e o
hash resultante do processamento do bloco anterior. Matematicamente, tem-se que hi = f
(Mi, hi1). A sada hash do ltimo bloco torna-se o hash de toda a mensagem. Desta
maneira, uma funo de hash unidirecional produz sempre uma sada de tamanho fixo,
independente do tamanho a mensagem. Tipicamente, alguma informao binria sobre o
tamanho da mensagem M anexada a M antes do hash ser realizado, a fim de resolver
um eventual problema se segurana resultante do fato de duas mensagens de
comprimento diferentes produzirem o mesmo valor de hash.
Vrios algoritmos foram desenvolvidos para clculo de hash. Os mais
difundidos so:
MD5 (Message Digest 5): um dos mais populares, foi desenvolvido por Ron
Rivest em 1992. O MD5 uma melhoria do algoritmo anterior, o MD4, com o
acrscimo de mais funes de embaralhamento e mais rodadas. A mensagem
dividida em blocos de 512 bits, e o hash final, obtido aps o processamento do
ltimo bloco, tem 128 bits
SHA-1 (Secure Hash Algorithm): projetado pelo NIST e NSA, fortemente
inspirado no MD5, mas com a diferena de produzir um hash de 160 bits, em
vez de 128 bits.
RIPEMD-160: desenvolvido pelo projeto RIPE (European RACE Integrity
Primitives Evaluation), baseado no MD4, e gera um hash de 160 bits.
As funes de hash unidirecionais podem tambm utilizar uma chave secreta.
Neste caso so denominadas MAC (Message Authentication Code). Somente algum
que possua a chave pode verificar o hash. Isto til quando se deseja apenas proteger a
autenticidade sem incluir privacidade. Uma funo de hash unidirecional convencional
pode ser usada como MAC: concatena-se a chave K mensagem M e calcula-se o hash.
Este valor o MAC. Somente quem conhece a chave K poder repetir o processo sobre
M e verificar sua integridade.
4.3.8. Protocolos criptogrficos
Um protocolo criptogrfico basicamente um protocolo que utiliza criptografia em um
ou mais de seus passos. Os participantes podem se conhecer e confiar plenamente uns
nos outros, ou podem ser desconhecidos que desconfiam de todos os demais. Embora
envolvendo um criptosistema, o objetivo do protocolo normalmente algo alm da
simples ocultao ou privacidade de dados. Os participantes podem compartilhar parte
dos seus segredos para realizar alguma computao, convencer um do outro da sua
identidade, assinar simultaneamente um contrato ou at mesmo realizar uma votao
secreta.
Um protocolo pode ser atacado de diversas maneiras, alm das maneiras
tradicionais de criptoanlise quanto ao criptosistema em si:
comprometimento das chaves: qualquer protocolo ou criptosistema somente
seguro se as chaves privadas permanecerem secretas. Se elas forem roubadas,
reveladas (intencionalmente ou no) ou comprometidas de alguma forma, ento
toda a segurana perdida. Uma chave tambm considerada comprometida se
for usada repetidas vezes ou a sua regra de formao for facilmente deduzvel
(chave fraca);
ataque do homem-no-meio: ocorre quando um atacante no s tem condies de
interceptar as mensagens trocadas entre os participantes (ataque passivo), mas
tambm consegue introduzir suas prprias mensagens de tal maneira que os
demais participantes julguem que ela foi enviada por um participante legtimo
(ataque ativo);
ataque dos participantes: um ou mais dos participantes pode querer trapacear, e
isto pode ocorrer de diversas maneiras. A mais elementar renegar o protocolo,
ou seja, se recusar a realizar um de seus passos. Um protocolo bem definido
deve permitir que isto seja detectado, e quem se sentir prejudicado deve poder
abandonar o protocolo antes de revelar qualquer informao vital. Um ataque
mais sutil demorar a completar um determinado passo, de forma a tentar
deduzir alguma informao sensvel a partir dos elementos j informados pelos
demais participantes. Justamente para evitar isto que os criptosistemas devem
ser complexos o suficiente para evitar que isto acontea em tempo hbil. Um
terceiro tipo de ataque pode ocorrer se um participante alega que sua chave foi
roubada e algum a est utilizando indevidamente.
Um protocolo interessante, bastante utilizado na prtica, o da gerao de
chaves de sesso. A criptografia simtrica rpida e eficiente, mas a troca da chave
entre os participantes problemtica. Por outro lado, troca de chave trivial em
criptografia assimtrica, mas a cifragem assimtrica de documentos longos ineficiente.
Assim, combinando os dois mtodos, utiliza-se uma chave simtrica para a cifragem,
que distribuda entre os participantes usando suas chaves pblicas (ou assimtricas).
Esta chave simtrica denominada de chave de sesso e, pela facilidade com que
distribuda, pode ser gerada a cada nova comunicao entre os participantes. Este
mtodo bastante utilizado em aplicaes seguras na Internet. Para sesses SSH ou
pginas utilizando protocolo HTTPS, por exemplo, pode-se utilizar o algoritmo RSA
para distribuir um nmero randmico de 168 bits a ser usado como chave para o 3-DES.
O uso de chaves pblicas para distribuio de chaves de sesso tambm permite
que a distribuio seja assinada, ou seja, os participantes podem ser autenticados.
Entretanto, o uso de assinaturas digitais gera um problema: como acreditar nas chaves
pblicas? O simples fato de receber a chave pblica de algum por correio eletrnico
no permite acreditar cegamente que esta chave pertence a quem enviou a mensagem.
Para solucionar este problema, utiliza-se o conceito de uma Autoridade Certificadora
(CA, Certification Authority). Estas so entidades idneas, cujas assinaturas
(certificados, chaves pblicas) so reconhecidas por todos os participantes do sistema.
Todos os participantes teriam ento as suas chaves pblicas assinadas pela chave secreta
da Autoridade Certificadora. Esta a informao bsica de um certificado digital, que
normalmente ainda inclui informaes de prazo de validade, identidade do usurio,
algoritmos utilizados e identificao da CA envolvida. Quando dois participantes
desejam se autenticar, eles simplesmente trocam seus certificados digitais. Como ambos
confiam na assinatura da CA (e possuem a chave pblica da CA), eles podem
facilmente verificar as chaves pblicas dos parceiros verificando a validade dos
certificados. Os navegadores atuais possuem uma lista de CAs, como por exemplo
VeriSign, EnTrust, GlobalSign, etc. Esta lista pode ser visualizada e expandida pelo
usurio, que pode tornar permanentes certificados recebidos. Por exemplo, ao entrar no
site de um banco, este envia o seu certificado (a sua chave) ao navegador. Para ter
validade, esse certificado deve estar assinado por alguma autoridade certificadora
reconhecida pelo navegador. Note-se que bastante perigoso aceitar novos certificados
que no sejam reconhecidos pelo navegador. O certificado pode estar vindo de origem
indesejada. Mais detalhes sobre Certificados podem ser encontrados em [Garfinkel
1997].
Protocolos criptogrficos no nvel de rede
O protocolo bsico da Internet, o IP (Internet Protocol), assim como os protocolos dele
derivados (como o TCP e o UDP), possuem vrias falhas relativas segurana:
mecanismos fracos de identificao/autenticao: a identificao das mquinas
realizada via nmero IP ou nmero MAC (Media Access Control), facilmente
forjveis. O uso de verificao via DNS no resolve o problema, pois respostas
DNS podem ser falsificadas.
transmisso em broadcast, o que facilita a captura de dados da rede via sniffers;
os dados so transmitidos em claro, o que permite a fcil compreenso dos dados
capturados, assim como a sua alterao e retransmisso.
Para minimizar o impacto destas falhas, utiliza-se criptografia ao nvel de rede.
O exemplo mais conhecido o IPSec, que prev a cifragem dos dados de um pacote no
momento da transmisso, e a decodificao dos mesmos quando chegam no seu destino.
O IPSec opcional no IPv4, mas obrigatrio no IPv6. Suas principais caractersticas
so:
controle de acesso - o estabelecimento de conexo controlado por polticas;
autenticao da origem dos dados- pode-se confiar na origem dos dados;
integridade dos dados - via funo de hash com chave;
proteo contra ataques de replay;
confidencialidade dos dados - codificao dos dados (via algoritmo de chave
nica);
forma associao segura entre duas mquinas.
O IPSec composto de trs protocolos:
Autentication Header (AH), que fornece integridade dos dados e autenticao de
origem dos dados. Utiliza funes de hash com chave (HMACs), que protegem
tanto informaes tanto do cabealho IP (aquelas que no so alteradas durante o
roteamento) como dos dados sendo transmitidos;
Encapsulating Security Payload (ESP), que fornece confidencialidade atravs do
uso de algoritmos de chave simtrica;
Internet Security Association Key Management Protocol (ISAKMP), um
framework para a troca de chaves dos algoritmos usados no AH e no ESP.
utilizado pelo IKE (Internet Key Exchange), e possui previso para vrios tipos
de dados (payload), tais como hash, assinatura (chave pblica), dados para a
troca de chaves (Diffie-Hellmann, por exemplo), dados de Certificado e
Requisio de Certificado, entre outros.
Antes do IPSec ser utilizado entre duas mquinas, necessrio o
estabelecimento de Associaes Seguras (SA, Security Association) entre estas
mquinas. Cada associao unidirecional (da mquina A para B, ou de B para A) e
especfica para um protocolo (AH ou ESP). As associaes que uma determinada
mquina conhece so mantidas em uma base de dados (SPD - Security Policy
Database), e cada associao especfica identificada por um ndice (SPI - Security
Parameter Index). Este ndice enviado em cada pacote.
Uma associao segura pode ser criada de forma manual ou automtica (via
IKE), e usa nmero de seqncia (32 bits), inicializado em zero e incrementado a cada
vez que a associao usada. A associao deve ser renegociada quando ocorre
overflow no nmero de seqncia (ou antes). A associao tem tambm um Tempo de
Vida (lifetime).
O IPSec pode ser utilizado em dois modos de operao: o modo de transporte,
que protege os dados da camada de transporte e utilizado para segurana fim-a-fim; e
o modo tnel, protege dados entre mquinas intermedirias, aplicando automaticamente
o IPSec a todo o trfego que passa por elas. Com o IPSec pode-se implementar Redes
Virtuais privadas (VPNs, Virtual Private Networks). Na realidade, o conceito de uma
rede virtual privada bem amplo, e o seu objetivo principal transportar informao
privada (normalmente cifrada) atravs de tneis na Internet. Existem vrias tcnicas
de tunelamento, tais como PPTP (Point to Point Tunneling Protocol) e L2F (Layer 2
Forwarding), mas as mais difundidas atualmente so L2TP (Layer 2 Tunneling
Protocol) e o IPSec.
A utilizao do IPSec fornece vrias vantagens, tais como proteo antes do
nvel de transporte (protege TCP e UDP), proteo contra alteraes (modo AH) e
privacidade (modo ESP). Normalmente ESP e AH so usados juntos, aplicando-se
primeiro o ESP e depois o AH. O IPSec, entretanto, de uso problemtico junto a
firewalls (contedo do pacote no pode ser examinado) e com tcnicas de traduo de
endereos (NAT) e uso de endereos dinmicos.
Protocolos criptogrficos no nvel de transporte
No nvel de transporte, o protocolo criptogrfico mais conhecido o TLS (Transport
Layer Security), baseado no SSL (Secure Socket Layer). Estes protocolos foram
desenvolvidos visando prover comunicao segura atravs da Internet. O TLS 1.0 um
padro do IETF, baseado no protocolo SSL 3.0 da Netscape. Tanto o TLS como o SSL
permitem a autenticao de clientes e servidores, criptografia fim-a-fim, integridade de
dados e confidencialidade dos dados (via chave de sesso)
O TLS/SSL composto de dois protocolos: o TLS/SSL Record Protocol,
utilizado para comunicao segura, e o TLS/SSL Handshake Protocol para
estabelecimento de conexo. O TLS/SSL Record Protocol utiliza protocolos da camada
de transporte (TCP), e permite conexes privadas atravs do uso de criptografia
simtrica para codificao de dados, assim como conexes confiveis atravs do uso de
funes de hash com chave (HMAC). O TLS/SSL Handshake Protocol permite
autenticao dos pares (atravs de criptografia de chave pblica e certificados digitais) e
negociao segura para gerao da chave de sesso a ser usada pelo TLS/SSL
Handshake Protocol.
O TLS/SSL Handshake Protocol possui os seguintes passos:
troca de mensagens (Hello) para acertar valores a serem utilizados na conexo;
troca de valores necessrios para configurar a chave simtrica da sesso;
troca de mensagens para autenticao das partes;
gerao da chave simtrica da sesso;
verificao da integridade das mensagens trocadas durante o estabelecimento da
conexo.
Aps a conexo ser estabelecida, os dados so trocados atravs do TLS/SSL
Record Protocol. Em relao ao IPSec, o TLS/SSL possui as vantagens de no requerer
alteraes na pilha TCP/IP, de estabelecer a chave de sesso dinamicamente e de gerar
uma chave distinta para cada sesso. Por outro lado, possui as desvantagens de no
proteger os protocolos de transporte, no ser de uso transparente, e de possuir uso
limitado (HTTP, FTP, Telnet, SMTP).
Criptografia no nvel de aplicao
Vrios programas fornecem segurana no nvel de aplicao. Um dos mais difundidos
o SSH (Secure Shell), desenvolvido para fornecer comunicao segura entre
computadores. Prov privacidade dos dados atravs de criptografia, integridade da
comunicao, autenticao de usurios e controle de acesso. Tambm permite
tunelamento para codificar outras comunicaes baseadas em TCP/IP.
O SSH possui duas verses principais, o SSH-1 e o SSH-2. Entre os algoritmos
simtricos suportados destacam-se o RC4, Blowfish, DES, IDEA, 3-DES, CAST-128
(SSH-2) e Twofish (SSH-2). Entre os algoritmos assimtricos suportados encontram-se
o RSA (SSH-1), o DSA (SSH-2) e Diffie-Hellmann (DH, SSH-2). A integridade dos
dados garantida por MD5 ou SHA-1 (no SSH-2) ou por simples CRC-32 (no SSH-1).
O estabelecimento de uma conexo atravs do SSH segue os passos:
1- Cliente contata o servidor;
2- Cliente e servidor informam verso do protocolo SSH suportado;
3- Cliente e servidor iniciam protocolo baseado na troca de pacotes;
4- Servidor identifica-se para o cliente e informa os parmetros da sesso;
5- Cliente envia ao servidor a chave secreta da sesso;
6- Ambos iniciam troca de mensagens codificadas e completam a autenticao do
servidor;
7- A conexo segura est estabelecida.
Entre os servios do SSH destacam-se o Secure Shell (emulao de terminal
seguro), Secure Copy (scp) e Secure File Transfer Protocol (sftp). Maiores detalhes
sobre o SSH podem ser encontrados em [Barret 2001].
Outros aplicativos bastante difundidos que empregam criptografia so o PGP
(Pretty Good Privacy), desenvolvido originalmente por Phillip Zimmerman para uso em
correio eletrnico, e o GnuPG (Gnu Privacy Guard), disponveis respectivamente em
http://www.pgpi.com e http://www.gnupg.org. Possuem suporte tanto para algoritmos
simtricos como para assimtricos.

4.4. Firewalls
Atualmente uma das ferramentas de segurana de sistemas mais difundidas, os firewalls
so encontrados nos mais diversos ambientes protegendo deste algumas poucas
mquinas at redes com centenas delas. Os firewalls so instrumentos bastante versteis
para o controle do trfego entre duas redes, permitindo as mais variadas configuraes e
por isso podendo-se adaptar s mais diversas necessidades de uma organizao. Quando
implementado corretamente, o firewall constitui um ponto de controle de todo o trfego
que entra ou sai da rede protegida. Assim, ele pode registrar de maneira eficiente as
atividades da rede e principalmente limitar a exposio da rede interna. No obstante as
suas potencialidades, o firewall jamais deve ser utilizado como nica linha de defesa,
mas sim combinado com outros mecanismos como os IDSs e protocolos de rede seguros
(e.g. envolvendo criptografia).
Para que um administrador de uma rede possa implementar corretamente um
firewall, fundamental que o mesmo tenha conhecimentos aprofundados do
funcionamento dos protocolos da pilha TCP/IP, incluindo tambm os protocolos de
aplicao. Sem esse conhecimento o risco de m configurao e conseqente parada de
servios ou excesso de permisses bastante alto.
Nas sees seguintes so comentados os principais componentes, arquiteturas e
procedimentos para uma correta instalao de um firewall.

4.4.1. Componentes
A pouco tempo atrs, os firewalls eram compostos somente de filtros de pacotes, os
quais eram capazes de controlar o trfego com base nos dados da camada de transporte
(TCP e UDP) e rede (IP, ICMP). Atualmente outros componentes como os proxies e
NAT (Network Address Translation) foram incorporados aos firewalls, permitindo
inspeo dos protocolos do nvel de aplicao (e.g. HTTP, SMTP) e diversas
modificaes em endereos IP e portas. Alm desses trs componentes, uma quarta
tecnologia, Virtual Private Networks (VPNs), tambm tratada devido sua delicada
interao com um firewall.
Filtro de pacotes
Esse o componente mais comumente encontrado nos firewalls, sendo a base a partir da
qual praticamente todo firewall implementado. Os filtros de pacotes mais simples
fazem o controle dos pacotes baseados nos seguintes dados:
endereo IP de origem;
endereo IP de destino;
tipo de protocolo;
porta TCP/UDP de origem;
porta TCP/UDP de destino;
interface de rede pela qual o pacote foi recebido.
Os filtros de pacotes atualmente disponveis, como o Netfilter
(http://netfilter.samba.org) em sistemas Linux, permitem que a filtragem seja bem mais
detalhada podendo-se, por exemplo, verificar valores de flags tanto a nvel de rede
quanto de transporte. Para cada pacote filtrado, as aes genricas possveis so:
ALLOW: o pacote aceito e repassado para o seu destino;
DENY: o firewall rejeita o pacote e informa a origem via ICMP sobre a ao;
DROP: o pacote simplesmente eliminado e nenhum aviso dado origem.
claro que dependendo do software utilizado o nmero de aes possveis pode
ser bem maior. Por exemplo: o Netfilter possibilita o registro (LOG) dos pacotes e
tambm a rejeio de pacotes (REJECT ou DENY) com outros tipos de notificao
alm do ICMP.
Os controles a serem feitos pelo firewall so descritos na forma de listas de
regras que so percorridas seqencialmente para cada pacote recebido. Ao encontrar
uma regra na qual o pacote em questo compreendido, a ao especificada tomada.
Na tabela 4.1 exemplificada uma lista de regras:
Tabela 4.1. Exemplos de regras de filtragem

# IP Protocolo Portas Ao
Origem Destino Origem Destino
1 192.168.1.0 * TCP >1023 80 ALLOW
2 * 192.168.1.0 TCP 80 >1023 ALLOW
3 192.168.1.10 * UDP * 53 ALLOW
4 * 192.168.1.10 UDP 53 * ALLOW
5 * * * * * DENY
Este exemplo bastante simples, mas suficiente para demonstrar alguns aspectos
interessantes de um filtro de pacotes. As regras 1 e 2 visam permitir que os usurios
internos acessem servidores externos de HTTP. De forma similar, as regras 3 e 4
permitem que somente o servidor DNS interno, cujo IP 192.168.1.10, faa requisies
DNS para servidores externos. Por fim, a ltima regra faz com que qualquer pacote que
no tenha sido tratado por uma das regras anteriores seja rejeitado.
J neste momento pode-se identificar uma sria limitao de um filtro de
pacotes: ele confia no nmero das portas sendo utilizadas para identificar clientes e
servidores e o servio utilizado. Nas regras 1 e 2 nota-se que o filtro s permite que o
cliente utilize portas acima de 1023, o que de fato utilizado por clientes de servio
mesmo sem a existncia do filtro; a inteno aqui no permitir que pacotes externos
cheguem at as portas baixas das mquinas internas onde servios podem estar sendo
oferecidos. Alm disso, essas mesmas regras no aceitam outra porta externa seno a
80, normalmente utilizada pelo servio HTTP. O problema aqui est no fato de um
usurio interno poder disponibilizar servios em portas acima de 1023 e um usurio
externo utilizar a porta 80 (como origem) para acessar o servio oferecido. Ainda, no
h garantia nenhuma de que, simplesmente pela porta do servidor ser a porta 80, o
servio sendo acessado pelo cliente seja o HTTP. Essas e outras limitaes podem ser
supridas com regras mais detalhadas, onde os flags dos pacotes so verificados, ou pelo
simples emprego de outros componentes (NAT ou proxy).
Em um ambiente real existem ao menos duas listas de regras de filtragem,
INPUT e OUTPUT, e o nmero de regras a serem criadas e mantidas pelo
administrador pode chegar facilmente a dezenas. Essa outra dificuldade inerente dos
filtros de pacotes que acaba por facilitar os erros de configurao por parte do
administrador.
Quanto ao modo de inspecionar os pacotes pode-se classificar os filtros em duas
classes: stateless e statefull. Os filtros pertencentes primeira classe so os mais
comumente encontrados, e sua principal caracterstica inspecionar cada pacote de
forma isolada, sem levar em conta pacotes anteriores ou histrico de conexes. O
exemplo de regras citado anteriormente tpico para esse tipo de filtro, note o leitor que
existe uma regra para a sada do trfego e outra para a entrada, a falta de qualquer uma
delas impediria a comunicao entre cliente e servidor.
O segundo tipo de filtro de pacotes, statefull, leva em conta todo o histrico de
conexes em andamento e relacionamento entre pacotes (nos casos em que no a idia
de conexo) na inspeo de pacotes. Apenas para tornar mais clara a diferena entre os
dois tipos de filtros, seguem abaixo (tabela 4.2) as regras equivalentes s do exemplo
anterior para um filtro statefull:
Tabela 4.2. Exemplos de regras de filtragem statefull

# Estado IP Prot. Portas Ao


Origem Destino Origem Destino
1 new 192.168.1.0 * TCP >1023 80 ALLOW
2 new 192.168.1.10 * UDP * 53 ALLOW
3 estab. * * * * * ALLOW
related
4 * * * * * DENY
Nesse exemplo, as regras 1 e 2 permitem que usurios internos iniciem conexes
(ou contatos, no caso do UDP) com servidores externos. Em seguida, a regra nmero 3
permite que entre na rede qualquer pacote pertencente uma conexo estabelecida
(established) ou relacionado (related) um pacote previamente enviado. O ganho com a
simplificao, que parece pequeno dado o porte do exemplo dado, bastante expressivo
e tende a diminuir bastante as possibilidades de erros na configurao de um firewall.
Alm disso, exatamente pelo fato de levarem em considerao o estado de conexes e
outras comunicaes entre cliente e servidor, os filtros statefull so tidos como mais
seguros.
Network Address Translation (NAT)
O NAT surgiu exatamente em um momento, por volta de 1996, em que havia uma
grande preocupao com a exausto dos endereos IP, o que deveria ocorrer em no
muito tempo com as taxas de crescimento da Internet. Como pode-se constatar
atualmente, isso felizmente no ocorreu principalmente devido disseminao do NAT
o qual permite que vrias mquinas compartilhem um mesmo endereo IP perante a
Internet, enquanto endereos no roteveis so utilizados nas redes internas.
As faixas de endereos no roteveis definidos na RFC1918 so 10.0.0.0/8,
172.16.0.0/12 e 192.168.0.0/24. Esses endereos podem ser utilizados livremente em
qualquer rede interna sem nenhuma necessidade de registro; isso se d justamente pelo
fato de no serem roteveis na Internet, ou seja, invlidos para uso fora de uma rede
interna. O NAT entra neste cenrio permitindo, no seu uso mais comum, que as
mquinas da rede interna com endereos invlidos possam interagir com mquinas com
endereos vlidos na Internet traduzindo, (substituindo) o endereo invlido para um
vlido.
Alm desse modo de operao o NAT pode ainda alterar endereos de destino,
ou seja, existem dois tipos bsicos de NAT:
source NAT (S-NAT): este o tipo mais comum de NAT, onde os endereos de
origem (normalmente invlidos) so substitudos por um endereo vlido. Ainda,
para que o NAT consiga suportar diversas conexes originrias de mquinas
diferentes, a porta de origem tambm alterada sendo substituda por uma porta
livre da mquina realizando o NAT;
destination NAT (D-NAT): neste caso o endereo alterado o do destino,
normalmente esse tipo utilizado para a realizao de proxy transparente, onde
todas as conexes para portas 80 (HTTP) e 443 (HTTPS) so redirecionadas para a
porta 3128 de um proxy sem conhecimento dos usurios, e para proteger servidores
conforme ser exemplificado a seguir.
Na figura 4.4 o S-NAT utilizado para possibilitar o acesso Internet para os
usurios internos. J o D-NAT utilizado para possibilitar o acesso externo ao servidor
HTTP que est sendo protegido pelo NAT.
O servidor protegido pois no possui um endereo vlido na Internet e portanto
s pode ser alcanado a partir da Internet atravs do NAT. A mquina realizando o NAT
passa-se pelo servidor HTTP perante a Internet e assim, ao receber uma conexo na sua
porta 80 ou 443, redireciona o trfego para o servidor localizado na rede interna
alterando o endereo de destino do pacote. O mesmo pode ser feito para proteger vrios
servios ao mesmo tempo (e.g. SMTP, DNS, FTP, etc.), fazendo com que todos eles
paream estar localizados em apenas uma nica mquina.
O NAT, alm de ter possibilitado uma grande economia de endereos IP,
fornece um nvel bastante importante de segurana para uma rede interna pois limita a
visibilidade de entidades externas. Como resultado um atacante externo teria que,
primeiro, comprometer alguma mquina acessvel para s ento poder atingir servidores
internos ou mquinas de usurios, o que ainda poderia ser dificultado pelo uso de um
filtro de pacotes.

192.168.0.0/16
S-NAT

Internet

D-NAT

Figura 4.4. Source NAT e Destination NAT

Proxies
A traduo de proxy procurador ou representante e exatamente essa a tarefa de um
proxy: servir de intermedirio entre clientes e servidores, onde os clientes normalmente
esto localizados na rede interna. At aqui pode-se dizer que o NAT um tipo de proxy,
pois ele atua como intermedirio entre clientes e servidores, mas existe uma diferena
crucial entre proxy e NAT: um proxy atua a nvel de aplicao, inspecionando
protocolos como o HTTP, SMTP e POP.
Justamente devido essa caracterstica, os proxies podem realizar um controle
mais granular do trfego entre duas redes, verificando caractersticas especficas de
determinadas aplicaes. Ainda, um proxy pode ser facilmente utilizado para autenticar
usurios de determinados servios, bem como para registrar de maneira mais eficiente
as interaes entre clientes e servidores. Essas vantagens tambm tm o seu custo, cada
aplicao exige um proxy especfico e nem sempre existe um proxy disponvel para
cada um dos servios desejados.
De forma semelhante ao NAT, os proxies tambm limitam a exposio da rede
interna protegendo as mquinas nela localizadas. Ademais, como os pacotes no so
simplesmente repassados do servidor para o cliente e vice-versa (no nvel de rede), mas
sim lidos e recriados pelos proxies (no nvel de aplicao), tanto clientes como
servidores so protegidos de eventuais tentativas de ataques baseados em
vulnerabilidades da pilha TCP/IP.
Virtual Private Network (VPN)
Conforme colocado no incio dessa seo as VPNs no so propriamente um
componente de um firewall, mas sua interao com este ltimo algo bastante delicado
uma vez que um pode comprometer o funcionamento do outro. de extrema
importncia que o leitor entenda claramente os modos de operao de uma VPN para
identificar esses potenciais problemas entre firewalls e VPNs, e por isso essas ltimas
sero aqui comentadas.
O objetivo de uma VPN garantir algum nvel de segurana na comunicao
entre clientes e servidores, seja fornecendo autenticidade, integridade ou ainda
confidencialidade. O principal protocolo para o estabelecimento de VPNs o IP
Security (IPSec), que nada mais seno uma adaptao dos recursos de segurana do
protocolo IPv6 para o IPv4 (atualmente utilizado). Exatamente por ser o protocolo
padro designado pela IETF, o IPSec ser tratado nos pargrafos seguintes.
O IPSec pode operar em dois modos: tnel e transporte. No modo transporte o
cabealho do IPSec colocado entre o cabealho IP e o cabealho do protocolo do nvel
de transporte (figura 4.5). Esse modo utilizado para a criao de VPNs fim-a-fim, ou
seja, diretamente entre os dois sistemas participantes.
Pacote original IP TCP dados

Modo Transporte IP IPSec TCP dados

Modo Tnel IP IPSec IP TCP dados


Figura 4.5. Modos de operao do IPSec

No modo tnel o pacote original encapsulado dentro de um novo pacote IP, e o


cabealho IPSec fica entre os cabealhos IP. A princpio os dados protegidos em cada
um dos modos so aqueles destacados em cinza na figura anterior, mas outros podem
ser includos dependendo do protocolo utilizado pelo IPSec, AH e/ou ESP. O modo
tnel normalmente utilizado entre gateways de duas redes.
Entre os protocolos do IPSec, o Authentication Header (AH) o mais simples.
Ele fornece controle de integridade e autenticidade dos dados, mas no
confidencialidade. Independente do modo em que o AH utilizado, tnel ou transporte,
ele tambm autentica os endereos IP (no modo tnel isso inclui o cabealho IP
externo).
J o Encapsulation Security Payload (ESP) fornece as mesmas funcionalidades
do AH e mais a confidencialidade, mas ao contrrio do AH, o ESP no opera sobre
outros dados seno aqueles destacados na figura 4.5.
O primeiro problema de interao entre firewalls e VPNs resulta da utilizao de
protocolos como o AH, os quais autenticam endereos IP de origem e destino, entre
sistemas separados por um NAT, que modifica endereos IP resultando na invalidao
do pacote. Nesses casos a VPN no pode ser estabelecida a no ser com o uso exclusivo
do ESP. Outro problema mais srio pode surgir devido m colocao de uma VPN em
relao ao firewall, ou seja, caso a VPN seja estabelecida com o protocolo ESP antes do
firewall e seu fim esteja aps o firewall, este ltimo no vai poder inspecionar o
contedo cifrado pelo ESP, ficando restrito ao cabealho IP. Isso compromete
substancialmente o papel de um firewall no controle do trfego.
Maiores informaes sobre o IPSec e os seus protocolos podem ser encontrados
nas RFCs 2401 a 2412. As RFCs podem ser obtidas em http://www.rfc-
editor.org/rfcsearch.html.

4.4.2. Arquiteturas
Os componentes de um firewall podem ser arranjados nas mais diversas maneiras
possveis, no existindo propriamente um padro, mas apenas exemplos bsicos que
acabam por servir de base para a estruturao de qualquer firewall. Isso ocorre devido
ao firewall poder ser moldado de acordo com as mais diversas necessidades de cada
organizao, seja ela de grande ou pequeno porte. Sendo assim, so apresentadas a
seguir as arquiteturas mais comuns de firewalls, bem como suas vantagens e
desvantagens.
Screening Router
Essa uma arquitetura bastante simples e baseada no uso de um roteador com
filtragem de pacotes, o qual normalmente j existente em grandes redes ou em redes
conectadas Internet.

Rede Interna Internet

Figura 4.6. Screening Router

At mesmo por ser simples este tipo de arquitetura tambm limitada, mesmo
nos casos em que o roteador tambm fornece NAT, pois no pode tratar protocolos do
nvel de aplicao e apresenta somente um nvel de defesa. Esse tipo de firewall
recomendado apenas para ser utilizado entre redes internas com nveis de segurana
diferentes.
Screened Host
Essa arquitetura apenas uma variao da anterior, onde adicionado um segundo nvel
de segurana. Neste caso, alm da filtragem de pacotes (e possivelmente NAT), pode-se
contar com proxies.

Rede Interna Internet

Figura 4.7. Screened Host

Com essa arquitetura a rede interna conta com dois nveis de proteo,
obrigando um atacante externo a comprometer os mecanismos de segurana em dois
equipamentos diferentes.
Somente recomendado o uso dessa arquitetura quando no h fornecimento de
servios para a rede externa, pois em casos de comprometimento de servidores esses
estaro localizados diretamente na rede interna, servindo ento como base de ataques
para um atacante.
Screened Subnet
A caracterstica marcante desse tipo de arquitetura a criao de uma rede perimetral,
tambm chamada de Desmilitarized Zone (DMZ), onde so colocados tanto proxies
quanto servidores de servios externamente acessveis.
Os limites da DMZ so controlados por filtros de pacotes e NAT, e sempre que
possvel o trfego direto entre os filtros no permitido sendo obrigatria a passagem
por um proxy ou servidor.
Rede Interna Internet
DMZ
Figura 4.8. Screened Subnet

A criao de uma DMZ torna essa arquitetura substancialmente mais segura que
as demais pois possibilita um controle bem mais rigoroso do trfego que entra e sai da
rede interna. Os servidores constituem a presena da organizao na Internet, j que so
a nica parte visvel da rede, e portanto so sempre os potenciais alvos de um atacante.
Exatamente por esse motivo eles esto isolados na DMZ, assim quando um atacante
conseguir comprometer um deles o acesso ao trfego da rede interna ainda no ser
obtido facilmente.
Talvez a nica desvantagem desse tipo de arquitetura seja o aumento da
complexidade das tarefas de configurao e manuteno do firewall resultante da
aplicao de diversos componentes, inclusive com redundncia. Mesmo assim a mais
recomendada para os casos em que se deseja oferecer servios usurios vindos de uma
rede externa.

4.4.3. Recomendaes
Sempre a implementao de um firewall deve ser baseada em uma poltica de segurana
previamente definida, pois o firewall apenas um mecanismo cujo objetivo garantir o
seu cumprimento. Partindo-se desse ponto deve-se escolher as solues a serem
integradas para a criao do firewall de acordo com as necessidades da organizao,
evitando o comum procedimento de primeiro escolher a ferramenta para depois adaptar
as necessidades da organizao ela.
Outra discusso que surge no momento da implantao de um firewall a
plataforma e os softwares a serem utilizados. As plataformas da famlia Unix so
normalmente apontadas como sendo sempre a melhor soluo, isso ocorre devido ao
fato dessas plataformas serem as primeiras a fornecer os recursos necessrios para a
criao de firewalls. Apesar disso, no deve-se desconsiderar as demais solues
simplesmente por no serem baseadas nessas plataformas. Uma regra bastante simples e
que pode evitar vrios problemas em uma primeira implementao de um firewall
utilizar a plataforma sobre a qual a organizao tm domnio.
Independente da escolha da arquitetura a ser utilizada a implementao deve ser
feita por partes, ou seja, no recomendado que os componentes de uma arquitetura
complexa como a screened subnet sejam colocados todos de uma s vez em operao,
mas sim implantados com base em um processo gradual em que cada componente
configurado e testado antes da instalao do componente seguinte. Esse procedimento
busca diminuir os erros de configurao e a decorrente perda de tempo na identificao
do componente mal configurado.
4.5. Sistemas de Deteco de Intruso
Ainda que eficientes, mecanismos como firewalls e VNPs no so suficientes para que
patamares mnimos de segurana sejam garantidos. Seguindo o princpio da diversidade
de mecanismos, praticamente impossvel a concepo de um sistema de segurana
fsica baseado somente em trancas, ou seja, sem a existncia de nenhum tipo de alarme.
Da mesma forma, para a maioria das aplicaes atuais, desde redes corporativas simples
at sistemas de e-commerce ou aplicaes bancrias, praticamente invivel a simples
utilizao de mecanismos que diminuam a probabilidade de eventuais ataques. Um
ataque fora, em casos extremos, a interrupes totais dos servios para que um lento e
oneroso processo de auditoria e de posterior restaurao manual seja efetuado.
Isso justifica todo o esforo na utilizao de mecanismos que ultrapassem a
barreira da simples preveno, garantindo aos sistemas um funcionamento contnuo e
correto mesmo na presena de falhas de segurana. Esse um dos principais objetivos
dos Sistemas de Deteco de Intruso (IDS), mecanismo descrito nesta seo e
complemento aos esforos de preveno j descritos.
Segundo a taxonomia de segurana criada por vrios autores [Howard 1998]
[Bace 2001] [Aslam 1996], deteco de ataques seria o termo mais correto para ser
usado nesse contexto, ou seja, tentar identificar aes maliciosas que levem o sistema a
um resultado no autorizado. Essas aes poderiam ir desde a destruio de informaes
at uma varredura de portas, explorando vulnerabilidades existentes no sistema. Para
evitar uma confuso maior com a criao de um novo termo, deteco de intruso ser
usada com esse sentido durante o texto, ou seja, englobando incidentes j concretizados,
tentativas de ataques, obteno de informaes, ameaas internas e externas.
Ao encontro dessa definio, pode-se classificar os sistemas de deteco de
intruso com base em quatro critrios: mtodo de deteco, arquitetura, freqncia de
uso e comportamento aps a deteco. A figura 4.9 esquematiza e exemplifica essa
classificao:
Baseado em
Mtodo de Comportamento
Deteco Baseado em
Conhecimento Baseado em Rede
Baseado em Host
Segundo o alvo
Hbrido
Arquitetura
Segundo a Centralizado
IDS localizao Hierrquico
Distribudo
Comportam. Passivo
ps-deteco
Ativo
Monitoramento
Freqncia de contnuo
uso Anlise
peridica

Figura 4.9. Classificao dos sistemas de deteco de intruso


O restante da seo estar distribudo tomando por base os critrios de mtodos
de deteco e de arquitetura do sistema.

4.5.1. Mtodos de deteco de intruso


evidente que diferentes ferramentas de deteco de intruso utilizaro diferentes
mtodos para analisar os dados. Responsveis diretos pela busca de indcios de aes
intrusivas, os mtodos de deteco de intruso desempenham um dos principais papis
em um IDS. Outro dado importante a ser levado em considerao o uso do mtodo de
deteco como critrio para classificar os diferentes IDSs. Vrias tcnicas so
atualmente empregadas na deteco, desde a anlise do comportamento do sistema at a
busca por ataques conhecidos. Nessa seo sero apresentadas as principais tcnicas de
deteco de forma rpida e abrangente. importante frisar que quaisquer desses
mtodos podem ser utilizados em conjunto, sendo que vrias ferramentas o fazem para
aumentar suas possibilidades de deteco.
Dois grandes grupos de tcnicas podem ser distinguidos atualmente: tcnicas
baseadas em comportamento e tcnicas baseadas em assinaturas. O primeiro grupo,
tambm conhecido por deteco por anomalia, baseia-se na anlise do comportamento
do sistema e na identificao de possveis desvios, comparando o estado observado a
um padro de comportamento considerado normal. No outro grupo, tambm chamado
de deteco por conhecimento ou de deteco por mau-uso, as tcnicas buscam
seqncias de aes nitidamente caracterizadas como invlidas, registradas em uma
base de dados que contm o conhecimento acumulado sobre ataques especficos e
vulnerabilidades do sistema.
Utilizado pela ampla maioria dos IDSs atuais, mtodos baseados em assinaturas
dividem as aes possivelmente desempenhadas no sistema em aceitveis e no-
aceitveis. Tomando por base dados de diferentes fontes, como trfego de rede ou
registros de auditoria, essas tcnicas comparam as aes em andamento com o seu
conceito de aceitvel ou no e alertam para violaes dessa poltica. Dessa forma, o
acesso local ao arquivo de senhas (/etc/passwd), por um usurio com permisses de
administrador (root, por exemplo), pode ser considerado como uma ao aceitvel,
enquanto um usurio remoto acessando o mesmo arquivo pode ser considerado um
intruso.
A exemplo do que acontece com sistemas anti-vrus, essa base de aes - ou de
seqncia de aes - no-aceitveis, chamada de base de assinaturas, normalmente
distribuda e atualizada pelo fabricante da ferramenta. No extremo oposto, outras
ferramentas atualizam suas bases com pouca freqncia, deixando essa tarefa para os
prprios usurios do sistema. A principal justificativa para o primeiro caso a
dificuldade de encontrar usurios dispostos a aprender o formato de descrio de
ataques, com tempo disponvel para manterem-se atualizados em relao a novas
vulnerabilidades e, conseqentemente, com o conhecimento necessrio para descrever e
testar corretamente suas prprias bases. Por outro lado, adeptos da segunda opo
frisam ser necessrio que as assinaturas existentes sejam adaptadas para a realidade de
cada organizao e que muito importante incentivar o domnio, por parte dos usurios
da ferramenta, de todos os detalhes de deteco possveis, facilitando a integrao com
outros mecanismos de segurana e a resposta a possveis incidentes.
Tcnicas baseadas em comportamento, por sua vez, caracterizam o
comportamento de partes do sistema como normal ou anormal. Podendo utilizar
tambm diferentes grupos de dados, seja o trfego de rede ou a carga de processamento
da CPU, essas tcnicas estabelecem para cada grupo um padro de comportamento
considerado normal, considerando horrio, quantidade de dados, tipo de aplicaes
utilizadas, dentre outros, e criando um perfil de utilizao do sistema. Esse perfil
usado para alertar aos administradores qualquer desvio de comportamento,
caracterizando um possvel ataque. Por exemplo, para um usurio que possui o hbito
de utilizar o sistema somente em horrio comercial e executar aplicativos simples como
leitores de e-mail e navegadores, entrar no sistema s 4h da manh e compilar uma
dezena de programas um forte indcio de uma intruso. Outras ferramentas poderiam
utilizar a carga da rede em determinados horrios ou a quantidade de requisies a um
determinado servio como subsdio para a caracterizao de uma intruso.

4.5.2. Arquiteturas de IDSs


Outro aspecto importante em um IDS, tanto na classificao como no bom desempenho,
a sua arquitetura. Caracterizar sistemas baseados em host ou em rede, distribudos ou
centralizados funo diretamente relacionada arquitetura empregada. Alm disso, o
desempenho desses sistemas depende muito da organizao de seus componentes.
A arquitetura de um IDS est ligada forma como seus componentes funcionais
encontram-se arranjados em relao uns aos outros. Dois fatores influenciam
diretamente na arquitetura: localizao e alvo. A localizao diz respeito ao sistema
onde ser executado o IDS, classificando-os em centralizados, hierrquicos
(parcialmente distribudos) ou distribudos.
No primeiro caso, todos os componentes do IDS esto localizados no mesmo
ponto, incluindo desde a coleta dos dados at a configurao e gerncia da ferramenta.
Quando os componentes encontram-se parcialmente distribudos, com fortes relaes de
hierarquia entre eles, pode-se consider-los como parte de um IDS hierrquico. Nesse
tipo de IDS, embora alguns elementos encontrem-se distribudos, tarefas como a tomada
de decises ficam normalmente concentradas em um nico ponto. IDSs distribudos, por
sua vez, possuem todos os seus componentes espalhados pelo sistema, com relaes
mnimas de hierarquia entre eles. Nesses sistemas, por exemplo, grupos de analisadores
podem trabalhar em regime de cooperao para alcanar o objetivo comum de detectar
um intruso.
Da mesma forma que os outros conceitos j expostos, existem divergncias
sobre o que ou no um IDS distribudo. Grande parte dos IDSs j desenvolvidos
consideram-se distribudos, mesmo com estruturas nitidamente hierrquicas,
justificando tal afirmao pela existncia de componentes dispostos em locais
diferentes. Embora esses sistemas tenham componentes distribudos pela rede,
ficariam melhor enquadrados como hierrquicos.
Contrapondo-se localizao, o fator alvo analisa os diferentes IDSs pelo objeto
de sua anlise, ou seja, pela fonte dos dados que sero trabalhados. Trs tipos de IDS
podem ser assim classificados: baseados em host, baseados em rede ou hbridos. No
primeiro caso, todos os dados analisados so retirados da prpria mquina, sejam
arquivos com trilhas de auditoria ou informaes do prprio sistema operacional. Um
subconjunto desse tipo de IDS, citado por vrios autores, representado pelos chamados
IDSs baseados em aplicao. Preocupados em analisar dados gerados por aplicaes
especficas, como transaes de bancos de dados, por exemplo, esses IDSs representam
um nvel de abstrao mais elevado na cadeia de deteco.
IDSs baseados em rede, por outro lado, detectam ataques capturando e analisando
pacotes de rede ou algum outro dado originado nesse nvel. Com esse tipo de anlise,
pode-se detectar vrios tipos de ataque que nunca seriam observados por um IDS
baseado em host. A mistura dessas duas abordagens, por conseqncia, caracteriza IDSs
hbridos, ou seja, que baseiam seus resultados tanto em dados originados da rede como
em informaes geradas nas prprias mquinas.
Essa classificao, embora no retrate to bem a realidade dos sistemas de
deteco de intruso, reala a importncia de uma estratgia de segurana que aplique a
diversidade de mecanismos, ou seja, a utilizao de arquiteturas hbridas que
contemplem todos os nveis de um sistema, aumentando a probabilidade de deteces
bem sucedidas.

4.5.3. Exemplos de aplicao


Um dos incidentes de segurana mais famosos que j ocorreram , sem dvida, o bem
sucedido ataque de Kevin Mitnick ao sistema do pesquisador Tsutomu Shimomura, em
1994. Para tanto, Mitnick explorou vulnerabilidades bem conhecidas do protocolo TCP,
ainda presentes em muitas implementaes.
O ataque usou duas tcnicas: SYN flooding e o seqestro de conexes TCP.
Enquanto a primeira tcnica causa uma negao de servio no sistema alvo, silenciando
sua atividade de rede pela incapacidade de tratar tantos pedidos de novas conexes, a
segunda passa a agir no seu lugar atravs do seqestro de conexes TCP, explorando
relaes de confiana existentes entre a mquina alvo e outros computadores da rede
interna (arquivo .rhosts).
Esse incidente poderia ter sido detectado em diferentes fases do ataque (na
coleta de informaes ou mesmo na alterao do arquivo .rhosts), tanto por IDSs
baseados em hosts quanto por ferramentas baseadas em rede. Na fase de coleta de
informaes, as varreduras e os probes feitos para determinar vulnerabilidades e
servios a serem explorados poderiam ter sido detectadas por IDSs de rede. Embora seja
possvel desconsiderar a ocorrncia de uma nica tentativa de finger, vrias solicitaes
finger vindas de um mesmo ponto da rede em um curto espao de tempo podem
levantar suspeitas. O mesmo acontece com a varredura feita em diferentes portas,
embora o nmero de falsos alarmes seja normalmente alto para tentativas de deteco
desse tipo de ataque.
O seqestro de conexes TCP utiliza tcnicas de IP spoofing para forjar pacotes
com endereos de origem alterados. A simples existncia de pacotes vindos de uma
interface externa (Internet) com endereos de origem pertencentes rede interna pode
ser facilmente detectada, tanto por um IDS como pelo prprio firewall. Se o firewall
possuir filtros que alertem para tal situao, um IDS pode ser avisado da existncia de
tais pacotes e/ou o firewall pode evitar que eles sejam repassados para a rede interna.
Alm disso, a tentativa de alterao do arquivo .rhosts poderia ser detectada
usando um IDS de host que monitore qualquer alterao nos arquivos de configurao
do sistema. Esse monitoramento poderia ser feito tanto por ferramentas de anlise por
comportamento, pelo estabelecimento de perfis do sistema (horrio, dia da semana e
console mais freqentemente usados para realizar configuraes no sistema), quanto
pela verificao peridica da integridade desses arquivos, comparando a verso atual
com um hash armazenado em uma base de dados.
Independente da tcnica ou arquitetura utilizada, deve-se levar em considerao
que alguns ataques so muito sutis e podem passar despercebidos pela maioria das
ferramentas disponveis, principalmente quando essas so usadas de maneira
independente. Mais uma vez a importncia da diversidade de mecanismos torna-se
visvel, aproveitando as melhores caractersticas de cada tcnica e ferramenta
disponvel.

4.5.4. Snort
Atualmente, vrios tipos de sistemas de deteco de intruso esto disponveis, seja na
forma de ferramentas acadmicas e experimentais ou como produtos comerciais j
solidificados no mercado. Um dos IDSs mais utilizados no momento, o Snort combina
simplicidade com eficincia. De distribuio livre, desenvolvido por Marty Roesch, essa
ferramenta baseia-se em uma arquitetura centralizada, dados coletados na rede e uma
anlise baseada em assinaturas, podendo ser executada em qualquer sistema UNIX e,
inclusive, em Windows.
Sua estrutura bsica simples, baseada na captura de pacotes de rede atravs da
biblioteca libpcap e em um analisador simples e eficiente que trata tanto informaes de
cabealho quanto a rea de dados dos pacotes coletados. Os pacotes que coincidem com
alguma das regras da base podem ser simplesmente descartados, armazenados ou podem
gerar algum alerta aos responsveis pelo sistema. H ainda a possibilidade de utilizar
regras de filtragem durante a coleta dos pacotes (libpcap), antes que eles passem pelo
analisador, ou conceitos como pr-processadores e processadores de sada, responsveis
respectivamente por analisar os pacotes coletados antes que a base de assinaturas seja
avaliada e por fazer a formatao dos resultados gerados.
Outra grande vantagem sua a existncia de uma base com milhares de
assinaturas de ataques, disponvel na pgina principal (http://www.snort.org). Em sua
grande maioria, essa base fruto de colaboraes da prpria comunidade de usurios
Snort espalhados pelo mundo, significando atualizaes constantes e respostas
praticamente imediatas ao surgimento de novos ataques.
O conjunto de regras do Snort muito semelhante a filtros de rede, embora
possua diretivas complexas para a anlise e o tratamento dos pacotes coletados. O
exemplo abaixo ilustra uma regra usada para detectar um ataque distribudo de negao
de servio:
alert TCP !$H_NET any -> $H_NET 27665 (msg:"DDoS-
Trin00";flags:PA;content:"betaalmostdone";)

A primeira parte de uma regra define a ao a ser tomada quando um pacote


coincidir com ela. As opes so: log, para armazenar o pacote; alert, para gerar uma
espcie de relatrio sobre a ocorrncia do referido ataque; pass, para ignorar o pacote.
A segunda parte da regra define o padro a ser procurado. Esse padro
expresso utilizando informao de cabealho, como tipo de protocolo, origem, destino,
flags, etc, ou de contedo do pacote, descrito utilizando diversas diretivas como content,
content-list, depth, dentre outras.
Uma das principais desvantagens do Snort recai sobre sua arquitetura, simples
mas pouco flexvel. Monitorar mais de um ponto da rede com essa ferramenta significa
controlar isoladamente cada analisador, sem que o prprio IDS faa qualquer tipo de
correlao entre eventos ocorridos nos diferentes pontos. Alm disso, no possvel
monitorar eventos originados no prprio host, j que o Snort utiliza somente pacotes de
rede para realizar suas anlises. Todos esses aspectos dificultam a deteco de ataques
mais complexos e sutis, que envolvam vrios nveis do sistema.

4.5.5. Seleo e implementao


Alm de todos os detalhes tericos apresentados, muitos problemas surgem justamente
no momento menos esperado: na aplicao prtica dos mecanismos de deteco de
intruso. De nada adiantaria apresentar noes sobre a tecnologia existente e descrever
ferramentas sem tecer qualquer considerao sobre seu uso em situaes reais.
Com o mesmo grau de complexidade apresentado em outras reas da
computao, como a busca pelo S.O. ideal, por exemplo, a escolha do melhor IDS vai
depender das peculiaridades de cada caso. Diante de todas as possibilidades j citadas,
resta ao responsvel pela segurana da organizao decidir qual ferramenta melhor
contempla suas necessidades no tocante a segurana. Uma escolha equivocada nesse
ponto pode ser considerada o primeiro ataque s defesas da organizao, tornando-as
vulnerveis antes mesmo de serem implementadas.
Aps uma anlise detalhada dos riscos e das necessidades de segurana da
organizao, assunto tratado nas prximas sees, o levantamento das ferramentas de
deteco disponveis deve levar em considerao aspectos como a adequao aos
requisitos da organizao, testes ao qual tal ferramenta j tenha sido submetida, nvel de
conhecimento necessrio para oper-la, possibilidade de expanso gradual, suporte
disponvel, integrao com outros mecanismos, plataforma atualmente disponvel,
custo, etc. Alm disso, caractersticas tcnicas como o mecanismo de deteco usado e a
arquitetura do IDS em questo devem ser analisados em profundidade. Sugere-se a
adoo de ferramentas que trabalhem tanto em rede como em host, distribudas e que
permitam uma anlise comportamental e por assinaturas.
Toda essa pesquisa pode ser feita com base em documentos tcnicos disponveis
na Internet ou em listas de discusso e eventos sobre deteco de intruso. Proctor
[Proctor 2001] apresenta uma lista detalhada de passos importantes na escolha de um
IDS. Essa informao tambm se encontra disponvel em
http://www.practicalsecurity.com.
Outro aspecto que merece ateno a implementao do IDS, bem como sua
posterior manuteno. Um dos pr-requisitos para uma correta implementao a
criao de um ambiente de testes, permitindo a correta configurao da ferramenta fora
do ambiente de produo (destino final do IDS). Esses testes devem levar em
considerao os mecanismos j existentes no sistema, como firewalls, por exemplo, e
avaliar os melhores pontos de coleta e anlise de dados.
Assim que as configuraes bsicas e os primeiros testes tenham sido feitos,
deve-se migrar gradativamente o IDS para o sistema real. Essa tarefa pode ser feita
instalando-se, em primeiro lugar, os elemento de deteco baseados em rede, como
sensores e analisadores de rede, e, em um prximo momento, identificar as mquinas
que devero ser monitoradas com elementos de deteco baseados em host.
Em IDSs baseados em rede, uma deciso importante o ponto de colocao dos
diversos sensores. Uma distribuio incorreta dos sensores pode tornar o sistema
vulnervel a ataques simples, facilmente detectados por sensores corretamente
distribudos. Considerando a existncia de um firewall, vrias configuraes so
possveis (figura 4.10):

Figura 4.10. Localizao de um IDS [Bace 2001]

No primeiro caso (ponto 1), o sensor colocado atrs do firewall externo, na


zona desmilitarizada (DMZ). Sensores nesse ponto possuem as seguintes vantagens:
ver ataques originados externamente que penetram as defesas da rede;
evidenciar problemas com as polticas ou com o desempenho do firewall;
ver ataques direcionados aos servidores de ftp e http, normalmente localizados
na DMZ;
mesmo que o ataque no seja reconhecido, podem analisar o trfego de sada
resultado do comprometimento de algum servidor.
Outra possibilidade a colocao de sensores depois do firewall externo (ponto
2), fora dos limites da rede da organizao. A principal vantagem dessa localizao a
possibilidade de documentar a quantidade e o tipo dos ataques direcionados rede.
No terceiro caso, os sensores so colocados nos principais backbones da rede
(ponto3), com as seguintes vantagens:
monitorar uma grande quantidade de trfego de rede, aumentando a
possibilidade de deteco;
detectar aes no autorizadas de usurios internos, direcionadas ao permetro
de segurana.
Por fim, os sensores podem ser colocados nas redes crticas da organizao
(ponto 4), com as seguintes funes:
detectar ataques direcionados aos recursos e sistemas crticos;
permitir o foco em recursos limitados considerados de grande valor.
Alguns problemas que podem determinar o ponto de localizao dos sensores
ou, inclusive, a impossibilidade do uso de sensores de rede so:
trfego criptografado: dependendo dos mecanismos de segurana utilizados,
uma rede pode conter dados cifrados trafegando por ela, como no caso de VPNs.
Para sensores de rede, esse um problema impossvel de ser solucionado, sendo
necessrio o uso de sensores de host;
trfego segmentado: elementos de rede como switches podem inviabilizar a
coleta de dados, evitando que o meio de acesso seja compartilhado por vrios
computadores e, conseqentemente, evitando a captura dos pacotes.
trfego de alta velocidade: com taxas superiores 100Mb/s, a maioria dos
sensores de rede encontra dificuldades em capturar, filtrar e tratar todos os
pacotes, levando ao descarte dos mesmos. Para resolver tal problema, vrios
fabricantes de IDS esto voltando esforos na construo de sensores com alta
capacidade de captura, embora poucas solues estejam disponveis;
trfego frame relay: apresenta os mesmos problemas discutidos acima.
Aps a colocao apropriada dos sensores de rede, deve-se partir para a
instalao de sensores baseados em host, inicialmente colocados nos servidores mais
crticos. Essa atitude importante pela sobrecarga de processamento imposta pelos IDSs
baseados em host, impossibilitando sua adoo em todas as mquinas da rede. O ajuste
adequado dos mecanismos de anlise, das bases de assinatura e da melhor distribuio
desses sensores deve ser feito de maneira gradual e contnua, diminuindo o nmero de
falsos positivos e aumentando a segurana do sistema.

4.6. Sistematizando a Aplicao dos Diversos Mecanismos


De acordo com o que j foi exposto, a simples adoo de bons mecanismos no
suficiente para garantir um nvel aceitvel de segurana. Procedimentos que precedem a
escolha desses mecanismos e que, posteriormente, avaliam de forma constante a
existncia de novos problemas de segurana so essenciais e no podem ser esquecidos.
Esta seo apresenta os principais passos na aplicao correta de tcnicas de segurana,
condensando todos os conceitos j apresentados e exemplificando a aplicao em
conjunto de tais tcnicas. No pretenso do texto e nem do curso, no entanto,
descrever em detalhes esses passos. O objetivo principal mostrar que, mais importante
do que simplesmente solucionar os problemas de segurana atualmente encontrados,
criar um processo maduro que inclua a segurana como um aspecto de constante
preocupao e reviso dentro de uma organizao.
Retomando alguns conceitos e caractersticas j expostas, pode-se perceber que
segurana um conceito muito usado, mas pouco compreendido. De forma geral, a
idia que se tem sobre segurana de um atributo binrio, mensurvel, estanque e
puramente tcnico. Transportando para a realidade computacional, freqente encontrar
administradores de rede que acreditam estar seguros pela simples instalao de um
firewall, que fazem alguns testes e decretam que suas instalaes esto 100% seguras e
que, por esses motivos, nunca mais pensam em segurana. Afirmar que um sistema
seguro um grande erro, to grande quanto testar uma instalao e determinar que no
existem mais riscos de um incidente ocorrer ou de imaginar que, de uma vez por todas,
todos os problemas de segurana foram resolvidos.
Um dos motivos desses equvocos justamente o ponto de vista usado para
analisar segurana. Parte-se do princpio que a segurana o ponto a ser atacado, o
objeto de anlise e de esforos de toda uma equipe de gerentes, quando, na verdade, ela
s representa a conseqncia de um esforo maior que engloba a reduo dos riscos
impostos ao sistema, o treinamento dos usurios para que incluam prticas de segurana
no seu dia-a-dia e a correta documentao das polticas de segurana da organizao.
Ou seja, diferente de outros atributos, o verdadeiro foco deve estar na reduo da
insegurana, a minimizao das vulnerabilidades latentes, das ameaas existentes e dos
impactos potencialmente causados. No existe soluo para o problema de segurana e
sim reduo de riscos. Analisando dessa forma, possvel perceber que essa reduo
resultado de um processo gradual e contnuo, e nunca de um esforo nico e isolado.
Da mesma forma, como a abordagem correta enfocar riscos e a sua
conseqente minimizao, fica evidente a dificuldade em mensurar quantitativamente o
quo protegido um sistema est. Como analisar se o firewall instalado est filtrando
todo o trfego potencialmente malicioso? Como conhecer todas as vulnerabilidades
existentes em um dado servidor? Como saber o quo suscetvel a ataques de engenharia
social uma empresa est? Tentar responder a essas questes inevitavelmente sugeriria a
realizao de testes exaustivos to completos que analisassem todas as possibilidades
existentes e que, ainda que possveis, s indicariam o nvel de segurana instantneo do
sistema. Novas vulnerabilidades so descobertas a cada instante e suas mais variadas
formas de explorao s dependem da criatividade dos atacantes. O que poderia ser
considerado seguro hoje, no o seria amanh.
Embora esses testes sejam muito teis, a forma mais eficiente de medir o nvel
de segurana de um sistema medir o processo utilizado para minimizar os seus riscos.
Quando essa reduo de riscos feita de forma emprica, nica e isolada, pode-se
garantir que o nvel esperado de segurana extremamente baixo. No outro lado da
balana, quando existe um processo contnuo, bem documentado e integrado com todas
as necessidades da organizao, nveis de segurana satisfatrios so alcanados.
Outra caracterstica importante a relao custo/benefcio esperada. Como
impossvel alcanar o nvel mximo quando o assunto segurana, correto imaginar
que no existem limites para os investimentos na tentativa de atingir o nvel mais alto
possvel. At quando esses investimentos sero revertidos em benefcios mais uma
preocupao, ou seja, qual o nvel mnimo de segurana esperado e quanto se deve
gastar alm disso. Ainda que aparentemente secundrio, o aspecto custo , na maioria
dos casos, um limitante no nvel de segurana, permitindo que uma anlise cuidadosa da
relao custo/benefcio possa ser usada como justificativa para convencer a direo da
relevncia dos investimentos feitos.
Em suma, a segurana comea com a conscincia de que se deve conviver com
os riscos, j que eles nunca deixaro de existir. Alm disso, importante salientar que,
para que os esforos de segurana sejam efetivos, deve-se considerar tanto aspectos
tcnicos quanto no tcnicos, como polticas, procedimentos operacionais e educao do
usurio. Isso remete importncia de um processo contnuo de gesto de segurana, o
que significa analisar, reduzir e monitorar constantemente os riscos do sistema, bem
como treinar usurios e adaptar procedimentos operacionais e polticas mal elaboradas.
Enfocar somente mecanismos de segurana, como muitos administradores costumam
fazer, abordar s parte do problema, analisando-o de forma instantnea e isolada,
equvoco que pode levar o sistema a nveis insatisfatrios de proteo.
Uma boa analogia pode ser feita entre gesto de segurana e engenharia de
software. Da mesma forma que empresas de desenvolvimento de software buscam uma
produo com custos reduzidos e principalmente, com qualidade, na rea de segurana o
produto final esperado um sistema com nveis aceitveis de riscos. No existe
software perfeito assim como no existe segurana completa. Alm disso, testes de
software no conseguem garantir a inexistncia de problemas, a exemplo das tentativas
de mensurar o nvel de segurana de um sistema. Em ambos os casos, a soluo
qualificar os processos de desenvolvimento, avaliando e projetando uma soluo
coerente antes de efetivamente implement-la e, conseqentemente, garantindo produtos
de melhor qualidade.
Segundo a norma internacional ISO/IEC 17799 [ABNT 2001], o processo de
gesto de segurana deve levar em considerao os seguintes aspectos: poltica de
segurana, segurana organizacional, classificao e controle de bens, segurana em
pessoas, segurana fsica e do ambiente, gerenciamento das operaes e comunicaes,
controle de acesso, gesto da continuidade do negcio e conformidade. Isso mostra a
amplitude da rea e a necessidade de criao de um processo organizado e maduro que
atenda todas essas preocupaes.
Existem, atualmente, diversas tentativas de sistematizar o processo de gesto de
segurana [Stonebumer 2001][SSE-CMU 1999], todas com etapas em comum mas
nunca chegando a um consenso. Segundo o SSE-CMM, os principais objetivos da
engenharia de segurana so:
conhecer os riscos associados organizao;
estabelecer um conjunto equilibrado de requisitos de segurana em
conformidade com os riscos identificados;
transformar os requisitos de segurana em procedimentos a serem adotados em
toda a organizao;
estabelecer laos de confiana na correo e efetividade dos mecanismos de
segurana adotados;
garantir que os riscos residuais mantenham-se em nveis tolerveis;
integrar os esforos de todas as reas da organizao na busca por uma viso
combinada sobre a confiana no sistema.
A escolha de um determinado modelo de processo depende de vrios fatores
como o tipo e o tamanho da organizao, o que deve ser analisado caso a caso. No
entanto, identificam-se pontos relevantes a serem considerados e que podem ser
traduzidos em etapas de um processo genrico de gesto de segurana: anlise de riscos,
elaborao de polticas de segurana, minimizao de riscos, ampliao da cultura de
segurana e gerncia e manuteno. A correta incorporao dessas etapas na gesto da
tecnologia de informao em uma organizao o primeiro passo na obteno de um
processo que precisa ainda contar com as seguintes qualidades [SSE-CMU 1999]:
continuidade: uso, em esforos futuros, do conhecimento adquirido em esforos
anteriores;
capacidade de repetio: garantia que esforos bem sucedidos sejam repetidos;
eficincia: uso do processo de gesto como auxlio no desempenho de algumas
tarefas;
garantia: confiana que os requisitos de segurana foram observados.
Alguns autores denominam gerncia de riscos a rea que engloba as trs etapas mais
ligadas a aspectos tecnolgicos: anlise de riscos, minimizao de riscos e gerncia e
manuteno. Divididas em sub-fases, possvel esquematiz-las como ilustrado na
figura 4.11.
Identificar

Controlar Analisar

Monitorar Planejar
Implementar

Figura 4.11. Fases da gerncia de riscos

A anlise de riscos responsvel, em um primeiro momento, pela identificao


de bens, infra-estrutura existente, ameaas, vulnerabilidades e controles, enfocando
tanto questes tecnolgicas como organizacionais (que bens so mais importantes, por
exemplo). Analisar essas informaes, avaliar o impacto de determinadas ameaas e
determinar os riscos mais srios so funes colocadas na segunda sub-fase da anlise
de riscos. Por fim, propor solues para a reduo dos riscos levantados, alteraes nas
polticas de segurana e necessidades de treinamento de pessoal encerram essa etapa.
Minimizar riscos significa concluir o processo de planejamento (e.g. avaliar a
relao custo/benefcio dos mecanismos a serem utilizados e priorizar as aes
necessrias) e efetivamente implementar solues que reduzam os riscos apontados na
fase anterior, determinando prazos, responsabilidades, configuraes, etc.
Na ltima etapa, o objetivo principal garantir a continuidade do processo.
Monitorar a eficincia dos mecanismos empregados e a possvel insero de novos
riscos, controlar mudanas na infra-estrutura e de pessoal e disparar um novo ciclo no
processo de gerncia de riscos so funes importantes dessa fase.
As outras duas etapas da gesto de segurana - elaborao de polticas e
ampliao da cultura de segurana - complementam o processo e so desencadeadas
paralelamente gerncia de riscos. Ambas desempenham um papel de fundamental
importncia na gesto de segurana e interagem de forma intensa com todas as outras
fases, utilizando como insumos os resultados e apoiando o desenvolvimento de vrias
etapas.
A reunio dessas etapas caracteriza o ciclo de vida da segurana em uma
organizao. A exemplo da rea de engenharia de software, alguns comentrios podem
ser feitos sobre a seqncia de execuo dessas etapas e as vrias iteraes do processo.
Desconsiderando as fases responsveis pelas polticas e cultura de segurana, atuantes
durante todo o ciclo, o restante das etapas segue uma ordem relativamente natural.
Antes de implementar qualquer mecanismo de controle imprescindvel um
levantamento de requisitos e um planejamento adequado a fim de evitar as distores j
citadas anteriormente. Entretanto, possvel que, aps a constatao de desvios de
configurao e a conseqente necessidade de algumas correes, todo o processo de
anlise de riscos seja dispensvel. Gerenciar e manter os mecanismos de controle
previamente implementados - ou mesmo novos tipos de mecanismos - no exige,
necessariamente, que todo um processo de levantamento de riscos seja novamente
colocado em prtica, desviando a seqncia das etapas diretamente do
controle/monitorao para um planejamento/implementao, situao ilustrada na figura
4.11 por uma linha tracejada. Por sua vez, modificaes significativas, seja nos
mecanismos ou na prpria infra-estrutura, assim como a extrapolao de limites de
tempo pr-estabelecidos, foram o reincio de todo o ciclo de segurana, incluindo a
fase de anlise de riscos.
Outra considerao diz respeito s diversas iteraes do processo. Dada a
complexidade quando o assunto segurana, praticamente invivel tentar assumir uma
postura completamente top-down. Imaginar que todos os riscos sero levantados de uma
nica vez e que, s aps isso, o planejamento e a implementao dos mecanismos
necessrios ser disparada , no mnimo, sub-dimensionar as dificuldades a serem
encontradas. Para evitar que um tempo demasiado seja gasto antes da efetiva reduo
dos riscos mais relevantes, importante que uma abordagem incremental e em espiral
seja adotada. Dessa forma, as primeiras iteraes do processo serviro para levantar e
minimizar os riscos mais importantes e, a cada rodada, novos requisitos sero
abordados. Isso faz com que o foco seja sempre mantido nos bens mais crticos e nos
problemas prioritrios da organizao, permite um refinamento e evoluo gradual de
todo o processo e garante que os maiores problemas sejam reavaliados repetidas vezes.
Saltos muito grandes tendem a no permitir o descobrimento de problemas srios, mas
pouco visveis.
Por fim, vale analisar o estgio de desenvolvimento do sistema que se est
querendo proteger. A intensidade das atividades necessrias no processo de gesto de
segurana depende do atual estgio do sistema alvo: sistema em desenvolvimento ou
sistema em produo. No primeiro caso, importante que essas atividades estejam
integradas em todas as etapas do ciclo de vida do sistema, inserindo preocupaes com
segurana desde a definio at a manuteno do mesmo. Em sistemas j existentes
necessrio que fases de identificao e anlise, seja dos recursos existentes ou dos
mecanismos de segurana j implementados, sejam colocadas como pontos de partida
para o restante do processo. fcil perceber que bem mais difcil acrescentar
segurana em uma infra-estrutura j implantada do que em sistemas em fase de criao.
O ideal que preocupaes com segurana acompanhem todo o ciclo de vida de um
sistema, desde o seu planejamento at a sua morte.

4.6.1. Poltica de Segurana


Desenvolver uma poltica de segurana global para a organizao o primeiro passo na
adoo de medidas de segurana. Essa poltica de alto nvel servir para estabelecer as
linhas-mestras para a gesto da segurana da informao e ser desdobrada,
posteriormente, em documentos especficos mais detalhados. Na prtica, esse
desdobramento ser guiado pela anlise de riscos e conter desde requisitos para a
educao de segurana (cultura) at conseqncias das violaes da prpria poltica.
Resumidamente, o termo poltica de segurana computacional pode ser definido
como a documentao das decises de segurana relacionadas a recursos
computacionais, ou seja, o conjunto de leis, regras e prticas que regulam a gerncia,
proteo e acesso a informaes e recursos. Da mesma forma que no existe crime sem
uma lei que o defina, no existe incidente de segurana se nenhuma poltica foi violada.
A prtica mostra que mesmo que uma poltica formal no tenha sido documentada,
polticas informais sempre existiro, definindo o que ou no permitido no sistema.
Dentro dessa lgica, um sistema seguro aquele que garante o cumprimento integral da
poltica de segurana traada por seus gestores, formal ou informalmente.
Dependendo do tipo das decises abordadas, uma poltica de segurana pode ser
classificada como organizacional, gerencial ou especfica. Uma poltica de segurana
organizacional aponta a direo estratgica da segurana e determina os recursos
destinados a sua implementao. Esse tipo de poltica usado para definir, por exemplo,
o processo de gesto de segurana, seu escopo e os responsveis pela sua coordenao e
execuo. Decises como essas so tomadas no topo da cadeia hierrquica e vo ao
encontro do planejamento estratgico traado para toda a organizao.
Um nvel intermedirio de polticas de segurana aborda questes gerenciais
como, por exemplo, que modelo deve ser seguido na gerncia de riscos, que abordagem
usar na criao de um plano de contingncia ou como deve ser estruturado o programa
de ampliao da cultura de segurana dentro da organizao. Enquanto a poltica
organizacional suficientemente abrangente para exigir poucas alteraes, polticas
gerenciais devem sofrer revises mais freqentes para acomodar possveis mudanas
tecnolgicas e operacionais.
O tipo mais granular de poltica de segurana representado pelas polticas
traadas para pontos especficos do sistema. Embora os outros dois tipos abordem
questes relacionadas a toda a organizao, ambos no fornecem informaes
suficientes para, por exemplo, organizar regras de um firewall ou para avaliar a
colocao de um determinado servio em funcionamento. Essa a funo de polticas
especficas, traadas para cada parte relevante do sistema, como pode ser visto no
exemplo da figura 4.12:
Poltica de segurana para roteadores

1.0 Propsito
Este documento descreve a configurao mnima de segurana exigida para todos os roteadores e switches a
serem conectados a uma rede de produo ou com capacidade de produo em nome de <Nome da Companhia>.

2.0 Escopo
Todos os roteadores e switches conectados ao ambiente de produo da <Nome da Companhia> so afetados.
Roteadores e switches em laboratrios isolados no so afetados. Roteadores e switches em reas
desmilitarizadas (DMZs) esto sob a poltica de equipamentos em redes desmilitarizadas.

3.0 Poltica
Todo roteador deve atender os seguintes padres de configurao:
1. Nenhuma conta de usurio local configurada no roteador. Roteadores devem usar TACACS+ para
autenticao de todos os usurios;
2. A senha de acesso ao roteador (enable password) deve ser mantida criptografada. A senha de acesso
atribuda deve ser a senha de acesso atual, para roteadores de produo, usada pelo suporte de roteadores da
organizao;
3. Desabilitar:
a. IP broadcasts;
b. Pacotes chegando ao roteador originados de endereos invlidos, como os definidos pela
RFC1918;
c. Servios TCP desnecessrios;
d. Servios UDP desnecessrios;
e. Pacotes com source routing habilitado;
f. Todos os servios WEB rodando no roteador;
4. Usar, em SNMP, community strings padronizadas pela corporao;
5. Regras de acesso devem ser adicionadas de acordo com as necessidades da organizao.
6. O roteador deve ser includo no sistema de gerncia da organizao;
7. Cada roteador deve ter a seguinte sentena claramente afixada:

"PROIBIDO O ACESSO NO AUTORIZADO A ESTE DISPOSITIVO DE REDE. Voc deve ter permisso explcita
para acessar ou configurar este dispositivo. No ser observado o direito privacidade nas atividades realizadas
neste dispositivo. Todas as atividades podem ser registradas e violaes poltica de segurana da companhia
podem resultar em medidas disciplinares e sanes legais cabveis."

4.0 Sanes
Qualquer funcionrio que venha a violar esta poltica estar sujeito a medidas disciplinares, incluindo possvel
demisso por justa causa.

5.0 Definies

6.0 Histrico de Reviso

Figura 4.12. Exemplo de poltica de segurana especfica


Independentes do tipo, boas polticas devem necessariamente ser
implementveis e exeqveis, ter foco no futuro, ser claras e concisas, alm de equilibrar
proteo e produtividade. Outras caractersticas desejveis incluem, ainda, o
esclarecimento de sua necessidade, a descrio de sua abrangncia, a definio de
contatos e responsabilidades e determinaes sobre o tratamento a possveis violaes.
Todas essas caractersticas devem ser observadas para evitar ao mximo os
problemas enfrentados na elaborao e implementao de algumas polticas, casos em
que o esforo empregado na gesto correta de segurana pode se tornar incuo. Todos
so afetados na organizao, o que evidencia as diferentes vises sobre as necessidades
de segurana, a sensao de reduo de produtividade e, principalmente, de liberdade e
o receio do no cumprimento das regras impostas, exemplos dos problemas que muitas
vezes impedem o sucesso de uma poltica. Outros cuidados importantes: obter suporte
no nvel de gerncia para o desenvolvimento e promulgao das polticas; designar um
grupo responsvel pela criao, manuteno e aplicao; desenvolver a poltica com a
participao de todos; explicar a poltica a todos os usurios e trein-los para que ela
seja seguida; documentar a aceitao dos usurios; manter a poltica atualizada, para
que essa reflita as mudanas na organizao.
4.6.2. Cultura de Segurana
Um dos pontos mais delicados da segurana em uma organizao, a cultura de
segurana deve ser uma preocupao constante de todo gerente responsvel pela rea.
Aplicaes, ferramentas e procedimentos dependem de recursos humanos para
funcionar, pessoas nem sempre alertas para as conseqncias de aes aparentemente
inofensivas, como o compartilhamento de senhas ou o uso de programas no
autorizados. Educar e conscientizar esses usurios uma tarefa difcil e onerosa, que
exige um planejamento adequado e procedimentos bem orientados.
Preocupaes desse tipo j devem comear no processo de recrutamento de
pessoal. muito importante que exista uma poltica de seleo e contratao de recursos
humanos e que, nessa fase, sejam includas em contratos as responsabilidades de
segurana e os possveis acordos de confidencialidade atribudos a cada cargo. A norma
ISO/IEC 17799 recomenda, ainda, que seja observada a disponibilidade de referncias
satisfatrias, tanto profissionais como pessoais, verificadas as informaes fornecidas
no curriculum vitae, confirmadas as qualificaes acadmicas e profissionais e
verificada a identidade do candidato. Cuidados como esses podem reduzir o risco de
possveis problemas com pessoal e facilitar os esforos na melhoria da cultura de
segurana dentro da organizao.
Mesmo com todos os cuidados durante o processo de contratao, fundamental
que sejam criados programas de treinamento constante dentro da organizao,
assegurando que os usurios estejam cientes das ameaas e das preocupaes com
segurana e capazes a observar, durante suas atividades normais, as polticas de
segurana existentes. Esses programas devem evitar o carter coercivo verificado em
alguns casos e, ao invs disso, tentar estabelecer um vnculo de responsabilidade e
respeito mtuo entre gestores e funcionrios. Um exemplo de esforo nesse sentido a
criao de um boletim eletrnico que discuta problemas relacionados segurana e que,
de forma bem humorada, crie um ranking entre os setores mais seguros da organizao,
estabelecendo premiaes simblicas para os melhores e os piores.
Por fim, a integrao entre os programas de treinamento e as outras etapas do
processo de gesto de segurana deve ser sempre observada. A realizao de uma nova
anlise de risco provavelmente causar impactos nas polticas de segurana j existentes
e, conseqentemente, criar novas necessidades de treinamento e melhorias na cultura
de segurana da organizao.

4.6.3. Anlise de Riscos


Um dos fundamentos de uma boa gesto de segurana direcionar todos os esforos
possveis para a proteo dos bens mais valiosos da organizao. Isso significa levar em
considerao tanto questes organizacionais quanto tecnolgicas para avaliar
corretamente quais so esses bens, os riscos atrelados a eles e a melhor forma de
proteg-los. Esse o principal objetivo da anlise de riscos, etapa fundamental para que
estratgias adequadas sejam traadas e para que os mecanismos corretos sejam
selecionados e implementados. Sem esse estudo prvio, a adoo de qualquer estratgia
ou mecanismo no passar de mera especulao, obter pouca eficincia e
proporcionar uma falsa sensao de segurana, o que muitas vezes pior do que a
inexistncia dela. Alm disso, a anlise de riscos servir de base para a adequao e
detalhamento da poltica de segurana traada bem como para orientar os programas
para melhoria da cultura de segurana.
O modelo genrico descrito anteriormente aponta para uma anlise de riscos
dividida em trs fases: identificao, anlise e planejamento. Cada uma dessas fases
pode, ainda, ser subdividida em vrios passos, auxiliando na sistematizao e execuo
da anlise. Os passos descritos a seguir (figura 4.13) seguem o modelo proposto pelo
NIST [Stonebumer 2001]:
Caracterizao Identificao de Identificao de
do Sistema Ameaas Vulnerabilidades Identificao

Anlise de Anlise de Anlise de


Impacto Probabilidades Mecanismos Anlise

Determinao Recomendao Documentao


de Riscos de Mecanismos de Resultados Planejamento

Figura 4.13. Passos da anlise de riscos

O primeiro passo da anlise de risco visa caracterizar o sistema e, com isso,


definir o escopo do trabalho. O objetivo principal levantar tanto informaes tcnicas
quanto organizacionais, definindo as fronteiras e funes dos diferentes sistemas, a
infra-estrutura tecnolgica j existente e os principais bens da organizao. Esses bens
podem variar desde dispositivos de hardware at recursos humanos, passando por
software, informaes e outros sistemas (combinao de informao, hardware e
software, como, por exemplo, um determinado servidor). Exemplo de dados levantados
nessa etapa:
requisitos funcionais do sistema;
usurios do sistema;
polticas de segurana existentes, sejam elas formais ou informais;
mecanismos de segurana j implementados;
topologia de rede atual;
fluxo de informao no sistema;
controles tcnicos (mecanismos), de gerncia (regras) e operacionais (prticas).
Dependendo do estgio de desenvolvimento do sistema, esses dados podem ser
derivados da anlise de requisitos e do projeto, para sistemas em fase inicial, ou de
entrevistas, questionrios e da documentao existente, para sistemas em estgio de
produo. Outra forma de coletar dados em ambientes de produo atravs do uso de
ferramentas automticas de varredura, principalmente para o mapeamento de redes e
para o levantamento de servios disponveis em cada servidor ou estao.
O resultado esperado dessa fase a caracterizao do sistema analisado e do
ambiente em que ele est inserido, alm da identificao de suas fronteiras.
O prximo passo a identificao das ameaas ao sistema. Ameaa tudo
aquilo que pode causar algum dano ao sistema, seja acidental (por algum desastre
natural ou por impercia, por exemplo) ou intencionalmente (um ataque de negao de
servio a um servidor, por exemplo). Os bens so os alvos, enquanto os causadores so
chamados de agentes de uma ameaa. Outros componentes so a motivao, o tipo de
acesso usado e os resultados dos incidentes.
Um estudo detalhado sobre os componentes citados acima pode resultar em um
catlogo genrico que descreva as principais ameaas existentes, servindo de base para
anlises voltadas a todos os bens relevantes do sistema. Exemplo dessas ameaas
genricas: agente humano tentando explorar servios vulnerveis atravs da rede
externa.
Espera-se que nesta etapa seja gerada uma lista com as ameaas aos principais
bens da organizao, til na definio dos riscos e no levantamento das vulnerabilidades
existentes.
Como uma ameaa s potencializada atravs da explorao de uma
determinada vulnerabilidade, no existe agente que possa representar uma ameaa sem
que exista uma vulnerabilidade a ser explorada. A fase seguinte na anlise de riscos
justamente a identificao das vulnerabilidades do sistema. O objetivo final a
elaborao de uma tabela que liste todos os pares ameaa/vulnerabilidade encontrados
no sistema, semelhante ao exemplo abaixo [Stonebumer 2001]:
Tabela 4.3. Exemplo de pares ameaa/vulnerabilidade

Vulnerabilidade Agente Ameaa


Contas de antigos funcionrios no Antigos funcionrios Usar os servios de acesso discado
foram removidas do sistema da empresa para obter dados
internos

Firewall da empresa permite telnet Usurios no autorizados (e.g. Conectar, via telnet, no servidor
externo e existe uma conta guest no hackers, antigos funcionrios, XYZ e navegar no sitema de
servidor XYZ concorrentes) arquivos atravs da conta guest

Vendedor identificou problemas de Usurios no autorizados (e.g. Obter acesso no autorizado a


segurana em seu sistema; entretanto, hackers, antigos funcionrios, arquivos crticos do sistema,
novas correes (patches) no foram concorrentes) atravs das vulnerabilidades
aplicados ao sistema conhecidas

A anlise de vulnerabilidades pode ser feita atravs da consulta a fontes


conhecidas de informao, como as listas de vulnerabilidade do CERT (www.cert.org),
CVE (www.cve.mitre.org) e NIST I-CAT (icat.nist.org), da realizao de testes de
segurana (uso de ferramentas de varredura e de testes de invaso) e do
desenvolvimento de um checklist de requisitos de segurana.
O passo seguinte analisar os mecanismos e controles de segurana j
implementados ou planejados pela organizao. Como visto nas sees anteriores,
firewalls, IDSs, VPNs e verificadores de integridade so exemplos de mecanismos
usados para minimizar os riscos de uma infra-estrutura, seja atravs da preveno,
deteco ou reao a possveis incidentes, e devem ser analisados para a determinao
de sua real eficcia no sistema em questo.
De posse das informaes j coletadas, o objetivo agora determinar qual a
probabilidade de que uma potencial vulnerabilidade seja explorada, sempre levando em
conta o par ameaa/vulnerabilidade e os mecanismos j existentes. Pela dificuldade de
uma anlise completamente quantitativa, o quadro abaixo exemplifica uma classificao
qualitativa bem simples que poderia ser usada:
Tabela 4.4. Nveis qualitativos de ameaas

Probabilidade Definio

Alto O agente da ameaa altamente motivado e suficientemente capaz e os mecanismos para


prevenir a explorao das vulnerabilidades existentes so ineficazes

Mdio O agente da ameaa motivado e capaz, mas os mecanismos existentes podem impedir a
explorao das vulnerabilidades do sistema

Baixo O agente da ameaa no motivado e suficientemente capaz, ou os mecanismos para prevenir a


explorao das vulnerabilidades so eficazes

Complementando a fase de anlise, necessrio que seja feito um estudo sobre o


impacto que cada par ameaa/vulnerabilidade pode causar nos bens do sistema, um dos
principais passos na anlise de riscos. Tanto bens crticos como sensveis sero
analisados, seja por estudos organizacionais j realizados ou atravs de entrevistas feitas
junto aos responsveis por cada bem. importante tambm que sejam observadas tanto
perdas convencionais, em valores financeiros, por exemplo, quanto perdas de valores
intangveis, como credibilidade e imagem.
Os critrios usados para a anlise de impacto estaro sempre baseados nas trs
principais caractersticas da segurana: privacidade, integridade e disponibilidade. As
perdas em cada uma dessas caractersticas podem gerar outra tabela, apontando
qualitativamente os diferentes nveis de impacto existentes.
Tabela 4.5.Nveis de impacto no sistema

Impacto Definio

Alto A explorao da vulnerabilidade pode: (1) resultar em altas perdas financeiras; (2) violar
significantemente bens intangveis; (3) resultar em perdas humanas ou em srios danos;

Mdio A explorao da vulnerabilidade pode: (1) resultar em perdas financeiras; (2) violar bens
intangveis; (3) resultar em srios danos;

Baixo A explorao da vulnerabilidade pode: (1) resultar na perda de algum bem convencional; (2)
afetar bens intangveis;

A determinao dos riscos, por sua vez, a conjuno de todos os passos j


realizados, representando o centro de toda a anlise de riscos. O termo risco representa a
probabilidade de que uma ameaa se manifeste, atravs da explorao de uma
vulnerabilidade, aliado ao impacto causado por esse incidente. Com base nesses dados,
uma matriz de riscos criada para que seja determinado o risco associado a cada par
ameaa/vulnerabilidade. A matriz abaixo exemplifica esse esforo:
A interpretao dos nveis de risco obtidos em cada par ameaa/vulnerabilidade
deve ser feita com base na necessidade de adoo de medidas corretivas. Em casos onde
o nvel obtido foi alto, fundamental que sejam tomadas medidas imediatas, sem as
quais no recomendvel que o sistema continuem operando. No segundo caso, quando
a avaliao apontar para um nvel de risco mdio, aes e planos corretivos so
necessrios em um perodo de tempo razovel, durante o qual o sistema pode continuar
em operao. Por outro lado, quando nveis de risco baixos forem obtidos, medidas
corretivas podem ser adotadas ou pode-se optar por correr esses riscos.
Tabela 4.6.Matriz de riscos

Impacto
Probabilidade de Ameaa Baixo Mdio Alto
(10) (50) (100)
Alto (1,0) Baixo Mdio Alto
10 x 1,0 = 10 50 x 1,0 = 50 100 x 1,0 = 100
Mdio (0,5) Baixo Mdio Mdio
10 x 0,5 = 5 50 x 0,5 = 25 100 x 0,5 = 50
Baixo (0,1) Baixo Baixo Baixo
10 x 0,1 = 1 50 x 0,1 = 5 100 x 0,1 = 10

Por fim, os dois ltimos passos representam o planejamento das medidas a


serem tomadas, na forma de recomendaes de mecanismos, e a documentao dos
resultados obtidos ao final de todos os passos. O objetivo maior reduzir os riscos
avaliados a nveis aceitveis, propondo mecanismos e prticas de segurana. Isso servir
de entrada para a etapa de seleo e implementao de mecanismos, quando planos mais
detalhados sero traados.

4.6.4. Seleo e Implementao de Mecanismos


Com o subsdio gerado pelo estabelecimento da poltica de segurana e pela anlise de
riscos, e observando as principais estratgias de segurana, o gerente ou o grupo de
segurana deve selecionar os mecanismos de segurana adequados ao problema em
questo. Cada mecanismo, como visto nos captulos anteriores, possui caractersticas e
propsitos particulares, tornando-os eficientes para tarefas bem especficas. A
conjuno de suas vantagens aplicadas a um problema j bem conhecido o segredo de
um nvel de segurana aceitvel.
De acordo com o que j foi exposto, requisitos de segurana so identificados
atravs de uma avaliao sistemtica dos riscos de segurana. Os gastos com os
controles de segurana precisam ser balanceados de acordo com os danos causados aos
negcios gerados pelas potenciais falhas de segurana, um dos objetivos desta etapa.
A exemplo da etapa de anlise, o processo de minimizao de riscos possui
alguns passos caractersticos, descritos pelo NIST [Stonebumer 2001]. A figura 4.14
ilustra esses passos.
Priorizao de Avaliao de Anlise de
Aes Mecanismos Custo/Benefcio

Planejamento Atribuio de Seleo de


Responsabilidades Mecanismos

Implementao

Figura 4.14.Passos da reduo de riscos

No primeiro passo, as aes so classificadas por ordem de importncia, para


que as medidas mais urgentes sejam tomadas com certa prioridade.
A segunda tarefa reavaliar os mecanismos sugeridos na anlise de riscos, tendo
em vista questes como aplicabilidade, compatibilidade, aceitao pelos usurios e
facilidade de manuteno, entre outros critrios. Dessa tarefa sair uma lista com os
mecanismos mais apropriados para a reduo dos riscos existentes.
A anlise de custo/benefcio serve para complementar o passo anterior,
refinando a seleo dos mecanismos e adequando os gastos com as vantagens obtidas.
Essa anlise deve levar em considerao os riscos e a sensibilidade dos bens protegidos,
alm de custos tecnolgicos e operacionais (instalao, configurao e treinamento;
perda de desempenho e de facilidade de uso; etc.).
Baseado nos resultados da anlise de custo/benefcio, os responsveis pelo
processo determinaro os mecanismos e as prticas mais adequadas e vantajosas para a
reduo dos riscos da organizao. Isso deve incluir controles tcnicos, operacionais e
gerenciais, garantindo os nveis desejados de segurana.
Aps a atribuio das responsabilidades de implementao, expressa por uma
lista dos responsveis pela implementao de cada mecanismo, o prximo passo
planejar o processo de implementao propriamente dito, priorizando as aes mais
relevantes e determinando prazos de execuo.
Por fim, a execuo dos planos traados resulta na implementao de todos os
mecanismos selecionados e, conseqentemente, na reduo dos riscos existentes.
Entretanto, riscos residuais so comuns e j comeam a ser identificados nesta etapa.

4.6.5. Gerncia e Manuteno


A segurana uma preocupao constante e incessante. Novos ataques so
desenvolvidos, novos servios so instalados, alteraes na legislao vigente foram
mudanas nas polticas traadas, novos usurios precisam de treinamento, etc., o que
mostra a importncia de uma gerncia e manuteno adequadas quando o assunto
segurana. Ferramentas voltadas gerncia de segurana auxiliam nessa tarefa, embora
muitos detalhes ainda no sejam automatizados e dependam da vigilncia constante dos
administradores e gerentes.
O objetivo principal desta etapa garantir a continuidade do processo de gesto
de segurana, monitorando a eficincia dos mecanismos empregados e a possvel
insero de novos riscos, controlando mudanas de infra-estrutura e de pessoal e,
principalmente, disparando um novo ciclo no processo de gerncia. Alm disso, planos
de contingncia e prticas tradicionais de manuteno so tarefas tambm importantes.

4.6.6. Estudo de caso


Para exemplificar o processo de gerncia de riscos, um dos mais importantes em toda a
gesto de segurana, o estudo de caso a seguir apresenta, de forma resumida, os
principais passos na seleo de mecanismos adequados de segurana. Embora as etapas
sugeridas nas sees anteriores tenham sido seguidas, alguns detalhes sero omitidos
por questes de simplificao.
O primeiro passo envolve a caracterizao do sistema. Suponha-se neste caso
uma distribuidora de livros, que vende para livrarias. Como ilustrado na figura 4.15, a
distribuidora composta de uma matriz, que concentra os recursos computacionais, tais
como um servidor de banco de dados (DB server) e um servidor Web (Web server).
Funcionrios
DB DNS, MAIL, Remotos
Server HTTP, FTP ISP

RAS
Roteador
Internet

ISP
ISP

...

Servidor Workstations
Interno de
Arquivos
...
DNS, MAIL
Workstations

Figura 4.15.Caso exemplo

Em termos organizacionais, tem-se previamente definidas as seguintes polticas:


a comunicao entre matriz e filial ocorre via Internet, inclusive para acesso ao
banco de dados;
os vendedores acessam a base de dados via RAS ou via um provedor de acesso
para Internet (ISP), atravs de um programa especfico;
pessoal de suporte tem a capacidade de realizar computao remota atravs de
Telnet, e acessa a rede via o servidor RAS (no via provedor de acesso);
servidor Web somente disponibiliza material de divulgao e catlogos, mas
existe o desejo de implementar venda direta via comrcio eletrnico, com
disponibilidade de 24 horas e 7 dias por semana;
acesso ao banco de dados j realizado atravs de identificao do usurio
(senha), e j particularizado para cada departamento (vendas, estoque,
contabilidade, etc);
no existe firewall, o roteador somente realiza os servios bsicos de
roteamento;
todas as mquinas possuem nmeros IP fixos e reais (visveis da Internet);
a rede da filial tem a mesma estrutura da matriz, somente sem o servidor de
banco de dados e os servios de Web (http), FTP e Telnet. Ou seja, o servidor da
matriz somente roda DNS e Mail.
O segundo passo envolve a identificao das possveis ameaas. Realizando-se
uma anlise superficial de identificao de ameaas, sem entrar em detalhes tcnicos,
verifica-se uma preocupao com os seguintes pontos:
deve ser evitado o acesso no autorizado ao servidor de banco de dados - uma
invaso e cpia dos dados afetaria seriamente a empresa e seus clientes;
deve ser evitada a alterao indevida de pginas no servidor Web - pginas
piratas comprometeriam a imagem da empresa;
deve ser evitado o uso do servidor de ftp para distribuio de material sensvel
ou de programas piratas;
tem-se confiana nos funcionrios, e por conseqncia permite-se acesso
irrestrito destes Internet;
deseja-se implementar um controle de trfego, pois todas as mquinas da
empresa esto diretamente vulnerveis a ataques oriundos da Internet.
O terceiro passo envolve a identificao de vulnerabilidades. No caso do
exemplo, as ameaas enumeradas acima so fundamentadas pela existncia das
seguintes vulnerabilidades (que so numeradas para facilitar referencias a elas durante o
restante do exemplo):
1. Inexistncia de controle eficaz no trfego dirigido aos servidores.
2. Inexistncia de ferramentas de deteco de varreduras de portas e servios.
3. Possibilidade de ataque de negao de servio aos servidores.
4. Servios concentrados em um nico servidor (com exceo do DB server).
5. Todas as mquinas diretamente visveis da Internet.
6. Uso de servios inseguros por funcionrios remotos (vendedores e pessoal de
suporte).
7. Excesso de privilgios para usurios internos (no h controle do trfego
interno)
8. Comunicao insegura entre matriz e filial.
O quarto passo envolve a anlise dos mecanismos de controle existentes ou a
serem implementados. No caso exemplo, identificam-se os seguintes mecanismos:
os servios internos possuem senha;
os acessos dos funcionrios aos servios so diferenciados (vendas, suporte,
gerncia dos servidores, etc);
deseja-se implementar mecanismos de contabilizao do uso de recursos
(accounting).
O quinto passo envolve uma estimativa da probabilidade da realizao de
ataques que explorem as vulnerabilidades listadas no passo trs. No caso do exemplo,
estima-se que a possibilidade de ataques internos baixa, pois a maioria dos
funcionrios no tem conhecimento especializado em informtica. Por outro lado, a
possibilidade de ataques provenientes da Internet alta, pois a empresa conhecida na
Internet. Analisando-se detalhadamente cada uma das vulnerabilidades, tem-se as
seguintes estimativas de probabilidade de ataque (considerou-se alta uma probabilidade
maior que 50%, e baixa uma menor que 10%):
1. Inexistncia de controle no trfego aos servidores: alta (80%)
2. Inexistncia de deteco de varreduras: baixa (5%)
3. Possibilidade de ataque de negao de servios: mdia (20%)
4. Servios concentrados: alto (70%)
5. Todas as mquinas visveis da Internet: alta (85%)
6. Uso de servios inseguros por funcionrios remotos: alta (60%)
7. Excesso de privilgios para usurios internos: mdia (40%)
8. Comunicao insegura entre matriz e filial: alta (65%)
O sexto passo envolve a anlise do impacto decorrente de um ataque bem
sucedido, independente da probabilidade deste ataque ocorrer. Para essa anlise,
considerou-se que o Servidor de Banco de Dados crtico (deve ter alta disponibilidade)
e sensvel (seus dados devem ser confidenciais). O Servidor Web, por outro lado,
tambm crtico (sua disponibilidade afeta diretamente o oferecimento de servios na
Internet), mas no sensvel (todas as informaes sensveis so armazenadas no Banco
de Dados). J o servidor de arquivos interno sensvel, mas no crtico. Sob este
ponto de vista, as vulnerabilidades descritas no passo trs receberam aos seguintes
valores de impacto (usou-se a mesma escala das probabilidades de ataque, em uma
escala de 0 a 100):
1. Inexistncia de controle no trfego aos servidores (queda no servidor): alto (95)
2. Inexistncia de deteco de varreduras: mdio (25)
3. Possibilidade de ataque de negao de servios: alto (80)
4. Servios concentrados: alto (85)
5. Todas as mquinas visveis da Internet: alto (85)
6. Uso de servios inseguros por funcionrios remotos: alto (75)
7. Excesso de privilgios para usurios internos: alto (60)
8. Comunicao insegura entre matriz e filial: alto (80)
O stimo e prximo passo determinar o nvel de risco, basicamente pelo
produto das possibilidades de ataque com o grau de impacto para cada uma das
vulnerabilidades:
1. Inexistncia de controle no trfego aos servidores: alto (0,8 x 95 = 76)
2. Inexistncia de deteco de varreduras: baixo (0, 05 x 25 = 1,25)
3. Possibilidade de ataque de negao de servios: mdio (0,2 x 80 = 16)
4. Servios concentrados: alto (0,7 x 85 = 59,5)
5. Todas as mquinas visveis da Internet: baixo (0,85 x 85= 72,25)
6. Uso de servios inseguros por funcionrios remotos: mdio (0,6 x 75 = 45)
7. Excesso de privilgios para usurios internos: mdio (0,4 x 60 = 24)
8. Comunicao insegura entre matriz e filial: alto (0,65 x 80 = 52)
O oitavo passo envolve as recomendaes de implementaes para a melhoria
de segurana. A prioridade para estas implementaes dada pelo resultado do clculo
do nvel de risco do passo sete. Assim, tm-se as seguintes aes a serem imediatamente
executadas (pois envolvem risco alto), descritas em ordem decrescente de prioridade:
utilizao de firewall para controlar o trfego aos servidores (e bloquear servios
fracos, como o Telnet ou indesejveis, como o TFTP) - isto afeta diretamente a
vulnerabilidade (1);
utilizao de mecanismo de NAT e o emprego de IPs internos no visveis - com
isto, a vulnerabilidade (5) tratada;
descentralizao dos servios concentrados no Web Server - isto afeta
diretamente a vulnerabilidade (4);
uso de uma VPN entre matriz e filial - assim, a vulnerabilidade (8) tratada.
As aes descritas a seguir possuem risco mdio (entre 10 e 50), e deve,
portanto, existir um planejamento para implement-las em um perodo de tempo
razovel:
uso de mecanismos seguros de acesso remoto (SHH e IPsec) para funcionrios
remotos - isso trata da vulnerabilidade (6);
uso de uma firewall interna e eventualmente de um servidor proxy para os
servios da Internet - isto afeta a vulnerabilidade (7);
atualizao dos servidores e eventualmente o emprego de clusters para os
servidores - isto trata a vulnerabilidade (3).
Com isso, todas as vulnerabilidades listadas so tratadas, com exceo da
nmero (2) - inexistncia de controle da realizao de varreduras de portas e servios.
Essa vulnerabilidade j atenuada com o emprego de firewall e de uma DMZ (zona
desmilitarizada), mas pode ser especificamente tratada com o uso de um sistema de
deteco de intruso (IDS). Como o grau de impacto desta vulnerabilidade foi
considerado baixo, entretanto, o uso de um IDS no obrigatrio, e fica a critrio dos
administradores.
Assim, aps a anlise realizada, a configurao do sistema alterada para
incorporar os elementos acrescentados. O resultado final, para o caso da matriz,
mostrado na Figura 4.16.

4.7. Concluses
A Internet registra um crescimento continuo, com a interligao das redes internas de
empresas. Infelizmente, com o crescimento da Internet cresceram tambm, e em uma
escala muito maior, os problemas de segurana em redes. Se na dcada de 80 ainda era
possvel administrar um domnio da Internet com uma postura permissiva, hoje em dia
se exige uma grande dose de prudncia. Os aspectos de segurana se tornam mais
complexos diante do fato que a maioria dos servios da rede foi projetado e
desenvolvido quando a confiana mtua ainda existia na rede, e os casos de vandalismo
eram raros e isolados. Isto faz com que um administrador de uma rede ou domnio tenha
que desenvolver uma poltica de segurana sria e estar continuamente atento para
adapt-la s rpidas mudanas que ocorrem na Internet.
Como foi discutido neste trabalho, a simples adoo de bons mecanismos no
suficiente para garantir um nvel aceitvel de segurana. Procedimentos que garantam a
aplicao correta de tcnicas de segurana so essenciais e no podem ser esquecidos.
Desenvolver uma poltica de segurana global para a organizao o primeiro passo na
adoo de medidas de segurana. Essa poltica de alto nvel serve para estabelecer as
diretrizes para a gesto da segurana da informao e deve ser desdobrada,
posteriormente, em documentos especficos mais detalhados. Na prtica, esse
desdobramento ser guiado pela anlise de riscos e contm desde requisitos para a
educao de segurana (cultura) at conseqncias das violaes da prpria poltica.
Funcionrios
RAS Remotos
DNS HTTP
MAIL FTP ISP

Roteador
DB VPN
Server Gateway
Internet
Filtro e NAT
ISP
ISP

Filtro Interno

...

Workstations
Servidor
Interno de
Arquivos

Figura 4.16. Caso exemplo modificado

Um dos pontos mais delicados da segurana em uma organizao a cultura de


segurana, que deve ser uma preocupao constante de todo gerente responsvel pela
rea. Aplicaes, ferramentas e procedimentos dependem de recursos humanos para
funcionar, pessoas nem sempre esto alertas para as conseqncias de aes
aparentemente inofensivas, como o compartilhamento de senhas ou o uso de programas
no autorizados. Educar e conscientizar esses usurios uma tarefa difcil e onerosa,
que exige um planejamento adequado e procedimentos bem orientados.
Uma anlise de riscos essencial para conhecer as principais ameaas, as
vulnerabilidades do sistema, as informaes mais importantes, o seu valor estimado, os
prejuzos decorrentes da perda dessas informaes ou da indisponibilidade dos servios
mais importantes, etc. Este um ponto fundamental para que estratgias adequadas
sejam traadas e para que os mecanismos corretos sejam selecionados e implementados.
Sem essas informaes, a adoo de qualquer estratgia ou mecanismo no passar de
mera especulao, obter pouca eficincia e proporcionar uma falsa sensao de
segurana, o que muitas vezes pior do que a inexistncia dela. Alm disso, a anlise de
riscos servir de base para a adequao e detalhamento da poltica de segurana traada.
Com o subsdio gerado pelo estabelecimento da poltica de segurana e pela
anlise de riscos, e observando as principais estratgias de segurana, devem ser
selecionados os mecanismos de segurana adequados ao problema em questo. Cada
mecanismo, como visto anteriormente, possui caractersticas e propsitos particulares,
tornando-os eficientes para tarefas bem especficas. A conjuno de suas vantagens
aplicadas a um problema j bem conhecido o segredo de um nvel de segurana
aceitvel.
A segurana deve ser uma preocupao constante e incessante. Novos ataques
so desenvolvidos, novos servios so instalados, alteraes na legislao vigente
foram mudanas nas polticas traadas, novos usurios precisam de treinamento, etc., o
que mostra a importncia de uma gerncia e manuteno adequadas quando o assunto
segurana. Ferramentas voltadas gerncia de segurana auxiliam nessa tarefa, embora
muitos detalhes ainda no sejam automatizados e dependam da vigilncia constante dos
administradores e gerentes.

Referncias
Garfinkel, S. e Spafford, G. (1997) Web Security & Commerce. O'Reilly &
Associates, junho 1997. 484 p.
Stinson, D. (1995) Cryptography: Theory and Practice. CRC Press, 1995. 434 p.
Menezes, A.; van Oorschot, P. e Vanstone, S. (1997) Handbook of Applied
Crytography. CRC Press, 1997. 780 p.
Schneier. B. (1996) Applied Cryptography. Second edition. John Willey & Sons,
1996. 758 p.
Howard, J. e Longstaff, T. (1998) A Common Language for Computer Security
Incidents (SAND98-8667). Sandia National Laboratories, 1998. (Disponvel em
http://www.cert.org/nav/ reports.html).
Bace, R. e Mell, P. (2001) NIST Special Publication on Intrusion Detection Systems
(Draft). NIST, 2001. (Disponvel em http://www.nist.gov).
Aslan, T.; Krsul, I. e Spafford, E. (1996) Use of a Taxonomy of Security Faults (Coast
TR-96-051). COAST Laboratory, Purdue University, 1996. (Disponvel em http://
www.cs.purdue.edu/coast/coast-library.html).
Proctor, P. (2001) Practical Intrusion Detection Handbook. Prentice Hall, 2001.
Stonebumer, G.; Goguen, A. e Feringa, A. (2001) Risk Management Guide for
Information Technology Systems: Recomendations of the National Institute of
Standards and Technology (Special Publication 800-30). NIST, 2001.
Systems Security Engineering Capability Maturity Model (SSE-CMM) Project (1999)
A Systems Engineering Capability Maturity Model, Version 2.0. CMU/SEI, 1999.
ABNT (2001) Tecnologia da Informao - Cdigo de prtica para a gesto da
segurana da informao (NBR ISO/IEC 17799). ABNT, 2001.
Barret, Daniel J.; e Silverman, Richard. (2001) "SSH The Secure Shell". O'Reilly, 2001.

You might also like