Você está na página 1de 154

Serviço Nacional de Aprendizagem Industrial Departamento

Regional de São Paulo


Escol a SENAI “ Suíço-Brasileir a”
U.F.P 1.15

Técnico em Informática – Redes de Comunicação


Segurança em Redes

2007
Segurança em Redes
© SENAI-SP, 2007

1a edição, 2007
Trabalho organizado a partir de seleção de textos técnicos sobre Segurança em Redes extraído da Internet
pela Escola SENAI Suíço-Brasileira para o curso Técnico de Redes de Comunicação.

Equipe responsável
Coordenação Alexssandro Augusto Reginato
Elaboração Jackson Klarosk
Capa Jackson Klarosk

Todos os nomes próprios de programas e sistemas operacionais mencionados nesta apostila são marcas
registradas de suas respectivas empresas ou organizações.

2
Segurança em Redes
SENAI Serviço Nacional de Aprendizagem Industrial
Departamento Regional de São Paulo
Av. Paulista, 1313 - Cerqueira César
São Paulo - SP
CEP 01311-923
Telefone (0XX11) 3146-7000
Telefax (0XX11) 3146-7230

SENAI on-line 0800-55-1000

E-mail senai@sp.senai.br
Home page http://www.sp.senai.br

3
Segurança em Redes

Sumário

Fundamentos de Segurança em Redes................. ............... ............................... ........ 12


Introdução ................. ............... ............................... ............... ................. ................. 12

Segurança................. ............... ............................... ............... ................. ................. 13


Garantias........................ ............... ............................... ................. ........................... 13
Confidencialidade ........................................... ............... ............................... ........ 13
Autenticidade ............................. ............................... ................. ........................... 13
Integridade............. ............... ............................... ............... ............................... ... 13
Disponibilidade................. ............................... ............... ............................... ........ 13
Aceite (não repúdio)...................... ............... ............................... ............... ........... 14
Problemas. ............................................ ............... ................ ............... ................. .... 14

Riscos................. ............................... ............... ................ ............... ................. .... 14


Falhas........................................... ............... ............................... ............... ........... 14
Ameaças................. ................. ............... ............................... ............... ................ 14
Ataques.................................... ............... ............................... ............... ................ 15
Aspecto Humano........................... ............................... ................. ........................... 15
Gestão de pessoas. ................. ............... ............................... ............... ................ 15
Hacker ............................. ............................... ............... ............................... ........ 15
Cracker ............... ............................... ............... ................ ............... ................. .... 15

Defacer ............... ............................... ............... ................ ............... ................. .... 15


Phreaker ................ ............... ............................... ............... ............................... ... 15
Carders............................ ............................... ............... ............................... ........ 16
Aspecto Lógico (Equipamento e Rede) ............................. ............................... ........ 16
Senhas........................ ............... ............................... ................. ........................... 16
Criptografia. ............................. ............... ............................... ............... ................ 16
Perímetro de Rede................... ............... ............................... ............... ................ 16
Bastion Host ............... ............... ............................... ............... ................ ............. 17

4
Segurança em Redes

Honeypot ........................................... ............... ................ ............... ................. .... 17


Firewall ............... ............................... ............... ................ ............... ................. .... 17
Zona Desmilitarizada (DMZ) ............................. ................ ............... ................. .... 17
VPN ............... ............................... ............... ............................... ............... ........... 18
HIDS / NIDS....................................... ............... ................ ............... ................. .... 18
Aspecto Físico (Ambiente)................ ............... ............................... ............... ........... 19
Controle de Ativos.................. ................. ............................... ............... ................ 19
Controle de Acesso e Monitoramento ............... ................ ............... ................. .... 20
Normalização ................ ............... ............................... ............... ............................... ... 22
Definição ............................. ............................... ............... ............................... ........ 22
NBR ISO/IEC 17799........................................... ............... ............................... ........ 22
NBR ISO/IEC 27000........................................... ............... ............................... ........ 24
Sarbanes Oxley............... ................. ............... ............................... ............... ........... 27
Basiléia II................... ............... ............................... ............... ................. ................. 29
Órgãos de Informações sobre Segurança ............................ ............... ................. .... 30
Sistema de Gestão de Segurança da Informação ............................. ........................... 31
Política de Segurança............... ............................... ............... ................. ................. 31
Elaboração da Política de Segurança ............... ................ ............... ................. .... 31
Classificação da Informação ............................. ................ ............... ................. .... 32
Elaboração de normas e procedimentos para técnicos e usuários........................ 32
Definição de um plano de recuperação a desastres ou plano de contingência...... 33
Definição de sanções ou penalidades pelo não cumprimento da política.............. 33
Elaboração d e um Termo de Compromisso........................ ............................... ... 33
Comunicado da diretoria / presidência aos funcionários ............................... ........ 33
Divulgação da Política................... ............... ............................... ............... ........... 33
Implantação ............................. ............... ............................... ............... ................ 34
Revisão da Política ............... ............................... ............... ................. ................. 34
Ciclo PDCA ........................................... ............... ................ ............... ................. .... 34

5
Segurança em Redes

Levantamento de Ativos ............................. ............................... ............... ................ 35


Análise de Riscos ............................. ............... ............................... ................. ......... 35
Identificação dos recursos que os sistemas críticos dependem ............................ 35
Plano de Continuidade de Negócio (PCN)................ ................. ............... ................ 38
Plano de Contingência................. ............... ............................... ............... ................ 40
Plano de Recuperação de Desastres ................. ............... ............................... ........ 40
Backup ............... ................. ............................... ............... ............................... ........ 41
AUDITORIA DE SISTEMAS................. ............... ............................... ............... ........... 43
Equipe de Auditoria ............................... ............... ................ ............... ................. .... 43
Planejamento da auditoria....................... ............................... ............... ................ 44
Tipos de teste de auditoria.................. ................. ............... ............................... ... 44
Relatório de Auditoria...................................... ............... ............................... ........ 44
Técnicas de auditoria de sistemas de informação ................ ............... ................. .... 45
Técnicas comuns a outros tipos de auditoria ............................. ........................... 45
Test-deck ........................................... ............... ................ ............... ................. .... 45
Simulação paralela ............... ............................... ............... ................. ................. 46
Teste de recuperação ............................. ............................... ............... ................ 46
Teste de desempenho ............... ............................... ................. ........................... 46
Teste de estresse ........................................... ............... ............................... ........ 46
Teste de segurança ................. ............... ............................... ............... ................ 46
Teste de caixa preta................. ............... ............................... ............... ................ 46
Mapping, tracing e snapshot ............................. ................ ............... ................. .... 46
Teste de caixa branca..................................... ............... ............................... ........ 47
ITF – Integrated test facility..................... ............................... ............... ................ 47
Módulos de automação de tarefas de auditoria..................................................... 47
Método para Teste de Penetração (Penetration Test).................................................. 48
Metodologia OSSTMM ............................... ............................... ............... ................ 48
Análise de Vulnerabilidades x Pen-Test ............... ................ ............... ................. .... 52

6
Segurança em Redes

Aquisição de Alvos ............................................. ............... ............................... ........ 53


Engenharia Social........................................... ............... ............................... ........ 53
Footprinting...................... ............................... ............... ............................... ........ 54
Furto e Quebra de Senhas (Brute Force). ........................... ............................... ... 54
Varredura ............... ............................... ............... ................ ............... ................. .... 55
Enumeração ............... ............... ............................... ............... ................ ............. 55
Escaneamento de Portas (Port Scan) ............... ................ ............... ................. .... 56
Monitoramento Promíscuo (Sniffing)..................... ................. ............... ................ 60
Vulnerabilidades........................ ................. ............................... ............... ................ 60
Malwares ........................................... ............... ................ ............... ................. .... 60
Vírus ............... ................. ............................... ............... ............................... ........ 61
Worms ............................. ............................... ............... ............................... ........ 65
Spywares ........................................... ............... ................ ............... ................. .... 65
Adwares................. ............... ............................... ............... ................. ................. 65
Hijackers.......................... ............................... ............... ............................... ........ 66
Falhas em Sistemas (Rootkit, Exploits)..................... ................. ........................... 66
Estouro de Buffer (Buffer Overflow). ........................................... ................. ......... 67
Negação de Serviços – DoS / DDoS (Distribuited Deny of Service). ..................... 68
Levantamento de Vulnerabilidades ................. ............... ............................... ........ 68
Acesso não Autorizado..................... ............... ............................... ............... ........... 74
Backdoors.............. ............... ............................... ............... ............................... ... 74
Cavalo de Tróia...................... ................. ............................... ............... ................ 75
Spoofing................. ............... ............................... ............... ................. ................. 76
Sql Injection ............................. ............... ............................... ............... ................ 76
Cross-Site Scripting ................. ............... ............................... ............... ................ 77
Hardening ............................... ............................... ............... ............................... ........ 79
Definição ............................. ............................... ............... ............................... ........ 79
Instalando o SO.............. ............... ............................... ................. ........................... 80

7
Segurança em Redes

Senhas........................ ............... ............................... ................. ........................... 80


Mídia de Instalação............... ............................... ............... ................. ................. 80
Particionamento....................... ............... ............................... ............... ................ 80
Atualizações ............... ............... ............................... ............... ................ ............. 83
Gerenciando Usuários....................... ................. ............... ............................... ........ 87
Contas de Login....................... ............... ............................... ............... ................ 87
Permissões de acesso................... ................. ............... ............................... ........ 87
Gerenciando Serviços ................. ............... ............................... ............... ................ 91
Segurança por obscuridade (Banners).................................................................. 91
Controlando permissão de acesso a serviços ............................. ............... ........... 92
Modo enjaulado (chroot) ............................ ............... ................. ........................... 99
Gerenciando Sistema ............... ............................... ............... ................. ................. 99
Gerenciando arquivos................... ............... ............................... ............... ........... 99
Controlando processos ................. ............... ............................... ............... ..........102
Monitoramento.................. ................. ............... ................ ............... ................. ...104
Rede Sem Fio......................... ............................... ............... ............................... .......112
Definição ............................. ............................... ............... ............................... .......112
Tipos ................. ............................... ............... ............................... ............... ..........112
AD Hoc ............... ............................... ............... ................ ............... ................. ...113
Infraestruturada....................................................................................................113
Ameaças e Vulnerabilidades ................. ............... ................ ............... ................. ...114
Riscos Internos ............................. ............... ............................... ................. ........114
Riscos Externos......................... ............................... ................. ..........................114
Medidas de segurança ............................... ............................... ............... ...............116
Bluetooth ............................. ............................... ............... ............................... .......117
Dicas de Segurança.............................................................................................117
Firewall ................. ............................... ............... ............................... ............... ..........118
Definição ............................. ............................... ............... ............................... .......118

8
Segurança em Redes

Aplicação.......................................... ............... ............................... ............... ..........118


Tabelas ............................... ............................... ............... ............................... .......120
Filter............... ............................... ............... ............................... ............... ..........120
NAT ............... ............................... ............... ............................... ............... ..........120
Mangle......................... ................. ............... ............................... ............... ..........120
Regras............... ............................... ............... ............................... ............... ..........121
Um exemplo de firewall simples...........................................................................122
Proxy............................. ............... ............................... ............... ............................... ..126
Definição ............................. ............................... ............... ............................... .......126
Aplicação.......................................... ............... ............................... ............... ..........126
Tipos ................. ............................... ............... ............................... ............... ..........129
Autenticado....................... ................. ............... ................ ............... ................. ...129
Transparente ............................. ............................... ................. ..........................130
Monitoramento ............... ............... ............................... ............... ................ ............130
Sistemas de Detecção de Intruso (IDS) ......................................................................133
Definição ............................. ............................... ............... ............................... .......133
Características ............... ............... ............................... ............... ................ ............133
Aplicação.......................................... ............... ............................... ............... ..........134
Snort............................... ............... ............................... ................. ..........................134
Redes Virtuais Privadas (VPN) ................. ............... ................ ............... ................. ...137
Definição ............................. ............................... ............... ............................... .......137
Aplicação.......................................... ............... ............................... ............... ..........137
IPSEC.................... ............... ............................... ............... ............................... ..137
Criptografia ............................. ............................... ............... ............................... .......140
Definição ............................. ............................... ............... ............................... .......140
Aplicação.......................................... ............... ............................... ............... ..........140
Algoritmos Criptográficos ............................. ............................... ............... ..........140
Tecnologias de Encriptação de dados.....................................................................141

9
Segurança em Redes

Criptografia Simétrica...........................................................................................141
Algoritmos de Chave Simétrica............................................................................141
Criptografia Assimétrica ............................................ ................. ..........................142
Algoritmos de Chave Assimétrica.........................................................................142
Certificação Digital ............................... ............... ............................... ............... ..........144
Definição. ............... ............................... ............... ................ ............... ................. ...144
Aplicação.......................................... ............... ............................... ............... ..........144
Infraestrutura de Chave Pública (PKI)..................................................................144
Assinatura Digital.....................................................................................................145
Algoritmos para Geração de Assinatura Digital....................................................145
Autenticação ................. ............... ............................... ............... ................. ................147
Definição ............................. ............................... ............... ............................... .......147
Aplicação.......................................... ............... ............................... ............... ..........147
Arquitetura Triple A (AAA); ............................ ............... ................. ..........................147
Kerberos ................ ............... ............................... ............... ............................... ..148
RADIUS ................. ............... ............................... ............... ................. ................149
TACACS ................ ............... ............................... ............... ............................... ..149

10
Segurança em Redes

11
Segurança em Redes

Fundamentos de Segu ranç a


em Redes

Introdução
Cada vez mais pessoas e empresas estão se conectando a Internet, quer seja para
compartilhar informações ou mesmo para disponibilizar serviços.
O uso da Internet já é considerado indispensável para as pessoas civilizadas. Estar
“conectado” indica estar disponível, estar atualizado, permite encurtar distâncias e
ganhar tempo.
A Internet impôs uma nova forma de existência, VIRTUAL. Num mundo onde tudo é
contituído
acesso. de informações digitalizadas que estão disponíveis de qualquer ponto de
Devemos considerar que inicialmente a Internet foi desenvolvida sem levar em
consideração a segurança das informações que transportava, pois a preocupação na
época era somente com o compartilhamento das mesmas.
Além da fragilidade técnica da Internet, devemos considerar as vulnerabilidades dos
sistemas operacionais, além ainda do despreparo e desconhecimento dos usuários.
Viver num mundo digital implica em se ter os mesmos cuidados do mundo REAL, e é
neste ponto que muitas pessoas e empresas são prejudicadas.
Você sabia?
 Especialistas calculam que 50 novas vulnerabilidades são descobertas por
semana em programas de computador.
 As senhas fáceis de adivinhar são as principais culpadas pelas invasões em
redes domésticas e corporativas.
 Há poucos anos, invasores estiveram perto de tomar o controle total dos
computadores da companhia de energia da Califórnia, o que lhes daria o
poder de interromper o fornecimento de eletricidade em toda a cidade. Eles
"pesquisaram" nos micros por pelo menos 17 dias sem que nenhum
funcionário suspeitasse. A invasão de sites e servidores ainda não é crime
no Brasil.

12
Segurança em Redes

Segurança
A segurança é a condição de estar protegido de perigo ou perda.
Segurança de Informação está relacionada com métodos de proteção aplicados sobre
um conjunto de dados no sentido de preservar o valor que possui para um indivíduo ou
uma organização.

São características básicas da segurança da informação os aspectos de


confidencialidade, integridade e disponibilidade, não estando restritos somente a
sistemas computacionais, informações eletrônicas ou sistemas de armazenamento.
O conceito se aplica a todos os aspectos de proteção de informações e dados.

Garantias
Confidencialidade
É a propriedade de que a informação não estará disponível ou divulgada a indivíduos,
entidades
garantia doouresguardo
processos sem autorização. Em pessoalmente
outras palavras,
em confidencialidade
éa
das informações dadas confiança e proteção
contra a sua revelação não autorizada.

Autentic idade
Entende-se por autenticidade a certeza absoluta de que um objeto (em análise) provém
das fontes anunciadas e que não foi alvo de mutações ao longo de um processo. Na
telecomunicação, uma mensagem será autêntica se for, de fato, recebida na íntegra,
diretamente do emissor.
A autenticação de entidade provê a checagem da identidade afirmada em qualquer
período de tempo.

Integridade
Em segurança da informação integridade significa ter a disponibilidade de informações
confiáveis, ou seja, certifica-se que as mensagens são recebidas como enviadas.
Um serviço de integridade orientado a conexão deve certificar que não existam
duplicatas, inserções, deleções ou modificações.
Um serviço de integridade não orientado a conexão trata somente da mensagem
individual.

Disponibilidade

13
Segurança em Redes

Prover de maneira ininterrupta accesso a informações e recursos.


Propriedade que garante que a informação esteja sempre disponível para o uso
legítimo, por aqueles usuários autorizados pelo proprietário da informação.

Aceite (não repúdi o)


Qualidade de determinada relação através da qual as partes são protegidas de uma
alegação
efeitos de inexistência,
legais nos contratosofeitos
que por
representa
meio doque a figura está presente para produzir
computador.

Problemas
Riscos
É o resultado objetivo da combinação entre a probabilidade de ocorrência de um
determinado evento e o impacto resultante.

Falhas
Vunerabilidade

A vulnerabilidade na computação significa ter brecha em um sistema computacional,


também conhecida como bug.
Vulnerabilidade é definida como uma falha no projeto ou implementação de um
software ou sistema operacional, que quando explorada por um atacante resulta na
violação da segurança de um computador, existem casos onde um software ou sistema
operacional instalado em um computador pode conter uma vulnerabilidade que permite
sua exploração remota, ou seja, através da rede.
Vírus

Vírus é um programa capaz de infectar outros programas e arquivos de um


computador.
Para realizar a infecção, o vírus embute uma cópia de si mesmo em um programa ou
arquivo, que quando executado também executa o vírus, dando continuidade ao
processo de infecção.
Normalmente o vírus tem controle total sobre o computador, podendo fazer de tudo, até
alterar ou destruir programas e arquivos do disco.
Para que um computador seja infectado por um vírus, é preciso que de alguma maneira
um programa previamente infectado seja executado.

Ameaças

14
Segurança em Redes

Uma ameaça é uma pessoa, coisa, evento ou idéia que apresenta algum perigo para
um bem (em termos de confidencialidade, integridade, disponibilidade ou uso legítimo).

Ataques
Um ataque é a concretização de uma ameaça de segurança que pode comprometer a
segurança de um sistema de informação.

Aspect o Humano
Gestão de pessoas.
A gestão de pessoas é um ponto fundamental na segurança da informação, geralmente
constituem o elo mais fraco da segurança da informação em ambiente corporativo.
Não adianta nada ter uma equipe bem treinada tomando conta dos servidores, se o
resto dos funcionários estiverem suscetíveis a ataques como os de engenharia social,
que são comuns nestes casos.
Na gestão de pessoas deve se estabelecer todo um processo disciplinar e
conscientização que deve atingir a empresa como um todo desde o dono da empresa
até o faxineiro, usando metodologias diferentes para lidar com cada nível da hierarquia.

Hacker
A palavra surgiu nos anos 50 dentro do MIT e deriva do termo hack, usada para definir
atividades de alta tecnologia com os quais alguns estudantes se ocupavam. Alguém
que, deliberadamente, ganha acesso a outros computadores, freqüentemente sem
conhecimento ou permissão do usuário. Hackers maliciosos fazem isso para roubar
informação valiosa, atrapalhar serviços ou causar outros danos.

Cracker

São os hackers
"quebrando" tudo,mais radicais.
a intenção Eles pirateiam
é sabotar ao máximoprogramas
os grandese servidores.
penetram em sistemas

Defacer
Pessoas mal intencionadas que passam o tempo tentando desfigurar a página inicial de
sites conhecidos.

Phreaker
É o nome dado as pessoas ou crackers de Telefonia (Phone+Freak ou Phreak).

15
Segurança em Redes

Carders
São aqueles Hackers especialistas em roubos de número de cartões de crédito e, é
obvio, o uso destes números fazendo compras pela Internet.

Aspect o Lógico (Equipamento e Rede)


Senhas
Uma senha (password) na Internet, ou em qualquer sistema computacional, serve para
autenticar o usuário, ou seja, é utilizada no processo de verificação da identidade do
usuário, assegurando que este é realmente quem diz ser.
Se você fornece sua senha para uma outra pessoa, esta poderá utilizá-la para se
passar por você.
Uma boa senha deve ter pelo menos oito caracteres (letras, números e símbolos),
também não pode ser criada com informações relacionadas dirtamente com seu
utilizador, ou com o sistema onde está sendo empregada.

Utilizar senhas
atenuar diferentes,
os prejuízos uma caso
causados, para alguém
cada local, é extremamente
descubra importante,
uma de suas senhas. pois pode

Criptografia.
Criptografia é a ciência e arte de escrever mensagens em forma cifrada ou em código.
É parte de um campo de estudos que trata das comunicações secretas, usadas, dentre
outras finalidades, para:

 autenticar a identidade de usuários;


 autenticar e proteger o sigilo de comunicações pessoais, de transações
comerciais e bancárias;
 proteger a integridade de transferências eletrônicas de dados ou fundos.

Uma mensagem
somente codificada
aquele que enviou por um método
e aquele de criptografia
que recebeu deve
devem ter ser privada,
acesso ou seja,
ao conteúdo da
mensagem.
A mensagem deve poder ser assinada, ou seja, a pessoa que a recebeu deve poder
verificar se o remetente é mesmo a pessoa que diz ser e ter a capacidade de identificar
se uma mensagem pode ter sido modificada.

Perímetro de Rede
O termo rede de perímetro refere-se a um segmento de rede isolado no ponto em que
uma rede corporativa alcança a Internet.

16
Segurança em Redes

As redes de perímetro destinam-se a criar um limite que permite a separação do tráfego


entre redes internas e externas. Com este limite, é possível categorizar, redirecionar,
restringir e controlar o tráfego da rede de uma empresa.

Bastion Host
É o nome que se dá a um servidor dedicado exposto simultaneamente a Internet e a
rede interna.
Por ser mais suscetível a sofrer ataques, este servidor precisa ser configurado de forma
a diminuir ao máximo qualquer tipo de vulnerabilidade.
Nomalmente é configrado para prover um único serviço, vizando limitar as brechas de
segurança.

Honeypot
Ferramenta de estudos de segurança, onde sua função principal é colher informações
do atacante.
Em redes empresariais serve como elemento de distração ou dispersão, uma vez que
qualquer trafego suspeito é redirecionado para ele. As configurações deste
equipamento são as mais rígidas e os serviços são muito limitados.

Firewall
É o nome dado ao dispositivo de uma rede de computadores que tem por função
regular o tráfego de rede entre redes distintas e impedir a transmissão e/ou recepção
de dados nocivos ou não autorizados de uma rede a outra.
O termo inglês firewall faz alusão comparativa da função que desempenha para evitar o
alastramento de dados nocivos dentro de uma rede de computadores à parede corta-
fogo (firewall), que evita o alastramento de incêndios pelos cômodos de uma edificação.

Zona Desmil itarizada (DMZ)


É uma sigla para de DeMilitarized Zone ou "zona desmilitarizada", em português.
O termo possui uma srcem militar, significando a área existente entre dois inimigos em
uma guerra.
Também conhecida como Rede de Perímetro, a DMZ é uma pequena rede situada
entre uma rede confiável e uma não confiável.
A função de uma DMZ de perímetro é manter todos os serviços que possuem acesso
externo (HTTP, FTP, etc) separados da rede local limitando o dano em caso de
comprometimento de algum serviço nela presente por algum invasor.
A configuração pode ser feita a partir da segmentação da rede interna, através da
aplicação de um Firewall com regras distintas para acesso externo a rede interna e a
DMZ.

17
Segurança em Redes

Por conter servidores de acesso público, o Firewall deve ser configurado com regras
menos restritivas para acesso a DMZ e com regras mais restritivas para acesso a rede
interna.
Esta técnica pode ser empregada como uma DMZ interna com o intuito de controlar o
acesso aos servidores internos da empresa, neste caso as regras de Firewall são
aplicadas para inibir o acesso externo e restringir o acesso interno somente aos
serviços necessários.

VPN
Uma Rede Privada Virtual (Virtual Private Network - VPN) é uma rede de comunicações
privada normalmente utilizada por uma empresa ou um conjunto de empresas,
construída em cima de uma rede de comunicações pública (como por exemplo, a
Internet). O tráfego de dados é levado pela rede pública utilizando protocolos padrão,
não necessariamente seguros.
VPNs seguras usam protocolos de criptografia por tunelamento que fornecem a
confidencialidade, autenticação e integridade necessárias para garantir a privacidade
das comunicações requeridas. Quando adequadamente implementados, estes
protocolos podem assegurar comunicações seguras através de redes inseguras.

HIDS / NIDS
Sistema de detecção de intrusos ou simplesmente IDS (Intrusion detection system)
refere-se a meios técnicos de descobrir quando um sistema está sendo violado ou
acessado de forma não autorizada, podedo indicar a ação hacker ou até mesmo
funcionários mal intencionados.
Networ k-based Intrus ion Detecti on Syst em (NIDS)

São instalados em servidores ou appliances que monitoram o tráfego do segmento de


rede.
Estes equipamentos são responsáveis por analisar possíveis ataques contra qualquer
equipamento localizado neste segmento de rede.
A análise pode ser de dois tipos: realizada através de assinaturas de ataques
conhecidos, onde o conteúdo dos pacotes é comparado com uma base de dados, que
deve ser constantemente atualizada, ou baseada na decodificação e verificação de
protocolos de rede.
Host-based Instrusion Detection System (HIDS)

Este tipo de IDS é instalado em um host que será alertado sobre ataques ocorridos
contra a própria máquina.
O HIDS irá avaliar a segurança deste host como base em arquivos de logs de Sistema
Operacional, logs de acesso e logs de aplicação.
O uso desta técnica é muito importânte, pois fornece segurança a tipos de ataques que
o firewall e um IDS network-based não detectam.

18
Segurança em Redes

Aspect o Físico (Ambiente)


É muito comum a seguinte visão dos executivos em relação à segurança das
informações em sua empresa: "Segurança significa corrigir as falhas no meu ambiente
de tecnologia. Precisamos estar com o antivírus atualizado...".
A associação da segurança com a tecnologia é bastante utilizada pelo simples fato de
que, realmente, a área de TI da empresa é a responsável por todo o suporte e a
manutenção dos processos de negócio existentes. Várias aplicações e transações são
executadas através de plataformas que são mantidas e suportadas pela área de TI.
Mas a segurança não envolve somente o ambiente de tecnologia. Existe uma outra
preocupação, que normalmente é tratada com uma certa indiferença, que é a
segurança física da empresa.
As ameaças internas podem ser consideradas como o risco número um à segurança
dos recursos computacionais. Um bom programa de segurança física é o passo inicial
para a defesa da corporação no sentido de proteger as suas informações contra
acessos indevidos.
Uma lista das ameaças de segurança física poderia conter os seguintes itens:

 Incêndio (fogo e fumaça);



Água (vazamentos, corrosão, enchentes);
 Tremores e abalos sísmicos;
 Tempestades, furacões;
 Terrorismo;
 Sabotagem e vandalismo;
 Explosões;
 Roubos, furtos;
 Desmoronamento de construções;
 Materiais tóxicos;
 Interrupção de energia (bombas de pressão, ar-condicionado, elevadores);

Interrupção de comunicação (links, voz, dados);
 Falhas em equipamentos;
 Outros.

Cont role de Ativos


Segurança de um sistema deve prever a sua integridade física, alocando os
equipamentos em locais apropriados, de acesso restrito e controlados.
Os cuidados no controle de ativos devem considerar no mínimo os seguintes itens:

 Adequação do equipamento ao uso,

19
Segurança em Redes

 Reposição imediata de equipamentos e peças,


 Condições do ambiente que onde se concentram os equipamentos,
 Manutenção preventiva e periódica,
 Adoção de uma política de backup eficiente e eficaz,
 Sistema de abastecimento elétrico alternativo,
 Sistema de refrigeração eficiente.

Cont role de Acesso e Monitoramento


O acesso ao CPD deve ser restrito ao pessoal autorizado, para tanto as portas devem
permanecer trancadas, e devem ser implementados controles de acesso, que registrem
quem entrou no CPD, horário e permanência.
Algumas opções de controle de acesso, são: crachas eletrônicos, dispositivos
biométricos, trancas manuais usadas em conjunto com outros controles, como por
exemplo lista de permanência.
O acesso de prestadores de serviços, ou de qualquer pessoa que não esteja autorizada
a acessar e permanecer no CPD, deve ser controlado e registrado, essas pessoas
sempre devem estar acompanhadas de um funcionário do CPD.

O uso edefora,
dentro câmeras de às
próximo monitoramento é importante para se monitorar o que acontece
entradas do CPD.

Biometria
A biometria é o estudo das características mensuráveis do ser humano que possibilitam
o reconhecimento de um indivíduo. A impressão digital, íris, retina, geometria da mão,
voz, face e velocidade de digitação são características que permitem a identificação de
usuários. Esta abordagem confirma a unicidade e estabilidade destas características, o
que permite o reconhecimento ao longo da vida.
A identificação biométrica procura trabalhar como a mente humana. O reconhecimento
das pessoas é realizado por meio da comparação das características biométricas, cujo
índice de similaridade vai determinar o sucesso da identificação, ou seja, se as
características biométricas apresentadas são muito parecidas com as armazenadas,
neste caso o sistema confirma a identidade do usuário.
Este mecanismo está sujeito à ocorrência de três situações: identificação com sucesso,
o falso-positivo e o falso-negativo.
Exemplificando, quando se atende o telefone há grandes chances de se identificar o
interlocutor pela voz e em algumas vezes errar no reconhecimento. Quando ocorre o
acerto, este advém do fato da voz do interlocutor possuir muitas características em
comum com a correspondente já memorizada, neste caso temos uma identificação com
sucesso.
Quando ocorre uma troca na identificação do interlocutor estamos diante de um fato
denominado falso-positivo. Por fim, quando o interlocutor já é conhecido mas não é
prontamente identificado estamos diante de um fato denominado falso-negativo.

20
Segurança em Redes

Na observação de uma carteira de identidade é possível identificar rapidamente seu


proprietário pela foto mas não pela impressão digital que requer um complexo processo
de análise comparativa que a mente humana não está acostumada a fazer. No entanto,
um processo automatizado de reconhecimento biométrico dos traços digitais pode ser
altamente confiável, rápido e economicamente viável.
Cada tecnologia de identificação possui seu próprio mecanismo de captura de dados.
Um scanner de impressão digital é um dispositivo de dimensões reduzidas com as
mesmas funcionalidades de scanner de mesa, porém, especializado na captura de
digitais humanas.
O mesmo acontece com a captura da imagem do olho para o reconhecimento da íris
que é realizado por uma câmera de vídeo especialmente projetada para trabalhar com
maior sensibilidade capaz de registrar todos os detalhes de um olho.
Existem atualmente dois métodos de reconhecimento: reconhecimento 1:1 e
reconhecimento 1:N. O primeiro aplica-se às senhas, onde o usuário se identifica por
meio de um código alfanumérico e apresenta sua identificação biométrica, restando ao
sistema comparar as características desta com aquelas já armazenadas.
O método de reconhecimento 1:N, é pouco utilizado devido a sua alta complexidade
pois o usuário deverá ser identificado apenas por suas características biométricas
(impressão digital, íris, voz, etc,) a partir de inúmeras comparações que resultam na
escolha de um conjunto já armazenado e que mais se aproxima daquele capturado.

A identificação
forma, abiométrica
extraçãoleva
de em
contadocaracterísticas dos para
seresforjar
na presença de vida.
Desta partes corpo humano uma presença
inexistente não obterá êxito numa possível fraude, portanto esta tecnologia pode ser
aplicada para permitir ou negar acesso físico a ambientes protegidos além de controlar
acessos lógicos a sites de serviços eletrônicos.

21
Segurança em Redes

Normalização

Definição
Ao longo da história, desde a mais remota antigüidade, o ser humano vem buscando
controlar as informações que julga importantes.
Tradicionalmente, as organizações dedicam grande atenção para com seus ativos
tangíveis físicos e financeiros, mas relativamente pouca atenção aos ativos de
informação que possuem.
Em anos recentes, contudo, a informação assumiu importância vital para manutenção
dos negócios, marcados pela dinamicidade da economia globalizada e
permanentemente on-line, de tal forma que, atualmente, não há organização humana
que não dependente da tecnologia de informações, em maior ou menor grau, de forma
que o comprometimento do sistema de informações por problemas de segurança pode
causar grandes prejuízos ou mesmo levar a organização a falência.
Visando minimizar esses riscos, a ISO (International Standartization Organization),
publicou uma norma internacional para garantir a segurança das informações nas
empresas.
A ABNT (Associação Brasileira de Normas Técnicas), operando em sintonia com a ISO
e atenta as necessidades nacionais quanto a segurança da informação, disponibilizou o
projeto na versão brasileira da norma ISO para consulta pública e posterior votação e
publicação.
As normas ISO e ABNT são o resultado de um esforço internacional que consumiu
anos de pesquisa e desenvolvimento para se obter um modelo de segurança eficiente e
universal.

NBR ISO/IEC 17799


O esforço no qual resultaram a ISO17799 e a Norma ABNT remontam a 1987 quando o
departamento de comércio e indústria do Reino Unido (DTI) criou um centro de
segurança de informações, o CCSC (Commercial Computer Security Centre) que
dentre suas atribuições tinha a tarefa de criar uma norma de segurança das
informações para companhias britânicas que comercializavam produtos para segurança

22
Segurança em Redes

de TI (Tecnologia da Informação) através da criação de critérios para avaliação da


segurança.
Outro objetivo do CCSC era a criação de um código de segurança para os usuários das
informações. Com base nesse segundo objetivo, em 1989 foi publicada a primeira
versão do código se segurança, denominado PD0003 - Código para Gerenciamento da
Segurança da Informação. Em 1995, esse código foi revisado e publicado como uma
norma britânica (BS), a BS7799:1995. Em 1996, essa norma foi proposta ao ISO para
homologação mas foi rejeitada.
Uma segunda parte desse documento foi criada posteriormente e publicada em
novembro de 1997 para consulta pública e avaliação. Em 1998, esse documento foi
publicado como BS7799-2:1998 e, após revisado, foi publicado junto com a primeira
parte em abril de 1999 como BS7799:1999. Em 1998, a lei britânica, denominada “Ato
de Proteção de Dados”, recomendou a aplicação da norma na Inglaterra, o que viria a
ser efetivado em 1o de março de 2000.
Em outubro de 2000, na reunião do comitê da ISO em Tóquio, a norma foi votada e
aprovada pela maioria dos representantes. Os representantes dos países do primeiro
mundo, excetuando a Inglaterra, foram contrários à homologação, mas, sob votação,
venceu a maioria, e a norma foi homologada como ISO/IEC 17799:2000 em 01 de
dezembro de 2000.
Com a homologação, diversos países, incluindo o Brasil, estão criando suas próprias
normas nacionais de segurança de dados, baseados na norma ISO. Ao mesmo tempo,
está surgindo a Certificação de Segurança ISO 17799 que empresas e organizações
podem obter ao aplicar a norma, assim como, após a homologação da norma brasileira,
surgirá a respectiva certificação para empresas nacionais.
Objetivos e Abrangência

O objetivo fundamental da norma ISO e da norma brasileira, nela baseada, é assegurar


a continuidade e minimizar o dano empresarial, prevenindo e minimizando o impacto de
incidentes de segurança. (ISO/IEC 17799:2000).
Segurança da Informação conforme definido pela ISO/IEC 17799:2000, é a proteção
contra um grande número de ameaças às informações, de forma a assegurar a
continuidade do negócio, minimizando danos comerciais e maximizando o retorno de
investimentos e oportunidades. A segurança da informação é caracterizada pela
preservação dos seguintes atributos básicos:

 Confidencialidade: segurança de que a informação pode ser acessada


apenas por quem tem autorização.
 Integridade: certeza da precisão da informação.
 Disponibilidade: garantia de que os usuários autorizados tenham acesso a
informação e aos recursos associados, quando necessário.
A preservação desses atributos, constitui no paradigma básico da Norma Internacional
para Gerenciamento da Segurança da Informação, a ISO17799 e de toda a ciência da
Segurança da Informação.
A ISO17799 é bem abrangente, pretendendo contemplar todos os aspectos da
segurança da informação. Nesse sentido, divide-se em 12 capítulos ou partes, cada
qual abordando um aspecto da segurança da informação.

23
Segurança em Redes

A norma brasileira segue a mesma estrutura de capítulos, itens e controles. Os


Capítulos que compõem a norma são os seguintes:

 Objetivo
 Termos e definições
 Política de segurança
 Segurança organizacional

Classificação e controle dos ativos de informação
 Segurança em pessoas
 Segurança ambiental e física
 8-Gerenciamento das operações e comunicações
 Controle de acesso
 Desenvolvimento de sistemas e manutenção
 Gestão de continuidade do negócio
 Conformidade
A ISO17799 cobre os mais diversos tópicos da área de segurança, possuindo mais de
100 controles que devem ser atendidos para garantir a segurança das informações de
uma empresa, de forma que a obtenção da certificação pode ser um processo
demorado e muito trabalhoso, consistindo num desafio para as empresas.

NBR ISO/IEC 27000


A norma ISO 27001:2005 é a evolução natural da norma BS7799-2:2002 um padrão
britânico que trata da definição de requisitos para um Sistema Gestão de Segurança da
Informação. O padrão foi incorporado pela The International Organization for
Standardization (ISO), Instituição internacional com sede na Suíça que cuida do
estabelecimento de padrões internacionais de certificação em diversas áreas.
O Reino Unido é um grande provedor de regras e padrões, pela tradição de precursor
das atividades
exemplo de padronização
de normas BS que foramdesde a Revolução
incorporadas Industrial.
pela ISO: BS5750Podemos
que viroucitar
ISO como
9000
(Qualidade) e BS7550 que virou ISO14000 (Meio Ambiente).
A norma ISO 27001:2005 é a norma BS7799-2:2002 revisada, com melhorias e
adaptações, contemplando o ciclo PDCA de melhorias e a visão de processos que as
normas de sistemas de gestão já incorporaram. A revisão foi feita por um comitê técnico
de âmbito internacional, formado pela ISO e pelo IEC (The International Eletrotechnical
Comission) o ISO/IEC JTC 1, sub-comitê SC 27, que através de um trabalho conjunto
que ocorreu desde 2000 efetuou as alterações que são a compilação de diversas
sugestões que os membros deste comitê apresentaram ao longo do trabalho, cujas
reuniões de discussão e apresentação dos resultados ocorreram em diversos países
até o primeiro semestre de 2005.

24
Segurança em Redes

Acompanhando o processo de evolução histórica, pode-se observar que a norma


ISO/IEC 17799, que é a evolução da BS7799-1, incorporada pela ISO em 2000,
também foi revisada, e ambas as normas, a ISO/IEC 27001 e a ISO/IEC 17799, já
estão alinhadas. O próximo passo será a conversão da ISO/EC 17799:2005 em
ISO/IEC 27002, previsto para 2007, formando assim a família ISO/IEC 27000 que
tratará aspectos mais amplos de Segurança da Informação.
As mudanças mais relevantes na migração para norma ISO/IEC 27001 ocorreram na
estrutura do SGSI (sistema de gestão de segurança da informação), quando são
destacados
gestão aspectos edenoauditoria
de segurança Anexo Ainterna e indicadores
que passou a ter na de desempenho
ISO/IEC 27001 11doseções,
sistemapois
de
foi incluída a seção Gestão de Incidentes de Segurança da Informação:

 Política de Segurança da Informação


 Organizando a Segurança da Informação
 Gestão de Ativos
 Segurança em Recursos Humanos
 Segurança Física e do Ambiente
 Gerenciamento das Operações e Comunicações
 Controle de Acessos
 Aquisição, Desenvolvimento e Manutenção de Sistemas de Informação
 Gestão de Incidentes de Segurança da Informação
 Gestão da Continuidade do Negócio
 Conformidade
Como forma de dar suporte à implantação da ISO/IEC 27001:2005, o Comitê que trata
da segurança da informação decidiu pela criação de uma família de normas sobre
gestão da segurança da informação. Esta família foi batizada pela série 27000.
Na última reunião do Comitê da ISO IEC, realizada em novembro passado em Kuala
Lumpur, Malásia, foram aprovadas as seguintes normas e projetos de norma da nova
família, com os estágios de desenvolvimento de uma norma ISO IEC como
apresentados a seguir:
NÚMERO: ISO IEC NWIP 27000
TÍTULO: Information Security Management Systems - Fundamentals and Vocabulary.
APLICAÇÃO: Este projeto de norma tem como objetivo apresentar os principais
conceitos e modelos relacionados com segurança da informação.
SITUAÇÃO: Este projeto de norma encontra-se ainda nos primeiros estágios de
desenvolvimento, denominado de NWIP-New Work Item Proposal. A previsão para
publicação como norma internacional é 2008-2009.

25
Segurança em Redes

NÚMERO: ISO IEC 27001:2005


TÍTULO: Information Security Management Systems- Requirements
APLICAÇÃO: Esta norma é aplicável a qualquer organização, independente do seu
ramo de atuação, e define requisitos para estabelecer, implementar, operar, monitorar,
revisar, manter e melhorar um Sistema de Gestão de Segurança da Informação. A ISO
IEC 27001 é a norma usada para fins de certificação e substitui a norma Britânica BS
7799-2:2002. Portanto, uma organização que deseje implantar um SGSI deve adotar
como base a ISO IEC 27001.
SITUAÇÃO: Norma aprovada e publicada pela ISO em Genebra, em 15.10.2005. No
Brasil, a ABNT publicará como Norma Brasileira NBR ISO IEC 27001 no primeiro
trimestre de 2006.
NÚMERO: ISO IEC 27002:2005

TÍTULO: Information Technology - Code of practice for information Security


Management
APLICAÇÃO: Esta norma é um guia prático que estabelece diretrizes e princípios gerais
para iniciar, implementar, manter e melhorar a gestão de segurança da informação em
uma organização. Os objetivos de controle e os controles definidos nesta norma têm
como finalidade atender aos requisitos identificados na análise/avaliação de riscos.

SITUAÇÃO: Norma
Brasil, a ABNT aprovada
publicou comoe Norma
publicada pela ISO
Brasileira emISO
NBR Genebra, em 15.06.2005.
IEC 17799 no dia 24 No
de
agosto de 2005.
NÚMERO: ISO IEC 1 st WD 27003

TÍTULO: Information Security Management Systems-Implementation Guidance.


APLICAÇÃO: Este projeto de norma tem como objetivo fornecer um guia prático para
implementação de um Sistema de Gestão da Segurança da Informação, baseado na
ISO IEC 27001.
SITUAÇÃO: Este projeto de norma encontra-se em um estágio de desenvolvimento,
denominado de WD-Working Draft. A previsão para publicação como norma
internacional é 2008-2009.

NÚMERO: ISO IEC 2nd WD 27004


TÍTULO: Information Security Management-Measurements.
APLICAÇÃO: Este projeto de norma fornece diretrizes com relação a técnicas e
procedimentos de medição para avaliar a eficácia dos controles de segurança da
informação implementados, dos processos de segurança da informação e do Sistema
de Gestão da Segurança da Informação.
SITUAÇÃO: Este projeto de norma encontra-se em um estágio onde vários comentários
já foram discutidos e incorporados ao projeto. A previsão para publicação como norma
internacional é 2008-2009.
NÚMERO: ISO IEC 2nd CD 27005

26
Segurança em Redes

TÍTULO: Information Security Management Systems- Information Security Risk


Management.
APLICAÇÃO: Este projeto de norma fornece diretrizes para o gerenciamento de riscos
de segurança da informação.
SITUAÇÃO: Este projeto de norma já se encontra em um estágio mais avançado, pois
vem sendo discutido há mais de dois anos. A previsão para publicação como norma
internacional é 2007.

Sarb anes Oxl ey


Vem de longe a tradição norte-americana em ressaltar a figura do acionista minoritário
do mercado de capitais. Esta tradição foi fortemente abalada com os problemas
contábeis e financeiros recentes verificados em empresas como Enron, Worldcom,
Tyco e Arthur Andersen, consideradas modelos de administração e da força do
capitalismo.
O escopo da legislação federal "The U.S. Public Company Accounting Reform and
Investor Protection Act of 2002", mais conhecida como Sarbanes-Oxley Act of 2002, se
insere no âmbito da governança corporativa. Rígidos parâmetros legais foram impostos
às companhias de capital aberto e suas subsidiárias cujas ações são negociadas em
Bolsas (NYSE e Nasdaq), o que inclui algumas corporações estrangeiras que negociam
ADRs1 naquele país, alçados à força de lei.
A partir da promulgação da Sarbanes-Oxley, o que era recomendável passa a ser
obrigação legal: a boa governança e a ética nos negócios de companhias com
presença no mercado mobiliário.
Em suas 1.107 seções, a Sarbanes-Oxley imputa responsabilidades jamais vistas
perante os diretores de corporações, que vão desde o pagamento de multas (que
podem chegar a U$ 5 milhões) ao cumprimento de longas penas de reclusão, sanções
estendidas aos auditores que atestarem balanços com números fraudulentos.

Ao regular a atividade de contabilidade e auditoria das empresas de capital aberto, a


Sarbanes-Oxley reflete diretamente seus dispositivos nos sistemas de tecnologia da
informação. Impossível separar-se processos de negócios e tecnologia no panorama
corporativo atual.
A Seção 404 da lei é o principal foco de atenção das empresas neste particular, por
trazer os mandamentos sobre os controles de processos internos e sistemas contábeis.
Esta Seção determina uma avaliação anual dos controles e processos internos para a

1 American Depositary Receipts, recibos de depósito americano de ações de empresas


estrangeiras, não negociáveis no país de srcem.

27
Segurança em Redes

realização de relatórios financeiros, com a obrigação de emissão de relatório, a ser


encaminhado à SEC2 que ateste estes parâmetros.
Este relatório deve conter:

 Atestado de responsabilidade dos administradores da empresa e


manutenção da estrutura dos controles internos e demais procedimentos;
 Avaliação e relatório de cumprimento de metas, ao final de cada ano fiscal,
da eficácia dos procedimentos internos adotados para emissão de relatórios
financeiros;
 Declaração que o auditor independente da companhia atestou a avaliação
dos procedimentos elaborada pela administração.
Os tais "processos" e "controles" internos se aplicam em sentido amplo, vale dizer, todo
e qualquer procedimento administrativo que resulte em números passíveis de auditoria
(a lei descreve quais são os procedimentos não auditáveis).
Assim temos, por força da Sarbanes-Oxley, a obrigatoriedade da observância de
práticas de segurança de redes e critérios rígidos para uso de aplicações terceirizadas
por companhias que se encontram ao alcance da presente lei.
Invasões em sistemas, ataques, vírus, roubo de dados, fraudes de senhas e demais
ameaças à segurança das informações da companhia podem, se não houver prova
suficiente de adoção de medidas preventivas coordenadas com os parâmetros da
Seção 404, implicar em responsabilidade direta dos administradores, surgindo daí
possibilidades concretas de sanções civis e penais.
Verificamos dois pontos de preocupação imediata no que toca o uso da tecnologia da
informação inserido no âmbito da Sarbanes-Oxley:

 Segurança de sistemas de informação - a adequação do conteúdo da


Sarbanes-Oxley deve se dar entre toda a cadeia de comunicação da
empresa, principalmente nos recursos concernentes a informações
financeiras.
 Sistemas de ERP3, aplicativos contábeis, sistemas de CRM4, Supply Chain
Management5, em conjunto com as demais aplicações de comunicação,
banco de dados e armazenamento de informações precisam estar em
sintonia com as regras adotadas na legislação.

Em contínuo, a atenção do administrador deve se estender à utilização de todo e


qualquer recurso tecnológico da empresa por parte dos funcionários, e as Políticas de
Segurança da Informação adotadas devem ser adaptadas ao teor da Sarbanes-Oxley.

2 Security Exchange Comission, órgão regulador das empresas de capital aberto dos
EUA.
3 Enterprise Resource Planning, sistemas de gestão.
4 Customer Relationship Management, sistemas de relacionamento com clientes.
5 Sistemas de gerenciamento de cadeia de suprimentos.

28
Segurança em Redes

Especial atenção também deve ser conferida ao outsourcing6. Nos Estados Unidos, a
chamada cybersecurity liability7 começa a ter evidência entre os executivos financeiros.

Controle de registros - um repositório de registros de procedimentos adequado é


fundamental para o sono tranqüilo dos diretores e presidentes do conselho de
administração das corporações. Estes registros devem ser tanto tangíveis (papel) ou
intangíveis (arquivos e demais mídias), e a redundância em sistemas de backup é
altamente recomendada.

No bojo dae lei


destruição encontram-se
perda disposições
de documentos que penalizam
e registros, bem comoseveramente a falsificação,
prevêem a observação de
prazos para seu armazenamento após o fechamento de cada exercício fiscal.
A revisão de processos, reestruturação de conselhos e adoção de políticas que
disseminem o conceito de governança corporativa buscado pelo legislador no caso de
companhias sob as asas da lei batizada de Sarbanes-Oxley são medidas obrigatórias e
urgentes.
Os fornecedores de soluções de tecnologia da informação ganham novas
possibilidades para desenvolvimento de ferramentas que auxiliem os administradores
neste particular, uma vez que todos os processos empresariais internos, hoje,
dependem intrinsecamente de recursos tecnológicos.

Basil éia II
O acordo de capitais Basiléia II exige dos bancos um sofisticado esforço gerencial e
tecnológico para conhecer, mensurar e cobrir riscos operacionais, de crédito e de
mercado, criando um novo paradigma para as melhores práticas de administração na
indústria bancária.
Quando forem publicados os novos parâmetros para gestão do risco bancário - pelo
Banco de Compensações Internacionais (BIS) e pelo Banco Central do Brasil - será
configurada a necessidade de um salto significativo na qualidade e no refinamento das
bases de informações para gestão de riscos, o que implicará mudanças em vários
níveis da infra-estrutura de TI dos bancos.

As
vezinstituições
mais capitalque nãopara
próprio se adequarem
fazer face aarcarão com o ônus de ter de provisonar cada
esses riscos.
O maior desafio de Basiléia II aos gestores de risco e aos CIOs dos bancos será
modelar uma sofisticada base de dados incorporando todas as variáveis associadas
aos riscos operacionais, de crédito e de mercado, com uma amplitude temporal superior
a cinco anos, com vistas à tomada de decisões baseada em informações de alta
qualidade sobre as probabilidades de perdas futuras.

6 Terceirização.
7 Responsabilidade sobre segurança da informação.

29
Segurança em Redes

Órgãos de Inf orm ações so br e Segu rança


Várias organizações aprendem como responder a incidentes de segurança somente
depois de sofrer ataques. Então, muitas vezes os incidentes se tornam muito mais
dispendiosos do que o necessário. A resposta apropriada a incidentes deve ser parte
integrante de sua diretiva geral de segurança e da estratégia de mitigação de riscos.
Existem claros benefícios diretos em responder a incidentes de segurança. Contudo,
também pode haver benefícios financeiros indiretos. Por exemplo, sua seguradora
poderá oferecer descontos se você demonstrar que sua organização pode lidar com os
ataques com rapidez e economia. Ou, se você for um provedor de serviços, um plano
formal de resposta a incidentes poderia ajudar com os negócios, porque mostraria que
o processo de segurança da informação é levado a sério.
Para responder a incidentes, você precisa:
 Minimizar o número e a gravidade dos incidentes de segurança.
 Montar a equipe CSIRT (Computer Security Incident Response Team)
principal.
 Definir um plano de resposta a incidentes.
 Conter os danos e minimizar os riscos.

Depois que o incidente foi contido e os dados preservados para um possível processo,
você deverá considerar se precisa notificar as entidades externas apropriadas.
Possíveis agências incluem os órgãos de cumprimento de leis locais e nacionais,
agências externas de segurança e especialistas em vírus.
As agências externas podem fornecer assistência técnica, oferecer uma resolução mais
rápida e fornecer informações obtidas em incidentes semelhantes para ajudá-lo a se
recuperar totalmente do incidente e evitar que ele ocorra novamente no futuro.
O CAIS – Centro de Atendimento a Incidentes de Segurança atua na detecção,
resolução e prevenção de incidentes de segurança na rede acadêmica brasileira, além
de elaborar, promover e disseminar práticas de segurança em redes. Site:
http://www.rnp.br/cais/

O
mantido peloé NIC.br,
CERT.br o grupodo
deComitê
resposta a incidentes
Gestor de segurança
da Internet no Brasil. Opara a Internet
CERT.br brasileira,
é responsável
por receber, analisar e responder a incidentes de segurança envolvendo redes
conectadas à Internet no Brasil. Site: http://www.cert.br/

30
Segurança em Redes

Sis tema de G est ão de


Segurança da I nform ação

Políti ca de Segu rança


A Política de Segurança da Informação serve como base ao estabelecimento de
normas e procedimentos que garantem a segurança da informação, bem como
determina as responsabilidades relativas à segurança dentro da empresa.
A elaboração de uma Política de Segurança da Informação deve ser o ponto de partida
para o gerenciamento dos riscos associados aos sistemas de informação.
Para atender as principais necessidades da empresa, uma Política de Segurança da
Informação deve ser:
 Clara e concisa
 De fácil compreensão
 Coerente com as ações da empresa
 Amplamente divulgada
 Revisada periodicamente

Elaboração da Polític a de Segur ança


A elaboração de uma política de segurança deve seguir algumas etapas, que veremos
a seguir:

Definição da equipe responsável pela implantação e manutenção da


segurança
O primeiro passo para a elaboração de uma Política de Segurança é a definição das
equipes responsáveis pela elaboração, implantação e manutenção da política.
É importante que sejam definidas claramente as responsabilidades de cada
colaborador, e também que sejam envolvidas pessoas da alta administração da
organização.

31
Segurança em Redes

Análise das necessidades e procedimentos utilizado s pela empresa


Nessa etapa devem ser levantados os procedimentos executados na organização, que
tenham relevância para a segurança das informações. Devendo ser considerados todos
os processos informatizados ou não, que possam afetar direta ou indiretamente a
segurança.

Identificação dos processos críticos

Após o levantamento
considerados críticos àdos procedimentos,
organização, devem
ou seja, ser identificados
aqueles que contémosinformações
processos
sensíveis aos negócios da organização. Esses processos deverão ser tratados de
maneira diferenciada na política de segurança.

Classif icação da Informação


Tem como objetivo assegurar que as informações recebam um nível apropriado de
proteção. As informações devem ser classificadas para indicar a necessidade, as
prioridades e o grau de proteção.
A informação tem variado grau de sensibilidade e criticidade. Alguns itens podem
requerer um nível adicional de proteção ou manipulação especial. Um sistema de
classificação de informação deve ser utilizado para definir um conjunto apropriado de
níveis de proteção, e comunicar a necessidade de medidas especiais de manipulação.
A seguir descrevemos um exemplo de tipos de classificação da informação:

 Uso Confidencial - aplicada às informações de grande valor a organização,


se divulgadas indevidamente podem causar danos e prejuízos a organização
ou a seus parceiros. Seu uso e disseminação devem ser restritos e
controlados.
 Uso Interno - aplicada às informações restritas aos funcionários e a terceiros.
 Uso Público - Informações que podem ser divulgadas para o público em
geral, incluindo clientes, fornecedores, imprensa, etc.
Também é importante definirmos um conjunto de procedimentos para a manipulação
das informações de acordo com o esquema de classificação adotado pela organização.
Estes procedimentos precisam levar em consideração a informação na forma física e
eletrônica.
Para cada classificação, procedimentos de manipulação devem ser definidos para
cobrir os seguintes tipos de atividades no processamento da informação: cópia;
armazenamento; transmissão por correio, fax e correio eletrônico; transmissão por voz,
incluindo telefones celulares, correio de voz, secretárias eletrônicas; destruição.

Elaboração de normas e proc edim entos para técnicos e usuários


Nesta fase serão definidas, de acordo com as informações levantadas nas fases
anteriores, as normas e procedimentos que devem ser seguidos pelos funcionários,
estagiários, técnicos e colaboradores da organização.

32
Segurança em Redes

Relacionamos os principais tópicos, que devem ser abordados na definição das normas
e procedimentos: acessos externos; acessos internos; uso da Intranet; uso da Internet;
uso de correio eletrônico; política de uso e instalação de softwares; política de senhas;
política de backup; uso e atualização de antivírus; acesso físico; acesso lógico; trilhas
de auditoria; padrões de configuração de rede (nome de máquinas, etc.).

Definição de um plano de recuperação a desastres ou plano de


contingência
Plano de contingência ou plano de recuperação é um plano que contém as diretrizes
que a empresa deve seguir em caso de parada no processamento, decorrente de
desastre.
Tem como objetivo auxiliar na recuperação imediata do processamento das
informações, levando em consideração a criticidade, de modo que minimize eventuais
prejuízos à organização.

Definição de sanções ou penalidades pelo não cumprim ento da política


Nesta etapa são definidos. Devem ser definidas punições de acordo com a cultura da
organização, algumas empresas optam por criar níveis de punições relacionados aos
itens da política, sendo a punição máxima a demissão ou desligamento do funcionário
ou colaborador, pode-se também definir uma punição generalista que geralmente é a
demissão ou desligamento aplicado a casos extremos.
O principal objetivo de se estabelecer punições ao não cumprimento da política de
segurança, é incentivar os usuários a aderirem a política, e também dar respaldo
jurídico a organização.

Elaboração de um Termo de Comprom isso


O termo de compromisso é utilizado para que os funcionários, estagiários e
colaboradores se comprometam formalmente em seguir a política de segurança,
tomando ciência das sanções e punições impostas ao seu não cumprimento.
No termo de compromisso podem ser reforçados os principais pontos da política de
segurança, deve ser assinado por todos os funcionários e estagiários, e deve ser
renovado anualmente.
O termo de compromisso deve ser implantado como um aditivo ao contrato de trabalho,
para tanto deve ser envolvida a área jurídica da organização na sua revisão.

Comuni cado da diretoria / presidência a os fun cionários


Para reforçar o aval da alta administração da organização, e reafirmar a importância da
segurança, é importante que antes da implantação da Política de Segurança seja feito
um comunicado da diretoria ou presidência, aos funcionários e colaboradores,
comunicando a implantação da Política de Segurança na organização.

Divulg ação da Política

33
Segurança em Redes

Um dos maiores desafios de uma Política de Segurança é conseguir grande aderência


dos funcionários, isso acontece muitas vezes devido a cultura da organização e a falta
de envolvimento da alta administração.
Para resolver esse problema utilizamos a divulgação como instrumento de
conscientização dos funcionários e colaboradores, da importância da segurança das
informações e da importância da adoção de uma política.
A Política de Segurança deve ser de conhecimento de todos os funcionários,
estagiários
inclusive e colaboradores
e principalmente da novos
para organização, portanto
funcionários devecolaboradores.
e novos ser amplamente divulgada,

Os métodos de divulgação da Política de Segurança variam de acordo com a empresa,


abaixo listamos alguns dos métodos de divulgação mais utilizados: campanhas internas
de conscientização; palestras de conscientização para os funcionários e colaboradores;
destaque em jornal e folhetos internos; destaque na Intranet da organização; criação de
manual em formato compacto e com linguagem acessível aos usuários; disponibilizar
na Intranet ou na rede, em local comum a todos, a política na íntegra para consultas.
Independente do método de divulgação utilizado, uma característica fundamental é a
linguagem utilizada, que deve ser de fácil entendimento, e a leitura deve ser estimulante
aos usuários.

Implantação

A implantação é a etapa final da política de segurança. Consiste na aplicação formal


das regras descritas na política da organização, e a assinatura do termo de
compromisso. Deve ser realizada de forma gradativa e obrigatoriamente após o
programa de divulgação e conscientização dos funcionários.

Revisão da Política
A política de segurança deve ser revisada periodicamente, para mantê-la atualizada
frente às novas tendências e acontecimentos do mundo da segurança da informação.
O intervalo médio utilizado para a revisão de uma política de segurança é de um ano,
porém deve ser realizada uma revisão sempre que forem identificados fatos novos não
previstos na política de segurança vigente, que possam impactar na segurança das
informações da organização.

Ciclo PDCA
Um Sistema de Gestão de Segurança da Informação é um sistema de gestão análogo a
um Sistema da Qualidade e como tal é passível de certificação. Esta certificação se dá
a partir das evidências (documentos e práticas) do conjunto de controles implantados e
que devem ser continuamente executados e devidamente registrados.
Este modelo de gestão está baseado no ciclo com melhoria contínua PDCA (Plan-Do-
Check-Act).

34
Segurança em Redes

O Ciclo PDCA foi criado em 1920 e ainda hoje, é o principal método da Administração
pela Qualidade Total, sendo indicado na BS7799-2 como meio de facilitar o
gerenciamento do projeto de Segurança da Informação. O modelo começa com a
execução das atividades na fase Plan, passando para as fases Do, Check e Act,
sucessivamente. A idéia é que este processo seja executado continuamente e que a
cada novo ciclo, o sistema seja melhorado.

Levantamento de Ativos
Levantamento de informações dos ativos (servidores, estações e equipamentos de
conectividade): nesta etapa é realizado um levantamento dos ativos existentes na rede,
serviços disponibilizados, sistemas operacionais e demais informações sobre estações
e usuários. O objetivo é identificar a relação com aplicativos e serviços, como
autenticação utilizada, além de se conhecer o legado instalado na corporação.
Identificação dos sistema s crítico s
Sistemas críticos são os sistemas vitais para o desenvolvimento do negócio da
empresa. Se o funcionamento desses sistemas for interrompido a organização pode
sofrer algum tipo de prejuízo ou dano. A identificação dos sistemas críticos é o ponto de
partida para a criação de um plano de contingência, pois a partir dela será definido as
estratégias que a organização deverá adotar para dar continuidade ao negócio da
empresa.
Análise de impacto n os negócio s

Depois de identificados os sistemas críticos, é necessário avaliar o impacto que a


paralisação desses sistemas causaria à organização, determinando quanto tempo seria
possível "sobreviver" com esses sistemas operando nos padrões mínimos, ou seja, em
estado de contingência. Essa análise deve ser feita em conjunto com os responsáveis
pelas áreas que utilizam os sistemas.

Análise de Risco s
Devem ser analisados os riscos que os negócios da organização sofrerão com a
paralisação total ou parcial dos sistemas críticos.

Identif icação dos recurs os que os sist emas crític os depende m


A identificação dos recursos pelos quais os sistemas críticos dependem, dará as
informações necessárias para a definição da estrutura mínima que deverá ser utilizada
durante a ativação do plano de contingência. O levantamento de todos os recursos dos
quais esses sistemas dependem, diretos ou indiretamente, devem incluir software,
hardware, infra-estrutura e recursos humanos.

35
Segurança em Redes

Recursos de Software: Devem ser identificados todos os softwares que alimentem os


sistemas críticos, descrevendo a sua configuração, versão, atualizações e
fornecedores.
Recursos de Hardware: Devem ser identificados todos os recursos de hardware
necessários para o funcionamento dos sistemas críticos e dos sistemas que o
alimentam, sendo considerados a configuração, espaço em disco necessário, memória,
fornecedores.

Infra-estrutura:
levantada Para o funcionamento
a infra-estrutura adequado
necessária para manterdos sistemas,
os níveis é necessário
mínimos que seja
de funcionamento
dos sistemas. Devem ser considerados itens como: roteadores, switchs, hubs, bridges,
rede, no-breaks, PABX, etc.
Recursos Humanos: Deve ser, levantado quantas pessoas são necessárias para operar
os sistemas e o grau de especialização necessário, quantas pessoas serão necessárias
para operar, administrar e dar suporte para os recursos de hardware e infra-estrutura.
De acordo com o Risk Management Guide do NIST (Junho/2001) podem-se classificar
as probabilidades de ocorrência de ameaças em 3 categorias:

 Alta: a fonte da ameaça é altamente motivada e suficientemente capaz e as


contramedidas para evitar que as vulnerabilidades se concretizem são
ineficazes.

Média: a fonte jádaestão


contramedidas ameaça é motivadapara
implementadas e suficientemente capaz mas as
impedir que as vulnerabilidades
sejam concretizadas com sucesso; ou a fonte da ameaça não é motivada
para concretizar estas vulnerabilidades ou é apenas parcialmente capaz de
fazê-lo
 Baixa: a fonte da ameaça não possui motivação ou capacidade ou então, os
controles para prevenir ou ao menos impedir que as vulnerabilidades se
concretizem foram implementados com sucesso.
Na tabela apresentada a seguir relacionamos as ameaças às quais as empresas estão
expostas, a probabilidade de ocorrências e os possíveis impactos:

36
Segurança em Redes

37
Segurança em Redes

Plano d e Cont inuidade de Negó cio (PCN)


Um Plano de Continuidade de Negócios (PCN ou BCP - Business Continuity Plan)
enxerga o funcionamento de uma empresa através de duas variáveis: os componentes
e os processos.
Componentes são todas as variáveis utilizadas para realização dos processos: energia,
telecom, informática, infra-estrutura, pessoas...Todas elas, passíveis de substituição ou
restauração, de acordo com suas características.
O DRI (Disaster Recovery Institute) denomina como "Plano de Recuperação de
Desastres" aos planos focados na formalização da seqüência necessária para
restauração ou substituição destes componentes, independente da ameaça (incidente)
que os afete.
Aos processos, que passam a ser conduzidos de forma diferente àquela que
normalmente são realizados, designam-se os "Planos de Contingência Operacional",
focados na manutenção das atividades realizadas para operar os negócios da empresa.
Com a ativação de ambos os tipos de planos, chegamos ao Plano de Continuidade de
Negócios.
Conforme a ISO/IEC 17799:2005, item 11.1, a Gestão da Continuidade do Negócio tem
por objetivo
proteger não permitir,
os processos ou contra
críticos minimizar, a de
efeitos interrupção das atividades
falha ou desastres do negócio e
significativos.
O Plano de Continuidade de Negócios deve implementar um processo de gestão para
reduzir, a um nível aceitável, a interrupção causada por falhas de segurança ou
desastres, através de planos de ação de prevenção e recuperação.
Os planos devem ser implementados e testados periodicamente para garantir que os
processos de negócio possam ser recuperados dentro do prazo estipulado, gerando o
menor impacto possível para o negócio.
A Gestão da Continuidade do Negócio é um dos controles imprescindíveis, segundo a
ISO/IEC 17799:2005, para que uma empresa utilize as melhores práticas de Segurança
da Informação.
Definição das equipes de PCN, suas tarefas e responsabilidades
Os processos de negócio realizados pelas empresas e que merecem a preocupação de
estarem protegidos de uma interrupção, são executados por PESSOAS.
E pessoas precisam de orientação; específica, pontual e planejada. Sem isto, não se
pode garantir que uma empresa continue a funcionar, apenas por possuir o melhor
sistema de back-up ou armazenagem do mercado.
Para a definição e elaboração de um PCN, alguns itens devem ser considerados
obrigatórios, são eles:
Definir equipes que estarão envolvidas no plano é muito importante, pois assim é
possível dividir as tarefas, delegando responsabilidades e cobrando resultados.

38
Segurança em Redes

A criação das equipes varia de acordo com a metodologia aplicada pela organização.
As equipes devem ser formadas pelo pessoal de TI, executivos e usuários, em alguns
casos a definição das equipes só será possível após análises posteriores, como por
exemplo a equipe que fará a operação dos sistemas, abaixo descrevemos alguns
exemplos de equipes que podem ser formadas e suas responsabilidades:

 Equipe executiva - deve ser formada por executivos da organização. Este


grupo será responsável pela homologação das informações sobre os sistemas
críticos, ativação e desativação do plano, em suma será responsável pela
tomada de decisões que gerem algum tipo de impacto para a organização.
 Equipe de coordenação - Podemos dividir as tarefas da equipe de
coordenação entre tarefas pré-desastre, durante o desastre e pós-desastre.
- Tarefas pré-desastre - as tarefas pré-desastre se resumem na análise
das informações, identificação dos recursos necessários para
implementar o plano, definição das diretrizes, formalização do plano e
coordenação das outras equipes.
- Tarefas durante o desastre - as tarefas executadas durante o desastre
podem ser resumidas na avaliação da situação e posicionamento dos
executivos para a ativação do plano, coordenação da ativação do plano
e das demais equipes, estabelecimento de diretrizes para situações não
previstas, emissão de relatórios sobre a situação atual, coordenação da
recuperação do ambiente operacional.
- Tarefas pós-desastre - após a ativação do plano e controlado o
desastre, é necessário restabelecer as condições normais de trabalho, a
tarefa desta equipe é coordenar essas atividades.

 Equipe de revisão e atualização do plano - esta equipe será responsável pela


revisão e atualização do plano.

 Equipe de testes e simulações - esta equipe será responsável pela realização


de testes e pela simulação do plano, no processo de testes devem ser
envolvidas as pessoas que farão a operação dos sistemas.

 Equipe de software e hardware - equipe que auxiliará a equipe de


coordenação, na análise dos softwares e hardwares necessários para o
funcionamento do plano, durante o desastre dará o suporte necessário de
hardware e software
restabelecimento para
normal asatividades.
das demais equipes até a desativação do plano e o

 Equipe de operação dos sistemas - esta equipe é composta pelas pessoas


que vão operar os sistemas críticos enquanto o plano permanecer ativo.
Geralmente é composta por um grupo de usuários que já utilizam os sistemas
no dia a dia, e que receberam treinamento específico para situações de ativação
do plano.

 Equipe de logística - equipe que dará o apoio administrativo e de instalação


física. Sua tarefa antes do desastre será de assegurar a pronta disponibilidade
dos recursos necessários para a ativação do plano. Durante o desastre esta
equipe auxiliará as demais equipes, disponibilizando os recursos necessários
podendo ser eles administrativos, de transporte, de comunicação e infra-

39
Segurança em Redes

estrutura necessária para a execução dos trabalhos, até a desativação do plano


e restabelecimento normal das atividades.
É importante que a composição das equipes de trabalho, seja documentada
discriminando os nomes, telefones de contato, e a descrição das responsabilidades de
cada integrante, de modo que facilite o contato e a distribuição das tarefas durante a
ativação do plano.

Plano de Cont ing ênci a


A expressão "Planos de Contingência" para Tecnologia de Informação (TI) foi herdada
dos procedimentos de restauração ou recuperação de componentes do ambiente de
Mainframes (computadores de grande porte), cujos componentes de alto custo não
podiam sofrer interrupção de funcionalidade, face as elevadas despesas inerentes à
sua manutenção.
Naquela época, estes Planos visavam formalizar as seqüências de restauração ou
substituição dos componentes envolvidos na operação dos componentes de TI, focando
a redução do seu tempo de parada.

Hoje,acom
para o atual conceito
manutenção de queda
dos processos informática
empresa, éa uma
noçãoferramenta de negócio
de "Contingência" voltadaa
começou
tomar outro rumo.
De acordo com a metodologia do DRI (Disaster Recovery Institute), o Plano de
Contingência Operacional é o conjunto de atividades alternativas, previamente
planejadas, focadas na manutenção das atividades de negócio que sofram o risco de
serem interrompidas.
Continuidade torna-se a principal conseqüência de um conjunto de Planos de
Contingência.
Apesar de realmente fazerem parte fundamental dos planos de Recuperação de
Desastres e Continuidade, a contingência de componentes não garante Continuidade.
Apenas garante que encontraremos os meios necessários para planejá-la, de acordo
com nossas necessidades e limitações.
Desta forma, a preocupação com a continuidade dos negócios envolve a percepção de
que cada ítem utilizado para realizar os processos necessários sejam isoladamente
contingenciados e tenham alternativas viáveis de funcionamento, em caso de parada.

Plano de Recup eração de De sast res


Plano de Recuperação de Desastres é um nome que apesar de confuso, representa
umas das mais importantes premissas nas operações do Departamento de Informática
(TI).

40
Segurança em Redes

Não se trata de recuperar-se de um desastre. De fato, é justamente o contrário. Trata-


se de prevenir-se dos desastres que podem prejudicar as informações de seu negócio.
Sua empresa deve continuamente planejar e gerenciar o processo de recuperação,
como qualquer atividade importante cotidiana.
Isto envolve tecnologia atualizada e melhor treinamento para os membros da
Informática (Interna ou Terceirizada) para o implemento de diversas fases de um plano
de recuperação (Contingenciamento).
Veja abaixo o básico para um bom plano:
Ter o conhecimento do que será ma ntido pelo plano

A analise deverá cobrir os efeitos das perdas de dados e o corte da comunicação com
os funcionários, fornecedores e clientes.
Por antecipação temos exemplos dos possíveis desastres, isto é, fogo, enchentes,
invasões etc.., e você pode iniciar priorizando as causas mais prováveis, os riscos e os
impactos associados.
Fazer um Plano de Recuperação de Desastres

Os elementos chaves incluem: estabelecimento de um grupo de planejamento;


levantamento dos riscos e auditorias; checagem das prioridades para sua rede local e
aplicações; preparação de um inventário atualizado e da documentação do plano.
Estimar a tolerancia à s f alhas e ter uma dupli cação dos serviços essenciais

A definição de tolerância de rede é “a habilidade da Rede em recuperar-se de


quaisquer falhas, sejam estas relacionada a um desastre, problema no link, algum
componente físico ou serviços de rede”.
Contar também com um Serviço de Suporte de Te rceiros

Ter um suporte de seus fornecedores de serviço, prontamente disponível, adiciona um


peso considerável ao seu plano de recuperação de desastres, principalmente Internet,
Voz e Dados.
E por tratarem vários clientes diferentes, é mais provavel que os fornecedores
disponham de equipamentos sobressalentes.

Backup
Sistema que possibilita a reprodução e a posterior restauração de informações a partir
de meios magnéticos, ópticos e outros.
Backup dos dados essenciais do negócio e de arquivos de programa deve, ser feito
regularmente.

41
Segurança em Redes

Recursos e instalações alternativos devem ser disponibilizados de forma a garantir que


todos os dados e sistemas aplicativos essenciais ao negócio possam ser recuperados
após um desastre ou problemas em mídias.
Procedimentos alternativos para sistemas independentes devem ser regularmente
testados para a garantia de que eles satisfaçam os requisitos dos planos de
continuidade de negócios. Os seguintes controles devem ser considerados:

 Um nível mínimo de cópias de segurança, juntamente com o registro


completo e atualizado
procedimentos destasdevem
de recuperação, cópias
ser emantidos
com aemdocumentação dos
local remoto a uma
distância suficiente para livrá-los de qualquer dano que possa ocorrer na
instalação principal;
 Os backups devem ser objeto de proteção física e ambiental compatíveis
com os padrões utilizados no ambiente principal. Os controles adotados para
as mídias e para o ambiente principal devem ser estendidos para o ambiente
alternativo;
 As mídias utilizadas para backup devem ser periodicamente testadas,
sempre que possível, de modo a garantir a sua confiabilidade de uso quando
for necessário em caso de emergência; e
 Os procedimentos de recuperação devem ser verificados e testados
periodicamente para garantia de sua efetividade e de que podem ser
completados dentro do prazo determinado nos procedimentos operacionais
para recuperação.
Fazer backup dos dados e programas de uma rede é uma das ferramentas de
segurança mais fáceis e baratas de serem implementadas em uma organização,
contudo pode ser facilmente negligenciado quando tudo parece estar funcionando bem.
Infelizmente, várias empresas só descobrem a importância da implementação de um
bom plano de backup quando perdem seus dados por um acidente na sala do servidor,
ou por um descuido de algum usuário apagando todos os seus arquivos.

42
Segurança em Redes

AUDITORIA DE SISTEMAS
Uma auditoria pode ser definida como sendo o "exame das operações, atividades e
sistemas, com vista a verificar se são executados ou funcionam em conformidade com
determinados objetivos, orçamentos, regras e normas".
Uma auditoria típica, voltada para a avaliação da situação financeira de uma
organização, apresenta a seguinte estrutura:

O PROCESSO DE AUDITORIA
PLANEJAMENTO

AVALIAÇÃO DOS
CONTROLES INTERNOS

Sim : Executar testes de


conformidade dos Não: nenhuma confiança
controles nos controles

Teste substantivo

Revisão e avaliação

Relatório

Processo de auditoria típico

Equipe de Audit ori a


A equipe de auditoria é normalmente composta por um coordenador e um ou mais
integrantes. Dependendo do tipo ou escopo da auditoria, pode ser necessária a
presença de um ou mais especialistas em determinada tecnologia de banco de dados,
sistema operacional etc. Esses especialistas não precisam obrigatoriamente ter
formação em auditoria, podendo atuar apenas como peritos que irão desempenhar
determinadas funções ou tarefas técnicas a pedido dos auditores.
A atividade de auditoria, aplicada às organizações, visa a proteção de seu patrimônio e
a consecução de sua missão, objetivos e metas. Dessa forma, qualquer empresa pode
constituir auditoria para atuar de forma permanente ou temporária, por equipe
constituída de empregados da própria empresa ou de terceiros, ou ainda pela
contratação de auditoria independente.

43
Segurança em Redes

O treinamento dos auditores deve abranger tópicos como ética profissional,


responsabilidade legal, procedimentos e técnicas de auditoria, normas legais e
elaboração de relatórios e pareceres.

Planejamento da auditoria
Planejamento é o primeiro estágio no ciclo de vida da auditoria. Se executado
corretamente, ele deve garantir a eficiência e eficácia dos estágios posteriores da
auditoria.
Existem diversas fases de planejamento a serem realizadas pelo auditor:

 conhecimento da entidade auditada;


 determinação da natureza e extensão dos procedimentos de auditoria;
 determinação das necessidades de recursos, pessoal, prazo;
 preparação de um relatório de planejamento de auditoria.

Tipos de teste de auditoria


Auditores podem executar dois tipos de teste para atingir os objetivos de auditoria:

Testes de confo rmidade


Testes de conformidade são executados para determinar-se que grau de confiança
pode ser atribuído aos controles internos da organização. Em uma auditoria de
sistemas, o auditor pode por exemplo testar controles de validação da entrada para
garantir que as transações somente possam ser inseridas se contiverem todos os
dados necessários e sem erros (controle de entrada de dados), verificando assim se
esses controles são realmente confiáveis.
Teste s ubstantivo

O teste substantivo implica o exame de itens específicos (transações, registros) para se


chegar a conclusões a respeito da confiabilidade e integridade de informações que
podem afetar os balanços financeiros da organização. Por exemplo, um auditor pode
usar um teste substantivo para determinar se os registros de estoque estão corretos
verificando 100% dos itens em estoque ou usando uma amostra desses itens capaz de
permitir que se chegue a conclusões a respeito da integridade dos registros disponíveis
no sistema.

Relatório de Aud itoria


A elaboração do relatório constitui a fase final do processo de auditoria. Esta fase inclui
a discussão dos achados entre os membros da equipe e entre esses e a gerência da
unidade técnica responsável pela auditoria, bem como a definição do enfoque a ser
adotado na apresentação do relatório.
O relatório visa a promover o convencimento em torno dos fatos apurados. Dessa
forma, cabe ao auditor observar princípios básicos tais como objetividade, clareza,
imparcialidade, habilidade, correção, coerência, ordenamento lógico e exatidão, entre
outros.

44
Segurança em Redes

O auditor deve observar as seguintes recomendações quanto à elaboração do relatório:


 explicitar os objetivos da auditoria;
 evitar exposições ou comentários desnecessários ou inoportunos;
 não conter expressões que ensejem dúvidas ou terminologia técnica em
excesso;
 evitar justificar erros ou acertos detectados;

evitar o uso de expressões duras ou comentários depreciativos;
 ordenar a apresentação do assunto por importância da matéria a ser
relatada;
 não utilizar frases indefinidas ou referências genéricas, sem substância;
 registrar apenas informações devidamente fundamentadas em evidências
registradas em papéis de trabalho;
 identificar e explicitar problemas e questões que exijam exames mais
aprofundados, os quais a equipe julgue devam ser levados à consideração
superior;
 declarar se foi omitida alguma informação significativa, considerada
confidencial ou restrita a certas pessoas (descrever a natureza dessa
informação, assim como a lei ou qualquer outro critério em que ela se
baseia);
 recolher documentos (ou cópias) para anexar ao relatório, observando as
normas estabelecidas para elaboração de papéis de trabalho.

Técni cas de aud it ori a de sist emas de info rmação


Existem inúmeras técnicas de auditoria aplicáveis a sistemas de informação.
Durante a fase de planejamento da auditoria, dependendo dos objetivos, do escopo e
das limitações inerentes ao trabalho, a equipe de auditoria deve selecionar as técnicas
de auditoria mais adequadas para se chegar às conclusões esperadas do trabalho.

Técnicas comu ns a outros t ipos de auditoria


Algumas técnicas usadas em auditorias de sistemas são comuns a outros tipos de
auditoria, como entrevista (reunião realizada com os envolvidos com o ponto auditado,
que deve ser documentada); questionário (conjunto de perguntas que podem ser
aplicadas a muitas pessoas simultaneamente, sem a presença do auditor), verificação
in loco (observação direta de instalações, atividades ou p rodutos auditados).

Técnicas específicas para a avaliação de operações, transações, rotinas e sistemas em


operação ou desenvolvimento

Test-deck

45
Segurança em Redes

Método que consiste na aplicação do conceito de “massa de teste” para sistemas em


operação, envolvendo testes normais e corretos, com campos inválidos, com valores
incompatíveis, com dados incompletos, etc.

Simulação paralela
Método que consiste na elaboração de programas de computador para simular as
funções da rotina do sistema em operação que está sendo auditada. Utiliza-se os
mesmos dados de input, da rotina em produção, como input do programa de simulação.

Teste de recuperação
Avaliação de um sistema em operação quanto aos procedimentos, manuais e/ou
automáticos, de recuperação e retomada do processamento, em situações de falhas.

Teste de desempenho
Verificação de um sistema em operação quanto ao consumo de recursos
computacionais e ao tempo de resposta de suas operações (exige instrumentos de
monitoração para hardware e software).

Teste de e st resse
Avaliação do comportamento de um sistema em operação quando submetido a
condições de funcionamento envolvendo quantidades, volumes e freqüências acima do
normal.

Teste de se guran ça
Avaliação dos mecanismos de segurança preventivos, detectivos e corretivos presentes
no sistema.

Teste de caixa preta


Método que se concentra nos requisitos funcionais dos programas em operação. Os
casos de testes, normalmente derivados de diferentes condições de entrada, avaliam
funções, interfaces, acessos a bancos de dados, inicialização e término do
processamento. INICIALIZAÇÃO E

Mapping, tracing e snapshot


Métodos que prevêem a a inserção de rotinas especiais nos programas em operação,
usadas para depurá-los (debug) após serem executados.
Mapping: lista as instruções não utilizadas e determina a freqüência daquelas
executadas.

46
Segurança em Redes

Tracing: possibilita seguir o caminho de processamento dentro de um programa, isto é,


visualizar quais instruções de uma transação foram executadas e em que ordem.
Snapshot: fornece o conteúdo de determinadas variáveis do programa, durante sua
execução, de acordo com condições pré-estabelecidas.

Teste de caixa branca

Método
Os quedeseteste
casos concentra nasdecisões
avaliam estruturas internas
lógicas, de programas
loops, estruturas em desenvolvimento.
internas de dados e
caminhos dentro dos módulos.

ITF – Integrated test facility


Método que consiste na implementação de rotinas específicas de auditoria dentro dos
programas de um sistema em implantação, que poderão ser acionadas com dados de
teste, em paralelo com os dados reais de produção, sem comprometer os dados de
saída.

Módul os d e automação d e tarefa s d e auditor ia


Muitos sistemas corporativos, como os ERP (enterprise resource planning, ou software
de gestão integrada), oferecem módulos de auditoria que permitem automatizar
diversos processos antes realizados manualmente pelos auditores. Essa evolução
permite que o auditor seja liberado de atividades operacionais para concentrar-se nas
questões gerenciais e estratégicas da auditoria, garantindo assim maior eficiência nos
trabalhos.

47
Segurança em Redes

Métod o para Teste de


Penetr ação (Penetr atio n Test)

Metodologia OSSTMM
Tem por objetivo definir uma metodologia clara para execução de um pen-test e boas
práticas para realizações de processos como elaboração de relatórios.
A OSSTMM (Open Source Security Testing Methodology Manual) e OSSTMM Wireless
desenvolvido inicialmente por Peter Herzog da ISECOM, hoje conta com vários
especialistas em segurança.
Ela foi criada com intuito de apenas citar normas e metodologias para a comunidade de
segurança,
certificaçõesmas, como
válidas: obtevee um
OSSTMP grandee sucesso,
OSSTMA, hoje ela já através
seu reconhecimento conta com duas
do mundo
todo.
Padrões do ISECOM
 Baseado em análises, e não em marcas comerciais
 Consistente e repetido
 Exaustivo
 Válido além do momento do teste
 Concordante com as leis locais
EQUIVALÊNCIAS

IT Information Libary
 Germany: IT Baseline Protection Manual
 German IT Systems
 ISO 17799-2000
 GAO/FISCAM
 SET
 NIST
 MTRE

48
Segurança em Redes

MAPA DA SEGURANÇA

A figura abaixo ilustra de forma clara, todo o processo de analise da segurança no


modelo OSSTMM.

Segurança da Informação
 Avaliação de Postura
 Integridade da Informação
 Exame de Inteligencia
 Revisão da Inteligencia Competitiva
 Recursos Humanos
 Politicas de Controle
 Controles de Informação

49
Segurança em Redes

Processo de Segurança
 Revisão de Posturas
 Analisando Requisição
 Analisando Sugestões
 Analisando Pessoas Confiáveis
Segurança na Internet
 Logística e controle
 Revisão de políticas
 Revisão de detectores de intrusão
 Levantamento da Rede
 Identificação dos Serviços do Sistema
 Busca de Informações Competitivas
 Revisão da privacidade
 Coleta de dados
 Teste de aplicações para internet
 Busca e verificação de vulnerabilidades

Roteamento
 Teste de sistemas seguros
 Teste de controle de acesso
 Quebra de senhas
 Medidas de contingência
 Teste de negação de serviço (Dos)
 Revisão das políticas de segurança
 Revisão de alertas e logs
Segurança da Comunicação
 Revisão de posturas
 Teste de PBX
 Teste de correios de voz
 Revisão dos FAX
 Teste dos modems
Segurança Wireless
 Revisão de posturas
 Verificação de radiação eletromagnética
 Teste de redes Wireless 802.11
 Verificação de redes Bluetooth

50
Segurança em Redes

 Verificação dos dispositivos de entrada Wireless


 Verificação de Handheld Wireless
 Verificação das comunicações sem cabo
 Teste dos dispositivos de segurança sem fio
 Dispositivos de transação sem fio
 Verificação da RFID

Teste de sistema infravermelho
 Revisão de privacidade
Segurança Fisica
 Verificação de controles de acesso
 Revisão do perímetro
 Revisão de monitoramento
 Verificação das respostas dos alarmes
 Revisão do local
 Revisão do entorno

Segura nça “ perfe ita”


Serviço s e acesso a int ernet
 Não usar acesso remoto sem criptografia
 Não usar acesso remoto sem autenticação
 Restringir tudo liberar apenas o especifico
 Monitorar e logar tudo
 Descentralizar
 Limitar a confiança entre sistemas
 Colocar em quarentena as entradas e valida-las
 Instalar somente aplicações/serviços necessários

Dividir a segurança em camadas


 Seja invisível mostra somente o necessário
 A simplicidade previne erros de configuração
Computação móvel
 Colocar em quarentena todas as entradas de rede e todo o trafego da rede.
 Não usar acessos remotos descriptografados
 Não usar acessos remotos sem autenticação
 Criptografia de acordo com as necessidades
 Instalar somente aplicações/ serviços necessários
 E melhor ser invisível sem serviços rodando

51
Segurança em Redes

 Exigir senhas de BIOS


 Treinamento de segurança
Apli cações
 O uso de características de segurança deve ser obrigatório
 Ajustar as regras de negocio para entradas e saídas da aplicação
 Validar todas as entradas
 Limitar as confianças (Sistemas e Usuários)
 Criptografar dados
 Criptografar todos os componentes
 Todas as ações ocorrem do lado do servidor
 Definir camadas de segurança
 Seja invisível, mostre somente o seu serviço.
 Acionar alarmes
Pessoas

Autori dade descen tralizada


Responsabilidade pessoal
 Segurança pessoal e controles de privacidade
 Treinamento e definição de leis e éticas para política de segurança
 Acesso a informações e infra-estrutura limitadas

Análise de Vulnerabilidades x Pen-Test


Uma Análise de Vulnerabilidades é diferente de Pen-Test, pois permite varrer as
vulnerabilidades e aplicar filtros dos falsos postivos e falsos negativos, a partir de
Scanners, que tem como objetivo identificar e não com o objetivo invadir.
Pen-Test - parte fundamental da segurança da informação, que permite identificar o
estado da rede, verificar sistemas operacionais e serviços ativos, quantificar o risco do
servidor ficar fora do ar e ainda analisar vulnerabilidades.
A realização de PEN-TEST torna-se um mecanismo importante para avaliar de forma
qualitativa e até mesmo quantitativa os problemas de segurança que possam existir.
Existem 2 tipos de Pen-Test, o Intrusivo, e o não Intrusivo.
Pen-Test não Intrusivo
 Levantamento de Dados
 Varredura de portas ativas

52
Segurança em Redes

 Analise de Vulnerabilidades
 Identificação de possíveis vulnerabilidades.
 Correlação de “exploit” com bases conhecidas de vulnerabilidades.
 Não é realizado teste de Negação de Serviço (DOS)
 Não utilizado a técnica de Brute Force.
Pen-Test Intrusivo
 Levantamento de Dados
 Varredura de portas ativas
 Analise de Vulnerabilidades
 Identificação de possíveis vulnerabilidades.
 Correlação de “exploit” com bases conhecidas de vulnerabilidades.
 Identificação de possibilidades de Negação de
 Serviço (DOS)
 Utilização de técnicas de brute force

Aquisição de Alvo s
Engenharia Social
Podemos considerar a engenharia social como a arte de enganar pessoas para
conseguir informações, as quais, não devíamos ter acesso.
Muitas vezes empregados de uma empresa deixam escapar informações sigilosas
através de um contato via telefone ou mesmo conversando em locais públicos como:
corredores, elevadores e bares.
Uma empresa pode ter os melhores produtos de segurança que o dinheiro pode
proporcionar. Porém fator humano é, em geral, o ponto mais fraco da segurança.

A certificação Ethical Hacker, baseada no livro “The Science and Practice of Persuasion
- Robert Cialdini”, considera a existência de 6 tipos de ataque baseados em engenharia
social:

 Reciprocidade: Essa maneira de persuadir pessoas se baseia em um


conceito simples: Se alguém lhe der um presente, você se sentirá na
obrigação de lhe dar algo em troca!
 Valida ção soc ial: Essa técnica se baseia na seguinte idéia: “Se uma pessoa
pode fazer algo, outras também podem!”
 Consistência: Se aproveita do fato de que as pessoas querem ser
consistentes. Mostrarem que conhecem algum assunto, e que podem
responder algo.

53
Segurança em Redes

 Au toridade: Esse ataque se baseia no fato do atacante possuir mais “poder”


em uma corporação do que a vítima em questão.
 Amizad e: Essa técnica se baseia no principio de que: “Uma pessoa tende a
fazer mais coisas por uma pessoa que gosta, do que para uma que não
gosta!”
 Escassez: Uma técnica muito utilizada por vendedores é a de usar a
escassez como motivo para venda. “Compre agora! São as ultimas
unidades.”
Importância do lixo

Todos os dias são jogados no lixo de empresas vários documentos por terem perdido
sua utilidade. Porém para um atacante esses documentos são informações úteis para
entender o funcionamento, a história e a maneira de operação da empresa.
Engenharia social reversa

A engenharia social contém três pontos chaves: Sabotagem, Anúncio e Ajuda.


Imaginem a situação: O atacante causa um problema em seu computador. Deixa um
folheto de propaganda, de uma prestadora de suporte técnico, com a recepcionista de
sua empresa. Você liga e pede ajuda ao atacante, e enquanto ele te ajuda pega todas
informações que necessita do seu computador.

Escapando do ataque
Formule uma política para procedimentos internos e externos;
 Verifique se a pessoa que solicita a informação realmente pode ter acesso
aquela informação;
 Possua uma política especifica para acesso remoto;
 Criei uma boa barreira contra códigos maliciosos;
 Use o correio eletrônico de modo seguro;
 Treine seus funcionários!

Footprinting

Nada
do alvomais é do quetentando
da invasão, a busca burlar,
detalhada da maiorferramentas
se possível, quantidadeIDS’s
de informações possíveis
ou Firewalls.
A partir do resultado obtido pelo Footprint é traçado o plano/estratégia de invasão. Há
casos em que essa busca de informações chega a durar meses.
Uma das ferramentas para se levantar informações é o Google Hacking, que consiste
na atividade de usar os recursos de busca do site, visando atacar ou melhor proteger as
informações de uma empresa.
Informações soltas não têm valor nenhum, o trabalho de um atacante é juntar as
informações que conseguiu e montá-las como em um quebra-cabeça.

Furto e Quebra de S enhas (Brut e Force)

54
Segurança em Redes

O ataque por brute force consiste em tentativas de descoberta de senhas/logins através


de processos manuais ou automatizados. Os principais alvos são servidores de e-mails,
servidores com Telnet ativo, FTP, HTTP com autenticação etc.
Ninguém em sã consciência tentaria manualmente um ataque desses, isso demoraria
muito e seria extremamente ineficaz. Abaixo segue as técnicas implementadas para se
otimizar um brute force:
Word List – Com essa opção será necessário especificar um arquivo .txt com senhas
possíveis, esse método é rápido, porém pouco eficaz.
Combo List – Aqui teremos que informar um arquivo .txt com logins e senhas possíveis
separados por : ou <tab>. Só é recomendado se você já “desconfia” de possíveis
senhas/logins. Pouco eficaz.
Brute Force – Com essa opção serão feitas diversas combinações com os caracteres
especificados, esse método apesar de poder demorar muito, é muito eficaz.
Programas como o Brutus são comuns na Internet, por isso é sempre adequado usar
senhas com no mínimo 6 caracteres e usar caracteres alfanuméricos e numéricos.
Ainda assim essas práticas não nos tornam imunes a esse tipo de ataque.

Varredura
Enumeração
Técnica de extrair informações do ambiente alvo, como contas de usuários, recursos
compartilhados mal protegidos e principais serviços disponíveis.
Antes de testar o nosso ambiente alvo, precisamos saber quais serviços testar, que
tipos de ferramentas utilizarem, são informações como:

 Sistemas operacionais dos servidores da rede alvo;


 Serviços de redes, versões e possíveis vulnerabilidades;
 Possibilidades de ataques de Bruteforce;
 Dados de usuários enumerados como senhas e “id”;
 Possibilidades de Denial of Services;
 Possibilidades de acesso remoto arbitrários;
 Qualificando cada problema identificado a partir de referência de grau de
risco;
 Sugerir correções para as vulnerabilidades identificadas.
Deve ser utilizando dentro de um planejamento de segurança bem definido e com
metodologia concisa.
Vamos testar nosso sistema na prática, usando ferramentas especificas para verificar
as vulnerabilidades.

55
Segurança em Redes

Escaneamento de Portas (Port Scan)


Para realizar a varredura da rede, características específicas do seu protocolo devem
ser exploradas. Como o protocolo de rede utilizado na especificação do modelo é o
TCP/IP, as técnicas de varredura aqui descritas são aquelas que se baseiam nas
características desta pilha de protocolo.
Sobre a pilha do TCP/IP existem três tipos básicos de varreduras: uma baseada no seu
protocolo de controle (ICMP), outra no protocolo TCP e a terceira no protocolo UDP.
Dentre asque
exatidão varreduras,
esta coletaademais utilizada
dados é a TCP, isto se deve ao elevado nível de
propicia.
Uma das técnicas mais simples de varredura é a Varredura via ICMP. O protocolo
ICMP é normalmente utilizado para o envio e recebimento de informações sobre o
funcionamento dos nós, como por exemplo, data e hora.
Um exemplo de varredura via ICMP é a utilização do comando "ping", que é um
aplicativo padrão TCP/IP que está presente em várias arquiteturas é permite o envio de
pacotes do tipo ICMP ECHO para verificar se um nó está ativo. Porém, esta forma de
verificação não é indicada para redes com mais do que poucas dezenas de nós. O ping
sempre espera a resposta de um nó ao pacote enviado, ou até que ocorra o time-out,
antes de enviar um outro pacote.
Uma alternativa ao ping é o aplicativo fping, que é utilitário de rede disponível para as
plataformas Unix-Like e que funciona de forma análoga ao ping, mas com o envio de
pacotes de forma paralela que utiliza à mesma técnica, entretanto realiza o envio dos
pacotes ICMP de forma simultânea para vários endereços, acelerando o processo de
varredura da rede. Outra funcionalidade deste aplicativo é a possibilidade de se
configurar o "time-out" da conexão.
Mas atualmente os administradores de rede filtram pacotes ICMP, uma alternativa a
este problema é o aplicativo hping2, vamos aprender a conseguir informações com esta
ferramenta.
Hping2

O Hping2 é um software que envia requisições de pacotes utilizando diferentes tipos de


payloads e headers, uma ferramenta extremamente útil para spoof de pacotes e packet
injection em redes. Ele utiliza libpcap para operar e consegue jogar pacotes por trás de
filtros, tornando-se assim extremamente interessante e versátil!

A primeira vista ele nos retorna respostas normais como um ping faria. Mas ele nos
retorna algumas informações preciosas: flags.
Como dito de payload anteriormente, também devemos acrescentar que no TCP/IP,
quando estamos realizando o ThreeWay-Handshake, as portas do sistemas retornam
flags junto ao payload indicando se estão disponíveis ou não pra conexão:
flag=SA significa disponível
flag=RA significa indisponível.
round-trip min/avg/max = 0.0/0.0/0.0 ms /* Foi bl oqueado */
Varredura de Portas

56
Segurança em Redes

Vários gateways de segurança impedem o envio e o recebimento de pacotes ICMP


entre redes distintas, para inibir a varredura ICMP.
Quando as varreduras baseadas no protocolo ICMP não podem ser utilizadas, a
Varredura de Portas é uma alternativa eficiente, uma vez que sempre existem portas
através do qual um gateway permite o tráfego de entrada e saída, como é o caso das
portas: 21 (FTP), 22 (Telnet), 23 (SSH), 25 (SMTP), 80 (HTTP), 110 (POP) e 443
(HTTPS).

A varredura
pelas de portas
respostas. QuandoTCPa éporta
feitaalvo
peloresponde,
envio de pacotes à porta
os pacotes alvo e terão
recebidos aguardando-se
alguns de
seus campos analisados e, com base nesta análise, será possível determinar se a porta
está aberta e o nó ativo.
Atualmente, existem vários tipos de varredura TCP, algumas das quais são descritas a
seguir.
Varredura de Conexão TCP: Nesta varredura, a máquina de srcem tenta estabelecer
uma conexão válida com a porta alvo, durante a qual deve ocorrer o "3 way handshake"
do protocolo TCP, este processo consiste no envio de um pacote "SYN" à porta alvo, no
recebimento de um pacote "SYN/ACK" \ e finalmente no envio do pacote "ACK" à porta
alvo. Caso a conexão seja completada com sucesso, é possível afirmar que a porta
está aberta e o nó ativo.
Por realizar uma conexão completa, esta varredura pode ser facilmente percebida por
ferramentas de detecção de intrusão e por essa razão raramente é utilizada com
finalidade furtiva.
Varredura TCP SYN: esta varredura também é conhecida como varredura semi-aberta,
pois ao receber o pacote "SYN/ACK" vindo da porta alvo, o nó, que srcinou a primeiro
pacote, não responde com o pacote "ACK" . Ao receber o pacote com os bits
"SYN/ACK" setados, o nó pode-se afirmar que a porta está aberta. Contudo, se for
recebido um pacote com os bits "RST/ACK", a porta provavelmente não está no estado
de escuta.
Varredura TCP FIN: este técnica é muito utilizada contra sistemas baseados em UNIX,
pois quando estes recebem um pacote "FIN" destinado à porta fechada, eles enviam de
volta um pacote "RST", contudo o mesmo não acontece com sistemas Windows que
ignoram o pacote. Este padrão é documentado na RFC793 .
Varredura TCP Xmas Tr ee: neste caso ocorre o envio de um pacote com os bits "FIN"
, "URG" e "PUSH" ligados à porta alvo e segundo a RFC793, toda porta fechada deve
responder com um pacote "RST"
Varredura TCP NULL: Quando uma porta alvo recebe um pacote com todos os flags
desligados (setados como 0), ela deve responder com um pacote "RST" caso esteja
fechada.
Varredura TCP ACK: Esta técnica é usada para mapear regras de um determinado
firewall, permitindo determinar se o firewall é apenas um filtro de pacote ou um firewall
de estados.
Varredura TCP Windows: Esta técnica analisa o tamanho do campo Window do
protocolo TCP e permite determinar se a porta está aberta , filtrada ou não filtrada .

57
Segurança em Redes

Esta análise é possível, pois alguns gateways de segurança alteram o valor deste
campo quando filtram determinadas portas.
Varredura TCP RPC: Esta técnica permite identificar qual é a versão dos aplicativos
RPC \footnote {O serviço RPC (Remote Procedure Call) é especifico do sistema
operacional UNIX. que estão ativos em um nó Unix Like. Alguns dos serviços que
fazem uso do RPC são o NFS (Network File System) e o NIS (Network Information
Service).

Varredura de port as UDP


Apesar de existirem vários tipos de varreduras TCP, existe somente uma baseada no
protocolo UDP. Esta única varredura consiste no envio de "datagramas" com zero (0)
bytes de dados à porta alvo. A resposta pode ser uma mensagem "ICMP port
unreachable" indicando que a porta está fechada, caso não ocorra nenhuma resposta, a
porta pode estar aberta ou sendo filtrada.
Quando datagramas são enviados a várias portas de uma máquina e um grande
número delas não os responde, estas provavelmente estão em estado de escuta. Por
outro lado, se nenhuma porta responde isto pode indicar que ou o nó está fora do ar ou
o mesmo está sendo filtrado.
Ferramentas

Existe uma grande quantidade de ferramentas disponíveis para se realizar a varredura


de redes de computadores,
funcionalidades, dentre elas: no entanto, apenas algumas se destacam pelas suas
Varredura de ICMP : Ping, Fping, Hping, Nmap, Icmpenum e Icmpquery.

Varredura de P ortas: Nmap, Strobe, Udp_scan e Netcat.

Nmap

O Nmap fornece, de uma maneira geral, a relação de computadores e serviços ativos.


Existem diversas formas e parâmetros a serem informados durante uma varredura.
Este aplicativo possui os seguintes métodos de varredura:
-sP ou Ping scan: Algumas vezes é necessário saber se um determinado host ou rede
está no ar. Nmap pode enviar pacotes ICMP “echo request” para verificar se
determinado host ou rede está ativa. Hoje em dia, existem muitos filtros que rejeitam os
pacotes ICMP “echo request”, então envia um pacote TCP ACK para a porta 80
(default) e caso receba RST o alvo está ativo. A terceira técnica envia um pacote SYN e
espera um RST ou SYN-ACK.
-sR ou RCP scan: Este método trabalha em conjunto com várias técnicas do Nmap.
Ele considera todas as portas TCP e UDP abertas e envia comandos NULL SunRPC,
para determinar se realmente são portas RPC. É como se o comando “rpcinfo -p”
estivesse sendo utilizado, mesmo através de um firewall ( ou protegido por TCP
wrappers ).

58
Segurança em Redes

-sS ou TCP SYN scan: Técnica também conhecida como “half-open”, pois não abre
uma conexão TCP completa. É enviado um pacote SYN, como se ele fosse uma
conexão real e aguarda uma resposta. Caso um pacote SYN-ACK seja recebido, a
porta está aberta, enquanto um como resposta indica que a porta está fechada. A
vantagem dessa abordagem é que poucos irão detectar esse scanning de portas.
-sT ou TCP connect() scan: É a técnica mais básica de TCP scanning. É utilizada a
chamada de sistema (system call) “connect()” que envia um sinal as portas ativas. Caso
a porta esteja aberta recebe como resposta “connect()”. É um dos mais rápidos, porém
fácil de ser detectado.
-sU ou UDP scan: Este método é utilizado para determinar qual porta UDP está aberta
em um host. A técnica consiste em enviar um pacote UDP de 0 byte para cada porta do
host. Se for recebido uma mensagem ICMP “port unreachable” então a porta está
fechada, senão a porta pode estar aberta. Para variar um pouco, a Microsoft ignorou a
sugestão da RFC e com isso a varredura de máquinas Windows é muito rápida.
-sV ou Version detection : Após as portas TCP e/ou UDP serem descobertas por
algum dos métodos, o nmap irá determinar qual o serviço está rodando atualmente. O
arquivo nmap-service-probes é utilizado para determinar tipos de protocolos, nome da
aplicação, número da versão e outros detalhes.
-sF, -sX, -sN ou Stealth FIN, Xmas Tree ou Null: Alguns firewalls e filtros de pacotes
detectam pacotes SYN's em portas restritas, então é necessário utilizar métodos
avançados para atravessar esses softwares.
FIN: Portas fechadas enviam um pacote RST como resposta a pacotes FIN, enquanto
portas abertas ignoram esses pacotes. (Esse método não funciona com a plataforma
Windows, uma vez que a Microsoft não seguiu RFC 973)
Xmas Tree: Portas fechadas enviam um pacote RST como resposta a pacotes FIN,
enquanto portas abertas ignoram esses pacotes. As flags FIN, URG e PUSH são
utilizados no pacotes FIN que é enviado ao alvo. (Esse método não funciona com a
plataforma Windows, uma vez que a Microsoft não seguiu RFC 973)
Null: Portas fechadas enviam um pacote RST como resposta a pacotes FIN, enquanto
portas abertas ignoram esses pacotes. Nenhuma flag é ligada no pacote FIN. (Esse
método não funciona com a plataforma Windows, uma vez que a Microsoft não seguiu
RFC 973).
IP-SCAN - Hos t Disco very

O Angry IP Scanner, é uma ferramenta gráfica para windows bem interessante, vamos
analisar o seu funcionamento.
Faca o Download do Angry IP Scanner em : http://www.angryziber.com/ipscan/
Faremos um teste com a rede 64.152.0.0 – 64.159.255.255.
Este range pertence a Claria, uma companhia que recentemente se fundiu com a Gator,
a famosa Spyware Company.

59
Segurança em Redes

Monit oramento Promíscuo (Sniffing)

Sniffing,
conhecidaemcomo
redeSniffer
de computadores, é o procedimento
(também conhecido realizado
como Packet por uma ferramenta
Sniffer, Analisador de Rede,
Analisador de Protocolo, Ethernet Sniffer em redes do padrão Ethernet ou ainda
Wireless Sniffer em redes wireless).
Esta ferramenta, constituída de um software ou hardware, é capaz de interceptar e
registrar o tráfego de dados em uma rede de computadores. Conforme o fluxo de dados
trafega na rede, o sniffer captura cada pacote e eventualmente decodifica e analisa o
seu conteúdo de acordo com o protocolo definido em um RFC ou uma outra
especificação.
O sniffing pode ser utilizado com propósitos maliciosos por invasores que tentam
capturar o tráfego da rede com diversos objetivos, dentre os quais podem ser citados,
obter cópias de arquivos importantes durante sua transmissão, e obter senhas que
permitam estender o seu raio de penetração em um ambiente invadido.

Vulnerabilidades
Malwares
A expressão “Malware” nasceu da justaposição das palavras Malicious Software
(programas maliciosos) e é utilizada quando se pretende fazer referências genéricas a
pragas virtuais.
Basta abrir o noticiário de tecnologia e pronto, ficamos por dentro da nova peste
eletrônica da moda, a causar milhões em prejuízos. Foi assim com os vírus Ninda,

60
Segurança em Redes

Chernobyl, Iloveyou, melissa, etc. Na informática, vírus e variantes tornam-se tão


comuns, que se convencionou um nome para esses códigos que tiram o sono de
usuários de PC: são os malwares, uma categoria que engloba toda sorte de pragas
digitais, incluindo os vírus, cavalos de tróia, snifers, spyware, adware e por aí vai.
Mais do que conhecer estes agentes nocivos, o usuário tem de ter nas mãos
ferramentas e técnicas que permitam a ele identificar e eliminar estas pragas, na
maioria das vezes disseminadas por pseudohackers em busca de uma glória vazia e
uma auto-afirmação infantil.
As ameaças virtuais que estão na internet não se restringem a apenas uma infecção
virótica. Existem diversos tipos de pragas, que são divididas em classes e
subcategorias conforme suas características, propósitos e maneiras de atuar em
relação ao sistema alvo.

Vírus
Vírus de computador são programas capazes de se reproduzir. O ato de se reproduzir,
no caso destes Vírus, é a capacidade do mesmo de se copiar de um computador a
outro se utilizando de diversos meios: através dos disquetes, embutindo-se em
documentos de texto ou planilhas de cálculo e, atualmente, distribuindo-se por e-mail.
Ao contrário do que se costuma imaginar, o vírus digital não é uma novidade e tão
pouco surgiu com a internet. Alguns programas já eram capazes de se auto-replicar
desde a primeira metade do século passado (bem antes, portanto, do boom da
computação pessoal), embora o termo somente tenha entrado para o léxico da
informática em 1983, quando Fred Cohen (um pesquisador da universidade da
Califórnia) respaldou sua tese de doutorado em Engenharia nos estudos de pragas
eletrônicas criadas experimentalmente. Logo depois surgiu o primeiro vírus capaz de
infectar o sistema operacional da “Apple” (que disseminava via cópias piratas de
disquetes, geralmente de jogos) e, em 1986 “nascia”, no Paquistão, o vírus Brain (que
se instalava no setor de boot dos disquetes e discos rígidos, mas não causavam
maiores estragos).
Esses “programas do mal” acompanharam com louvor a evolução da informática.
Aparições mais recentes são compostas por milhares de linhas de códigos e ou utilizam
técnicas hacker para se propagarem por meio da rede à razão de milhões de sistemas
infectados em questão de dias.
Conceito de Vírus
O conceito de vírus é simples, os vírus nada mais são do que programas (ou
fragmentos de programas) que integram instruções maliciosas ou danosas aos
sistemas onde são executados, sem o conhecimento e sem o consentimento do
usuário. Um programa destrutivo, em si, não é necessariamente um vírus. Para ser
considerado como tal, o programa infectante precisa ter a intenção de se reproduzir.
Todos esses “programas” são potencialmente perigosos, ainda que nem sempre
destrutivos. No caso específico dos vírus, os danos causados ao sistema podem ser
incidentais, até porque seu criador talvez não tenha previsto determinados efeitos
colaterais. Alguns vírus apenas ocupam recursos do sistema, exibem mensagens
engraçadas ou malcriadas no monitor ou enviam-nas para a impressora. Outros
apagam arquivos essenciais, excluem documentos, programas e são capazes até de
aniquilar o registro de inicialização do sistema no HD, sobrescrever a BIOS e levar o

61
Segurança em Redes

computador contaminado ao colapso total. Portanto é bom deixar claro que estamos
falando apenas de tecnologia, um programa, qualquer que seja ele, atende aos
desígnios do programador, e tanto poderá ser direcionado a interagir com o operador
do sistema, como a executar automaticamente as mais variadas tarefas.
Tipos de Vírus

Vírus de arquivos

eEsse tipo embora


EXE), de vírus possam
agrega-se a arquivos
também executáveis
infectar arquivos(normalmente com extensãopara
que sejam requisitados COMa
execução de alguns programas, como os arquivos de extensão: SYS, DLL, PRG.OVL,
BIN, DRV (esta última é a extensão dos arquivos que controlam o funcionamento do
mouse , CD- ROM, da impressora, do scanner,etc).
Arquivos de extensão SCR, que é a extensão dos screensaver (protetores de tela),
também podem ser infectados, pois esses arquivos são na verdade executáveis
comuns, salvos com outra extensão. Isto é feito para que o Windows possa reconhecer
automaticamente esse tipo de arquivo. Neste tipo de virose, programas limpos
normalmente se infectam quando são executados com o vírus na memória em um
computador corrompido. Os vírus de arquivos dividem-se em duas classes: os de ação
direta e os residentes.
Vírus de ação direta

Essa classe
programa deovírus
que seleciona
contém um ou Ou
é executado. maisseja,
programas
toda vezpara
queinfectar cadainfectado
o arquivo vez quefor
o
executado, novos programas são contaminados, mesmo não sendo usados.
Como isso acontece?
Uma vez contaminado um arquivo, o programa (vírus) faz uma procura no winchester
(ou o hard disk) por arquivos executáveis. Cada arquivo encontrado é colocado em uma
lista, depois, na nova execução do arquivo contaminado o vírus seleciona
aleatoriamente um ou mais arquivos, e esses também serão contaminados.
Vírus Residentes

Essa classe esconde-se em algum lugar na memória na primeira vez que o programa é
infectado. Da memória do computador, passa a infectar os demais programas que
forem executados, ampliando progressivamente as frentes de contaminação.
Um vírus também pode ser ativado a partir de eventos ou condições pré-determinadas
pelo criador, como data (como a sexta feira 13, por exemplo), número de vezes que um
programa é rodado, um comando específico, etc.
Vírus de sis tema ou vírus de boot

Infectam códigos executáveis localizados nas áreas de sistema do disco. Todo drive
físico, seja disco rígido, disquete ou CD-ROM, contém um setor de boot. Esses setores
de boot contém informações relacionadas à formatação do disco, dos diretórios e dos
arquivos armazenados nele. Além disso, pode conter um pequeno programa chamado
de programa de boot (responsável pela inicialização do sistema), que executa a “carga”
dos arquivos do sistema operacional (o Windows XP, por exemplo). Contudo, como

62
Segurança em Redes

todos os discos possuem área de boot, o vírus pode esconder-se em qualquer disco ou
disquete, mesmo que ele não seja de inicialização ou de sistema (de boot).
Um comportamento comum entre os vírus de boot que empregam técnicas mais
avançadas de invisibilidade é exibir os arquivos de boot srcinais sempre que for feita
uma solicitação de leitura do sector 1 da track 0. Enquanto o vírus estiver residente na
memória, ele redireciona todas as solicitações de leitura desse setor para o local onde
esse conteúdo srcinal está armazenado. Essa técnica engana as versões mais antigas
de alguns anti-vírus. Alguns vírus, ainda mais avançados, chegam a marcar o setor
onde os arquivos
usuários de boot
não possam foramocolocados,
descobrir como,
setor de boot em sendo umconsiderado
um lugar setor ilegível, para que os
incomum.
Vírus múltiplos

São aqueles que infectam tanto os arquivos de programa comuns como os setores de
boot e ou MBR, ou seja, correspondem à combinação dos dois tipos descritos
anteriormente. Tais vírus são relativamente raros, mas o número de casos aumentam
constantemente. Esse tipo de vírus é extremamente perigoso, pois pode agir tanto no
setor de boot, infectando arquivos assim que eles forem usados, como pode agir como
um vírus de ação direta, infectando arquivos sem que eles sejam executados.
Vírus de macro

Antigamente os vírus se propagavam de disquetes, a partir de arquivos SYS, COM e


EXE, entretanto, os vírus mais atuais geralmente atingem arquivos de dados, como os
arquivos dopela
Word (com extensões .doc) e Excel (com extensões .xls). E são
espalhados internet.
São os chamados macrovírus ou vírus de macro, outra capacidade inédita destes tipos
de vírus e a sua disseminação multiplataforma, infectando mais de um tipo de sistema
com o mesmo código (Windows e MAC, por exemplo).
É a categoria de vírus mais recente, ocorreu pela primeira vez em 1995, quando
aconteceu o ataque do vírus Concept, que se esconde em macros do processador de
textos Microsoft Word. Esse tipo de vírus se dissemina e age de forma diferente das
citadas. Sua propagação foi rápida especialmente em função da popularidade do editor
de textos Word (embora também encontremos o vírus na planilha eletrônica Excel, da
própria Microsoft).
Eles contaminam planilhas e documentos (extensões xls e doc ). São feitos com a
própria linguagem de programação do Word. Entretanto, a tendência é de que eles
sejam cada vez mais eficazes, devido ao fato da possibilidade do uso da linguagem
Visual Basic, da própria Microsoft, para programar macros do Word. O vírus de macro é
adquirido quando se abre um arquivo contaminado. Ele se autocopia para o modelo
global do aplicativo, e a partir daí, propaga-se para todos os documentos que forem
abertos.
Vírus st ealth ou furti vo

Por volta de 1990, surgiu o primeiro vírus furtivo (ou stealth, inspirado no caça Stealth,
invisível a radares). Esse tipo de vírus utiliza técnicas de dissimulação para que sua
presença não seja detectada nem pelos antivírus, nem pelos usuários. Por exemplo, se
o vírus detectar a presença de um antivírus na memória, ele não ficara na atividade,
interferira em comandos como dir e o chkdsk, apresentando os tamanhos srcinais dos
arquivos infectados, fazendo com que tudo pareça normal.

63
Segurança em Redes

Também efetuam a desinfecção automática de arquivos no momento em que eles


forem executados, caso haja um antivírus em ação; com esta atitude, não haverá
detecção e conseqüente alarme.
Vírus cri ptografados

Um dos mais recentes vírus. Os encriptados, são vírus que por estarem codificados,
dificultam a ação de qualquer antivírus. Felizmente, esses arquivos não são fáceis de
criar e nem muito populares.
Vírus mutantes ou polimórfic os

Tem a capacidade de gerar réplicas de si mesmo utilizando-se de chaves de


encriptação diversas, fazendo com que as cópias finais possuam formas diferentes. A
polimorfia visa a dificultar a detecção de utilitários antivírus, já que as cópias não podem
ser detectadas a partir de uma única referência do vírus. Tal referência normalmente é
um pedaço do código virótico, que no caso dos vírus polimórficos varia de cópia para
cópia.
Vírus de scri pt

Infectam sistemas capazes de rodar scripts (programas escritos em linguagem não


compilada, ou seja, que não transformam o código fonte num arquivo executável), como
os navegadores da internet. Dentro dessa categoria, o i love you é comumente
lembrado devido aos estragos e prejuízos representativos que causou em 2000.
Essa peste chegava via e-mail com a frase i love you (eu te amo) no campo do assunto,
visando explorar a afetividade das vítimas para apagar arquivos de imagem e mp3,
além de encaminhar ao seu criador, nas Filipinas, todas as senhas que encontrasse
nos computadores contaminados.
Vírus de rede
Na realidade são os worms, como o Nimda, o Code Red e o Sql Slammer, que
exploram vulnerabilidades do sistema operacional e ou aplicativos para se propagar.
São os que têm causado mais estragos e prejuízos nos últimos anos (o Slammer foi
cerca de duzentos e cinqüenta vezes mais veloz que o Cód Red, infectando setenta e
cinco mil servidores em apenas dez minutos).
Vírus em Java

Contaminam classes de programas em Java (linguagem de programação), mas devido


ao fato da “Máquina Virtual Java” ser um ambiente razoavelmente protegido, esses
vírus não apresentam grandes ameaças.
O Strangebrew, criado em 1998, foi o primeiro e ainda é o mais conhecido deles.
Vírus de telefone

Pragas que, na verdade, agem no computador. Uma das mais conhecidas é a


Timofonica, worm que surgiu em 2000 e tenta enviar mensagens SMS para telefones
móveis da Espanha.
Vírus peer-to-peer

64
Segurança em Redes

Ainda que não tenham provocado grandes epidemias, esses códigos maliciosos se
propagam em redes de troca de arquivos peer-to-peer (programas como o KAZAA, que
permitem aos usuários acessar arquivos instalados nos discos rígidos de outros que
utilize o mesmo serviço).

Worms
O worm não é um vírus, mas tem a capacidade de se propagar automaticamente
através de redes e enviar cópias suas de uma máquina a outra.
Apenas para citar alguns exemplos, os “worms” (vermes), ainda que parentes próximos
dos “vírus”, não se encaixam na sua definição tradicional, porque não necessitam de
um hospedeiro, embora tenham capacidade de se auto-replicar.
Um worm é um tipo específico que se propaga em vários computadores, normalmente
criando cópias dele mesmo na memória do micro.
Dizer que os worms não são vírus dá-se pelo fato de se auto-propagarem, enquanto os
vírus infectam arquivos e só são ativados quando um arquivo infectado é executado
propagar. Sua propagação se dá através da exploração de vulnerabilidades existentes
ou falhas na configuração de softwares instalados em computadores. Os worms são os
mais perigosos e difíceis de remover.
O worm consome muitos recursos, comprometendo o desempenho de redes e lotando
ocópias
discode
rígido do computador, isso porque ele costuma propagar grande quantidade de
si mesmo.

Spywares
São softwares que monitoram o uso do computador, podendo ser usado legitimamente
ou maliciosamente. Na maioria das vezes são utilizados para roubar informações como
a lista de endereços de e-mail, por exemplo, enviando-as a spammers.
Ele pode ser usado de modo legítimo nas empresas, monitorando os hábitos de seus
funcionários, desde que esteja previsto em contrato ou na política de segurança da
empresa. Maliciosamente ele pode ser instalado por um cavalo de tróia para que
quando o usuário acessar determinados sites de bancos ou de comércio eletrônico, o
keylogger ou screenlogger (instalado também pelo cavalo de tróia) é ativado para a
captura de senhas bancárias ou números de cartões de crédito;

Adwares
Adware (Advertising software) é um software projetado para apresentar propagandas,
através de um browser ou de outro programa instalado no computador. Há alguns
adwares que são considerados um tipo de spyware pois monitoram seu uso da internet,
podendo roubar informações relativas à navegação (como por exemplo, sites visitados),
para direcionar propagandas.

65
Segurança em Redes

Hijackers
Programas que alteram o comportamento do seu navegador, fazendo com que ele
acesse páginas e sites específicos sem que você o tenha configurado para isso.
Keyloggers

O Keylogger é um programa que captura e armazena as teclas digitadas pelo usuário


no teclado de um computador.
A ativação do keylogger é condicionada a uma ação prévia do usuário, como por
exemplo, após o acesso a um site específico de comércio eletrônico ou Internet
Banking.
Normalmente, o keylogger contém mecanismos que permitem o envio automático das
informações capturadas para terceiros (por exemplo, através de e-mails).
As instituições financeiras desenvolveram os teclados virtuais para evitar que os
keyloggers pudessem capturar informações sensíveis de usuários. Então, foram
desenvolvidas formas mais avançadas de keyloggers, também conhecidas como
screenloggers, capazes de armazenar a posição do cursor no monitor, nos momentos
em que o mouse é clicado, ou armazenar a região que circunda a posição onde o
mouse é clicado.
Normalmente os keyloggers fazem parte de um spyware ou de um cavalo de tróia.

Falhas em Sistemas (R ootk it, Exploit s)


RootKits

O termo root kit vem designar uma série de ferramentas utilizadas por um invasor para
modificar ou ocultar a sua presença em um sistema invadido.
A idéia inicial é a de que uma série de programas disfarçados em arquivos do sistema
pudesse realizar tarefas de roubo de informações, possibilidade de acesso não
autorizado a qualquer momento e, em caso de necessidade, desativação da máquina
hospedeira.
Exploits

Em um processo de intrusão, o exploit é a ferramenta que irá explorar as possíveis


vulnerabilidades associadas a um serviço ou ao sistema.
Embora os exploits sejam diferentes tem um mesmo objetivo: ganhar acesso
privilegiado ao sistema.
Todo hacker possui diversas exploits para realizar testes de intrusão em um sistema.
Alguns exploits são chamados de 0day, pois são exploits que não são publicadas e as
falhas que elas exploram em geral não tem correção.
Identificação de vulnerabilidades

66
Segurança em Redes

Para serem criados, os exploits se baseiam em uma falha descoberta em uma


aplicação. Os atacantes procuram as falhas nos códigos dos programas ou em sites de
segurança que divulgam falhas através de boletins.
Alguns boletins de segurança são bem conhecidos, como os BIDs do site
securityfocus.com, os CAN/CVE do site cve.mitre.org (governo americano), entre
outros, como os DSA (Debian) e MS-BULLETIN (Microsoft)
Assim sendo o exploit é construído para explorar uma falha e provar o conceito, ou
seja, provar
não-ética, quebem
como a falha existe na prática. Porém muitas vezes isso é usado de forma
sabemos.

Forma de a tuação dos exploits

Geralmente os códigos dos exploits são escritos em linguagem C, por permitir a


manipulação de bits, bytes e endereços – elementos básicos com os quais o
computador funciona. Esses códigos exploram diversas falhas, porém a mais explorada
é sem dúvida, é o buffer overflow.
Esse conceito faz com que sejam exploradas áreas de memória para redirecionar
retornos de funções, variáveis, etc, para onde está executando o código “malicioso”.
Com isso, o atacante ganha poderes de execução idênticos aos do usuário que roda
aquela função, muitas vezes o usuário é o root.
Tipos de e xploi ts
Dentre os principais “tipos” de exploits, os mais importantes são exploits locais e
exploits remotos:

 Exploits remotos – exploram vulnerabilidades em serviços de rede que estão


rodando na máquina alvo.
 Exploits locais – exploram vulnerabilidades locais atribuídas ao kernel do
sistema operacional ou a um software que necessite do usuário root para
funcionar. Com isso, o atacante fará a elevação de privilegio, onde um
usuário normal conseguirá se tornar o super usuário root.

Estouro d e Buffer (Buffer Ove rflow ).


Buffer overflow, estouro de pilha ou transbordamento de dados, na informática,
acontece quando o tamanho de um Buffer ultrapassa sua capacidade máxima de
armazenamento.
Se o programa não foi adequadamente escrito, este excesso de dados pode acabar
sendo armazenado em áreas de memória próximas, corrompendo dados ou travando o
programa, ou mesmo ser executado, que é a possibilidade mais perigosa. Por exemplo,
se um programa qualquer possuir uma vulnerabilidade no sistema de login por exemplo,
pode-se criar um outro programa que fornece caracteres de texto até completar o buffer
e que depois envie um executável, que acabaria rodando graças à vulnerabilidade.
Um caso famoso foi descoberto em 2000 no Outlook Express. Graças à uma
vulnerabilidade, era possível fazer com que um e-mail executasse arquivos apenas por
ser aberto. Bastava anexar um arquivo com um certo número de caracteres no nome,

67
Segurança em Redes

que ele seria executado ao ser aberta a mensagem. Naturalmente, a Microsoft se


apressou em lançar uma correção e alertar os usuários para o problema.
Semanalmente são descobertas vulnerabilidades de buffer overflow em vários
programas. Algumas são quase inofensivas, enquanto outras podem causar problemas
sérios.

Negação de Serviço s – DoS / DDoS (Dist rib uited Deny of Service).


DoS

Um ataque de negação de serviço (também conhecido como DoS, um acrônimo em


inglês para Denial of Service), é uma tentativa em tornar os recursos de um sistema
indisponíveis para seus utilizadores. Alvos típicos são servidores web, e o ataque tenta
tornar as páginas hospedadas indisponíveis na WWW. Não trata-se de uma invasão de
sistema e sim sua invalidação por sobrecarga.
Os ataques de negação de serviço são feitos geralmente de duas formas:

 Forçar o sistema vítima a reinicializar ou consumir todos os seus recursos


(como memória ou processamento por exemplo) de forma que ele não pode
mais fornecer seu serviço.
 Obstruir a mídia de comunicação entre os utilizadores e o sistema vítima de
forma a não comunicarem-se adequadamente.
DDoS

Um ataque distribuído de negação de serviço (também conhecido como DDoS, um


acrônimo em inglês para Distributed Denial of Service). Um computador mestre pode ter
sob sua responsabilidade até milhares de computadores. Repare que nestes casos, as
tarefas de ataque de negação de serviço são distribuídas a um "exército" de máquinas
escravizadas. Por isso denomina-se um ataque distribuído de negação de serviço.
Vírus conhecidos criados para a distribuição de rotinas de ataque de negação de
serviço incluem "Codered", "Slammer", etc

Levantamento de Vulnera bilid ades

Nessus
Nessus é uma ferramenta para auditoria de segurança. Com ele é possível verificar
varias vulnerabilidades em sua rede. O nessus permite que se faça isso de uma forma
segura, não permitindo que usuários não autorizados possam scanear sua rede com
ele. Ele é composto por duas partes, sendo um cliente e um servidor.
O nessus possui uma GUI muito flexível onde você configura vários detalhes de
varredura na sua rede. Nela pode-se configurar quais plugins( ataques ) usar e os
hosts(targets) que serão scanneados. Primeiramente rode o nessus cliente, bastando
para isso digitar nessus na linha de comando. Ele pedirá, então, a senha que você
configurou inicialmente. Vamos abordar agora quais são as opções de configuração do
cliente nessus.

68
Segurança em Redes

Nessus host : nesta aba de configuração você deve especificar o endereço ip do


daemon nessus e também a porta tcp em que ele está rodando (geralmente 1241).
Nesta tela também é possível optar pelo algoritmo de criptografia que será usado.
Também é preciso especificar o nome do usuário para logar no daemon.
Plugins : Aqui reside todo o poder do nessus, nesta aba se encontram as explorações
(exploits) das vulnerabilidades conhecidas em forma de plugins. O nessus se vale
destes plugins para avaliar as vulnerabilidades do sistema scanneado.

Prefs. e: São
imap smb.especificados valores
De porte desses comoo usuários
dados e senhas
nessus pode fazerdeverificações
serviços como ftp, mais
muito pop,
eficitentes nos seus hosts, já que alguns exploits pressupõem que o "explorador" possui
uma conta válida de algum desses serviços. Também é possível configurar o tipo de
scan que será usado pelo nmap ( caso possua ).
Scan Option -> Aqui pode-se especificar as portas que serão scaneadas pelo nessus,
use virgula para portas individuais e hífen para intervalos(80,110,443-1024). No caso de
utilizar o nessus para scanear servidores web é bastante interessante especificar o
path, ou caminho, dos CGI's no seu servidor. Por exemplo s se você especificar o path
/cgi-bin/ para o nessus procurará por CGI's "exploitáveis” em http://host/cgi-bin/.
Para instalar o Nessus você precisa ter instalado o pacote nmap também, e além no
pacote nessus, precisamos instalar os pacotes nessus-plugins, nessusd e nessus-dev
Depois de instalar, você precisa criar um login de usuário para utilizar o Nessus. Este
login é válido apenas para o Nessus, não é um login de sistema.
Para criar o login, chame o programa nessus-adduser. Ele pedirá o login e senha, o tipo
de autenticação (escolha sempre cipher) e permitirá que você adicione regras para o
usuário. Se você quiser apenas criar o usuário usando as regras default basta
pressionar Ctrl + D. Ele pedirá uma última confirmação, basta responder "y":
Criamos o usuário senai com a senha “senai123”
O Nessus utiliza um sistema cliente-servidor, onde uma vez iniciado o módulo servidor
passa a ser possível rodar o cliente em qualquer máquina da rede (para isso é criado o
login de usuário). O certificado oferece uma segurança maior ao acessar o servidor
Nessus, pois garante que ele não foi substituído por outra máquina comprometida.
Após estar com o servidor do Nessus funcionando, podemos iniciar o scan. Há dois
modos de fazer isto: com a GUI, interface gráfica do Nessus (caso você a tenha
instalado ) ou pelo modo console, padrão na maioria das instalações. Primeiramente,
vou falar sobre como usar o modo gráfico (GTK).
Modo Gráfico

$ nessus

O primeiro passo é logar-se no servidor Nessus, fornecendo seu login e senha. Nas
configurações do programa você tem acesso a várias opções, entre elas a faixa de
portas TCP e UDP que devem ser escaneadas:

69
Segurança em Redes

Se você quiser um teste completo, use a faixa 1-65536. Este teste é ideal para PCs da
rede local, mas pode demorar bastante caso seja feito via Internet.
Basicamente, ele envia um pacote TCP e outro pacote UDP para cada porta e para
cada PC a ser testado. Se você quiser testar uma faixa inteira de endereços IP, com
seus 255 PCs teremos nada menos que 33.423.360 pacotes, que correspondem a mais
de 750 MB de dados.
Alguns testes do Nessus podem travar alguns PCs vulneráveis, como por exemplo
estações Windows 95 perigoso,
testes potencialmente vulneráveis ao "ping
evitando da morte".
prejuízos aosAusuários.
opção "Safe checks" desativa
De qualquer forma, o
ideal é fazer o teste à noite, ou em algum horário em que os PCs não estejam sendo
utilizados.
Na seção "Target Selection" você define o alvo, fornecendo seu IP. Se você quiser
testar as vulnerabilidades da própria máquina local, o endereço é o "localhost". Se você
quiser testar de uma vez toda a sua rede local, basta fornecer o endereço da rede,
como em "192.168.0.0" ou "10.0.0.0".
Concluído o teste, ele exibe uma lista com as vulnerabilidades encontradas em cada
PC. Existem três níveis de alerta, o primeiro e mais grave tem o símbolo de uma luz
vermelha e indica uma brecha de segurança em um servidor ativo na máquina. O
screenshot abaixo por exemplo temos uma máquina Linux rodando uma versão antiga
do Samba, que permite que clientes não autorizados loguem-se no servidor. Além de

70
Segurança em Redes

apontar o problema, o Nessus oferece uma descrição detalhada da vulnerabilidade e


aponta uma solução. No caso a solução é simplesmente atualizar o Samba para uma
versão mais recente:

O segundo nível é um alerta de que um serviço potencialmente inseguro está ativa


numa determinada porta do sistema, como por exemplo, um servidor Telnet ou XDMCP
(para obter a tela de login do servidor, como vimos no capítulo 7). Neste caso não foi
encontrada nenhuma vulnerabilidade específica, mas o fato o serviço ser
fundamentalmente inseguro já representa uma brecha de segurança.
Tanto o Telnet quanto o XDMCP transmitem dados de forma não encriptada, o que
permite que alguém mal intecionado possa sniffar a rede, capturando os dados
transmitidos, incluindo as senhas dos usuários.

71
Segurança em Redes

O terceiro nível de alerta tem o símbolo de uma luz. Estes são apenas lembretes de
que existe um servidor ativo na porta indicada, mas sem que fosse detectada qualquer
brecha de segurança:

Modo Console

Para realizar um scan em modo console, utilizamos o seguinte comando :


# nessus [servidor] [porta] usuario senha [arquivo_de_hosts] [arquivo_de_resultado]
Ou seja:
nessus: nessus é o programa nessus, que irá executar alguma coisa de acordo com os
argumentos que você passar na linha de comando.
servidor: servidor é onde o nessusd está rodando. Caso você tenha colocado no
nessusd rodando na sua máquina local, ele será 127.0.0.1, ou seja, a interface lo
(loopback). No caso de outro ip, por exemplo, 192.168.1.1, o servidor seria este ip.
porta: o nessus por padrão estará na porta 1241, mas você pode mudar isto. Com o
argumento no nessusd -p ou --p , você pode colocar o número de porta que você
quiser. Veja só um exemplo, o nessus será colocado para escutar o loopback e, rodar
na porta 3001 : nessusd --listen=127.0.0.1 --port=3001 . Você pode executar muitos
mais operações de configuração do nessus somente lendo o man do programa : man
nessusd.
usuário: lembra do usuário que você criou mais acima neste tutorial ? bom, é com ele
que agora você vai fazer o scan, nesta argumento você colocará o nome de usuário
que você criou para acessar o nessusd.
senha: você pode omitir este argumento, mas você terá que usá-lo de um jeito ou
outro. Quando você omite, ele abre um prompt de leitura de senha, para que você entre

72
Segurança em Redes

a senha. No caso, para eliminar mais um passo, a colocação da senha como


argumento, é mais interessante. A senha, aí, é a mesma que você colocou acima para
o usuário que você está usando.
arquivo_de_hosts: o arquivo de hosts, é o arquivo de alvos que você irá escanear.
Exemplo: quero escanear o foo.com e o foo.com.br. O arquivo de alvos ficaria do
seguinte modo: foo.com foo.com.br
Ou seja, cada host deve ser colocado em um linha específica. Isto quantos hosts você
quiser
que escanear.
quanto mais Mas
hostslembre-se, caso você tenha
sendo escaneados, uma conexão
mais tempo discada,
isto vai levar. é bom
Talvez lembrar
seja mais
interessante você dividir em vários arquivos de hosts.
arquivo_de_resultados: o arquivo onde vai ser gravado o resultado do seu scan. Por
padrão (nesta apostila), ele seria arquivo_de_resultados.txt.
Vejamos agora o resultado do nosso scan no host 192.168.1.3, que é um WindowsXP
SP2, no arquivo resultado.txt
Ele encontrou vários problemas de segurança nos serviços que estão rodando nesta
máquina.
Podemos então começar a pensar em que tipo de falha iremos explorar neste host para
realizarmos um teste de invasão.

Nikto
Nikot é uma ferramenta Open Source para análise de vulnerabilidades em web servers,
incluindo 3200 arquivos/cgi potencialmente perigosos e 230 versões de problemas
específicos.
Ele pode ser usado para procurar problemas em arquivos perigosos, ele é pequeno e
pode automatizar a auditoria dos servidores web, analisando as pastas e arquivos que
seriam interessantes ao atacante.
Para atualizar o nikto para a ultima versão com o comando
$nikto.pl –update
IntelliTamper

O IntelliTamper trabalha quase igual ao nikto, mas ele não procura vulnerabilidades
propriamente ditas, ele lista toda a estrutura o website, para que possamos verificar
algum arquivo com bug no webserver.
Sua utilização é muito simples, podemos mapear toda a estrutura do site alvo, mas
antes, vamos verificar algumas opções:
File -> Options

73
Segurança em Redes

Podemos customizar o processo de varredura, mudando por exemplo o numero do


maximo de conexões permitidas usado pelo IntelliTamper.

Acesso não Autorizado


Backdoors
Existe uma confusão entre o que é um Backdoor e um Cavalo de Tróia, principalmente
porque o estrago provocado por ambos é semelhante. Para deixar claro, um Cavalo de
Tróia é um programa que cria deliberadamente um Backdoor em seu computador.
Programas que usam a Internet e que são de uso corriqueiro, como Browsers,
programas de e-mail, ICQ ou IRC podem possuir Backdoors. Os Backdoors são abertos
devido a defeitos de fabricação ou falhas no projeto dos programas, isto pode acontecer
tanto acidentalmente ou ser introduzido ao programa propositalmente. Como exemplo:

74
Segurança em Redes

versões antigas do ICQ possuem defeito que abre um Backdoor que permite ao hacker
derrubar a conexão do programa com o servidor, fazendo que ele pare de funcionar.

Cavalo d e Tróia
Conta a mitologia grega, que há muito tempo atrás, houve uma guerra entre as cidades
de Atenas e de Tróia. Como Tróia era extremamente fortificada, os militares gregos a
consideravam inexpugnável.
Para dominá-la os gregos construíram uma enorme estátua de madeira na forma de um
cavalo e deram de presente para os troianos que a aceitaram de bom grado. O
problema é que o cavalo foi recheado com centenas de soldados que, durante a noite,
abriram os portões da cidade possibilitando a entrada dos soldados gregos e a
dominação de Tróia.
Daí surgiram os termos Presente de Grego e Cavalo de Tróia. Em tempos modernos o
cavalo virou um programa e a cidade o seu computador.
Conhecidos como Cavalos de Tróia ou Trojan Horses estes programas são construídos
de tal maneira que, uma vez instalados nos computadores, abrem portas em seus
micros, tornando possível o roubo de informações (arquivos, senhas, etc.).
Os Trojans não são vírus, pois não tem a capacidade de se replicar, mas se instalam
nos computadores sem permissão do usuário e trazem uma série de transtornos.
Eles são recebidos normalmente como um presente (um software gratuito como Kazaa,
Morpheus, jogo, protetor de tela, etc) que esconde uma ameaça fatal preparada para
atacar os computadores de dentro para fora e, muitas vezes, deixá-los vulneráveis a
ameaças externas, como vírus e ataques de hackers.
Abaixo há alguns males provocados pelos cavalos de tróia:
 Instalação de keyloggers;
 Furto de senhas e números de cartões de crédito;
 Inclusão de backdoor (Programa que permite a um invasor retornar a um
computador comprometido. Normalmente este programa é colocado de
forma a não ser notado), para permitir que um atacante tenha total controle
sobre o computador e;

Alteracão ou destruição de arquivos.
Os sites de pirataria e de troca de programas são outro perigo, quase sempre eles têm
programas que procuram falhas no Internet Explorer para instalar trojans e spywares,
para capturas de dados como endereços de e-mail, senhas digitadas para posterior
transmissão via modem para o fabricante do programa.
Os Cavalos de Tróia levam a máquina infectada a atuar como um servidor (fazendo
com que o mandante do trojan possa manipular e usar seu computador para ataques
em massa chamados de “denial of service”), facultando acesso remoto ao invasor que
disponha do módulo cliente do programa.
O cavalo de tróia instalará programas, sem que o usuário perceba, para facilitar ao
invasor acesso aos arquivos do usuário, com possibilidade até de formatar o disco
rígido do usuário.

75
Segurança em Redes

Spoofing
Ato de usar uma máquina para personificar e invadir outra. Isso é feito forjando o
endereço de srcem de um ou mais micros. Para realizar uma sessão bem-sucedida,
crakers temporariamente "silenciam" o computador que eles estão personificando.
No contexto de redes de computadores, IP spoofing é uma técnica de subversão de
sistemas informáticos que consiste em mascarar (spoof) pacotes IP com endereços
remetentes falsificados.
Devido às características do protocolo IP, o reencaminhamento de pacotes é feito com
base numa premissa muito simples: o pacote deverá ir para o destinatário (endereço-
destino); não há verificação do remetente o router anterior pode ser outro, e ao nível do
IP, o pacote não tem qualquer ligação com outro pacote do mesmo remetente. Assim,
torna-se trivial falsificar o endereço de srcem, podem existir vários computadores a
enviar pacotes fazendo-se passar pelo mesmo endereço de srcem, o que representa
uma série ameaça para os velhos protocolos baseados em autenticação pelo endereço
IP.
Falsificação de um pacote: A cada pacote enviado estará geralmente associada uma
resposta (do protocolo da camada superior) e essa será enviada para a vítima, pelo o
atacante não pode ter conhecimento do resultado exato das suas ações apenas uma
previsão.
Esta técnica, utilizada com outras de mais alto nível, aproveita-se, sobretudo, da noção
de confiabilidade que existe dentro das organizações: supostamente não se deveria
temer uma máquina de dentro da empresa, se ela é da empresa. Mas isto não é bem
assim, como indica o parágrafo anterior. Por outro lado, um utilizador torna-se também
confiável quando se sabe de antemão que estabeleceu uma ligação com determinado
serviço. Esse utilizador torna-se interessante, do ponto de vista do atacante, se ele
possuir (e estiver a usar) direitos priveligiados no momento do ataque.
Bom, mas resta a interação com as aplicações, além de que as características do
protocolo IP permitem falsificar um remetente, mas não lhe permitem receber as
respostas essas irão para o endereço falsificado. Assim, o ataque pode ser considerado
cego.
Por outro lado, ao nível das aplicações, este protocolo é frequentemente acoplado ao
TCP, formando o TCP/IP. Isto quer dizer que existe encapsulamento do TCP dentro do
IP (e os dados dentro do TCP), o que remete ao atacante a necessidade de saber que
dadosou
TCP, TCP incluir
TCP no pacote
session falsificado.
hijacking em inglês.Essa técnica é conhecida por desvio de sessão
Existem métodos para evitar estes ataques, como a aplicação de filtros de pacotes,
filtro ingress nos gateways; faz sentido bloquear pacotes provindos da rede externa
com endereços da rede local. Idealmente, embora muito negligenciado, usar um filtro
egress que iria descartar pacotes provindos da rede interna com endereço de srcem
não-local que fossem destinados à rede externa pode prevenir que utilizadores de uma
rede local iniciem ataques de IP contra máquinas externas.

Sql Injec tion

76
Segurança em Redes

O SQL Injection é uma falha de programação comumente cometida entre


desenvolvedores que estão começando a desenvolver sistemas e não têm uma noção
muito boa sobre segurança.
Essa falha permite que o atacante faça login como administrador sem nem saber o
nome do usuário ou sua senha, permite que se insiram dados nas tabelas utilizadas
pelo site ou até que se delete completamente uma tabela ou banco de dados de um site
sem nem mesmo precisar fazer o login.

Como
Por se sempre
isso, pode ver, é uma
testar falha sistemas
os seus extremamente sériaverificar
web para e bem conhecida
a existênciapelos atacantes.
de tais falhas é
o mínimo antes de disponibilizar o serviço na Internet.
O site Security Hacks publicou uma lista mostrando as principais ferramentas utilizadas
para automatizar os testes de SQL Injection em seus sistemas. Devido á criticidade
desse tipo de falha, é sempre bom contar com ferramentas que automatizem e alertem
sobre tais falhas para você não ter mais problemas futuros.

Cross -Site Scripting


As vulnerabilidades Cross-site scripting (por vezes chamado de XSS) ocorrem quando
um invasor usa uma aplicação web para enviar código malicioso, geralmente na forma
de um script, para um outro usuário final. Estas vulnerabilidades estão muito difundidas
e ocorrem sempre que uma aplicação web utiliza a entrada do usuário na saída que
aplicação gera sem validá-la.
Um invasor pode usar o cross site scriting para enviar scripts malicioso para um usuário
inocente. O navegador web do usuário final não tem como saber se aquele script deve
ser ou não confiável e executará o script. Devido ao navegador supor que o script vem
de uma fonte confiavel, o script malicioso pode ter acesso a qualquer cookie, tokens de
sessão ou outra informação sensível retida em seu navegador web e usada naquele
site. Estes scripts podem até mesmo rescrever o conteúdo da página HTML.
Ataques XSS podem geralmente ser classificados em duas categorias: armazenamento
e reflexão.

 Ataques de armazenamento são aqueles onde o código injetado fica


permanentemente armazenado nos servidores alvo, como em um banco de
dados, em mensagem de fórum, log de visitantes, campos de comentário,
etc. A vítima então recupera o script malicioso do servidor quando requisita a
informação armazenada.
 Ataques de reflexão são aqueles onde o código injetado é refletido pelo
servidor web, por meio de uma mensagem de erro, resultado de procura ou
qualquer outra resposta que inclua alguma ou toda entrada enviada para o
servidor como parte da requisição. Ataques de reflexão são enviados para as
vítimas através de outra rota, com por meio de mensagem de correio
eletrônico ou algum outro servidor web. Quando um usuário é ludibriado a
clicar em um link malicioso ou submeter um formulário especialmente
manipulado, o código injetado viaja para o servidor web vulnerável, que
reflete o ataque de volta para o usuário do navegador. O navegador então
executa o código pois ele vem de um servidor confiável.

77
Segurança em Redes

Os invasores frequentemente usam uma variedade de métodos para codificar a parte


maliciosa de uma tag, como usar Unicode, com isso, a requisição é menos suspeita ao
olhar do usuário. Existem centenas de variantes para estes ataques, incluindo versões
que não requisitam qualquer símbolo "<" e ">". Por esta razão, tentativas para filtrar
estes scripts normalmente não são bem sucedidas. Ao invés disso, nós recomendamos
validar a entrada contra uma rigorosa identificação positiva do que é esperado. Ataques
XSS normalmente vem em forma de javascript. Contudo, qualquer conteúdo ativo
embutido é uma fonte potencial de perigo, incluindo: ActiveX (OLE), VBscript,
Shockwave, Flash e outros.

78
Segurança em Redes

Hardening

Definição
A tradução para o termo Hardening é Endurecimento, porém o conceito pode ser
entendido de várias formas como segue:

 Blindagem do Sistema;
 Fortalecimento do Sistema;
 Ajuste Fino;
 Procedimentos de segurança PósInstalação;
 Técnicas de segurança PósInstalação.

Quandoimportantes:
fatores se trabalha com técnicas de Hardening, é preciso levar em consideração 3

 Segurança
 Risco
 Flexibilidade
As duas ultimas variáveis tendem a se compartar de forma previsível conforme a
prioridade que se dê a ao item segurança, como segue:

79
Segurança em Redes

Instalando o SO
Senhas
Escol ha uma senha p ara a BIOS

Antes de instalar qualquer sistema operacional em seu computador, configure uma


senha para a BIOS. Após a instalação (uma vez que você tenha habilitado o boot a
partir do HD) você deve voltar a BIOS e alterar a sequência de boot desabilitando o
boot a partir do disquete, cdrom e outros dispositivos. Se você não fizer assim, um
cracker só precisará de acesso físico e um disco de boot para acessar o sistema inteiro.
Observação: muitas BIOS vem de fábrica com senhas padrão bem conhecidas e
existem programas que recuperam estas senhas, ou seja, alteram a senha atual para a
senha srcinal, para o caso de uma perda da senha pelo administrador. Assim, não
dependa desta medida para proteger o acesso ao sistema.

Mídi a de Instalação
Observe que alguns serviços podem ter vulnerabilidades de segurança não corrigidas
nos pacotes que você estiver usando para a instalação. Isto normalmente será verdade
se você estiver instalando a partir de mídia antiga (como CD-ROMs). Neste caso, o
sistema poderia estar comprometido antes de terminar a instalação!
Uma vez que a instalação e atualizações do sistema podem ser feitas pela internet você
pode pensar que é uma boa idéia usar este recurso na instalação. Se o sistema está
diretamente conectado (e não está protegido por um firewall ou NAT), é melhor instalar
sem conexão com a grande rede usando um mirror local com os pacotes e as
atualizações de segurança.
Você pode configurar mirrors de pacotes usando outro sistema conectado com
ferramentas específicas do sistema como apt-move ou apt-proxy, ou outras, para
fornecer os arquivos para o sistema instalado. Se não puder fazer isto, você pode
configurar regras de firewall para limitar o acesso ao sistema enquanto estiver
atualizando.

Particionamento
Esquema de partição inteligente

Um esquema de partição inteligente depende de como a máquina será usada. Uma boa
regra é ser razoavelmente generoso com suas partições e prestar atenção aos
seguintes fatores:
 Qualquer diretório que um usuário tenha permissões de escrita, como o
/home, /tmp e o /var/tmp/, devem estar separados em uma partição. Isto
reduz o risco de um usuário malicioso utilizar o DoS (Denial of Service) para
encher seu diretório raiz ( / ) e tornar o sistema inutilizável (Observação: isto
não é totalmente verdade uma vez que sempre existe algum espaço
reservado para o usuário root que o usuário normal não pode preencher), e
também previne ataques tipo hardlink.

80
Segurança em Redes

 Qualquer partição com dados variáveis, isto é, /var (especialmente /var/log)


também deve estar numa partição separada. Em um sistema Debian você
deve criar /var um pouco maior que em outros sistemas porque o download
de pacotes (cache do apt) é armazenado em /var/cache/apt/archives.
 Qualquer partição onde você queira instalar software que não é padrão da
distribuição deve estar separada. De acordo com a Hierarquia Padrão do
Sistema de Arquivos, estas são /opt ou /usr/local. Se estas partições estão
separadas, elas não serão apagadas se você (tiver que) reinstalar o Debian.

Do ponto de vista da segurança, é sensato tentar mover os dados estáticos para sua
própria partição e então montar esta partição somente para leitura. Melhor ainda será
colocar os dados numa mídia somenta para leitura. Veja abaixo para mais detalhes.
No caso de um servidor de email é importante ter uma partição separada para o spool
de email. Usuários remotos (conhecidos ou não) podem encher o spool de email
(/var/mail e/ou /var/spool/mail). Se o spool está em uma partição separada, esta
situação não tornará o sistema inutilizável. Porém (se o diretório de spool está na
mesma partição que /var) o sistema pode ter sérios problemas: log não serão criados,
pacotes podem não ser instalados e alguns programas podem ter problemas ao iniciar
(se eles usam /var/run).
Opções especiais de montagem

Nós podemos fazer com que o sistema trate certos arquivos de forma diferente com
algumas opções, o que é mais interessante do ponto de vista de segurança.
Podemos verificar as opções de montagem com o comando “mount” ou diretamente no
arquivo /etc/fstab:
mount /dev/hda7 –t reiserfs –o nosuid,nodev /tmp
No fstab ficaria:
/dev/hda7 /tmp reiserfs nosuid,nodev 0 0
A tabela abaixo ilustra algumas opções existentes para sistemas de arquivos de tipo
ext3 e RaiserFS, que foram o sistema de arquivo que escolhemos para criar as
partições da instalação anterior.

Opção Efeito
nodev(*) Dispositivos especiais de bloco ou caractere do sistema de arquivos não
serão interpretados se nodev estiver especificado.
Bits SUID e SGID não terão efeito. Se um usuário comum executar um
nosuid(*) programa SUID ou SGID que force a troca para outro usuário, receberá o
erro de permissão negada.
noexec(*) Não permite a execução de binários. Note que scripts ainda poderão ser
executados usando, por exemplo, bash foo.sh em vez de ./foo.sh.
A partição será montada somente para leitura ( read-only) ou para leitura e
ro, rw
escrita (read-write), respectivamente.
user, A partição pode (user) ou não (nouser) ser montada por usuários que não
nouser(*) sejam root.
usrquota Ativa a quota de disco por usuário.

81
Segurança em Redes

Opção Efeito
grpquota Ativa a quota de disco por grupo.
Toda a operação de entrada e saída nesta partição será síncrona. Isto
[a] tornará a escrita nesta partição mais lenta, mas também menos suscetível a
sync(*) problemas caso, por exemplo, falte energia elétrica logo após a operação
de escrita.
[a]
Esta opção não é mais tão útil, devido ao uso de sistemas de arquivos com
journalling, como ext3.

As opções abaixo são muito interessantes e se aplicam a diversas partições do nosso


servidor que acabamos de instalar. A seguir serão mostrados alguns exemplos de uso
dessas opções em nossas partições.
/usr: nod ev,ro
Nesta partição se encontram normalmente os programas do sistema. De forma alguma
devem existir arquivos de dispositivo aqui, por isso foi colocada a opção nodev.
Também não deve ser necessário escrever nesta partição, salvo instalação ou remoção
de algum programa. Nestes casos, ela deve ser remontada com a opção rw e depois
novamente remontada com a opção read-only. Note que os direitos dos diretórios por si
só já não permitem a qualquer usuário realizar operações de escrita ali, mas o read-
only é uma medida adicional, pois nem o usuário root poderá alterar algo ali antes de
remontar a partição como read-write.
/var: noexec,nosuid,nodev

O diretório /var é usado para guardar e-mails, arquivos de log, dados de programas
(banco de dados RPM,MYSQL, por exemplo) e outras coisas. Mas /var/tmp pode ser
utilizado pelo processo de compilação de um pacote RPM para guardar os scripts que
serão usados. Se noexec for usado, esses scripts não funcionarão. Portanto, use
noexec com cuidado, pois alguma aplicação pode ter o funcionamento comprometido.
Uma outra opção é colocar /var/tmp em uma outra partição, e permitir a execução
nesta.
Outra exceção: caso existam pacotes que usem o /var, como ambiente de chroot, e
necessitem de arquivos de dispositivos, como o BIND, a opção nodev deve ser
removida.
/boot: n oexec,nosuid,nodev,ro

Esta partição possui bem pouca atividade no sistema. Na verdade, após o boot (que
nem sabe o sistema de arquivos que roda ali, quanto menos opções de montagem da
partição), ela só é usada quando se faz uma atualização do kernel ou da imagem de
disco inicial (initrd). Nada deve ser executado ali, arquivos de dispositivos não são bem-
vindos e ela deve ser montada read-only. Quando se fizer uma atualização do kernel,
basta remontá-la com a opção read-write.
/home: nos uid,nodev, noexec

Aqui depende do administrador da máquina quais das opções acima serão usadas.
Recomenda-se pelo menos usar nosuid e nodev. Pode-se ainda usar a opção noexec,
mas o usuário sempre poderá executar binários, bastando, por exemplo, copiá-los para
o /tmp

82
Segurança em Redes

/tmp: nos uid,nodev,noexe c


O diretório /tmp pode ser usado por qualquer usuário e para qualquer fim basicamente.
Arquivos e scripts temporários são colocados ali pelo processo de compilação de um
pacote RPM, por exemplo. Ele é um diretório com permissões de escrita para qualquer
usuário, então basicamente vamos proibir a execução de binários SUID/SGID através
da opção nosuid. Utilizaremos e opção nodev por que não existe motivo para se usar
dispositivos nesta partição. Não podemos esquecer também de negar a execução de
binários com a opção noexec, mas tome cuidado com esta opção pois alguns pacotes
necessitam que o /tmp possua permissões de execução.
IMPORTANTE: Atualmente, a maioria das falhas de scripts, como por exemplo, php e
apache, o invasor quando ganhar acesso na máquina, ele não terá privilégios de
usuário root no sistema, sendo assim ele precisará de um lugar onde qualquer usuário
possa executar binários para poder rodar o seu exploit local e conseguir root no
sistema.
Este diretório será o /tmp, mas se nós usarmos as opções acima no ponto de
montagem na partição, a ação do invasor será minimizada, e ele não terá aonde
executar este tipo de arquivo.
Não conecte-se a internet até estar pronto

O sistema não deve ser imediatamente conectado a internet durante a instalação. Isto
pode parecer estúpido mas intalação via internet é um método comum. Uma vez que o
sistema
internet einstalará
e ativará serviços adequadamente
imediatamente, se o sistema estiver conectado a
os serviços não estiverem configurados, você estará abrindo
brechas para ataques.
Configure a senha do root
Configurar uma boa senha para o root é o requerimento mais básico para ter um
sistema seguro. Você também pode usar um programa gerador de senhas para fazer
isto para você.
Muita informação sobre a escolha de boas senhas pode ser encontrada na internet;
dois locais que fornecem um sumário decente e racional são How to: Pick a Safe
Password do Eric Wolfram e Unix Password Security do Walter Belgers.

Atualizações
Assim que novos bugs são descobertos nos pacotes, os mantenedores do sistema e
autores de software geralmente aplicam patches dentro de dias ou até mesmo horas.
Após uma falha ser corrigida, um novo pacote é disponibilizado em
http://security.debian.org.
Se estiver instalando um lançamento do Debian, você deverá ter em mente que desde
que o lançamento foi feito devem existir atualizações de segurança que podem
determinar um pacote como vulnerável. Também existem lançamentos menores (foram
sete no lançamento da 2.2 potato) que incluem estas atualizações de pacotes.
Você precisa anotar a data em que a mídia removível foi feita (se estiver usando uma) e
verificar o site de segurança para ter certeza que existem atualizações de segurança.
Se existem atualizações e você não puder baixar os pacotes de um site

83
Segurança em Redes

security.debian.org em outro sistema (você não está conectado na Internet ainda?


está?) antes de se conectar a rede você deverá considerar (se não estiver protegido por
um firewall, por exemplo) adicionar regras de firewall assim seu sistema somente
poderá se conectar a security.debian.org e então executar a atualização.
Para atualizar manualmente o sistema, insira a seguinte linha em seu sources.list e
você obterá as atualizações de segurança automaticamente, sempre que atualizar seu
sistema.

deb http://security.debian.org/ stable/updates main contrib non-free


Assim que instalar isto, você poderá usar ou o apt atualizar:
Se quiser usar o apt simplesmente execute (como root):
# apt-get update
# apt-get upgrade
Rode o mí nimo de serviç os necessários
Serviços são programas como servidores. Uma vez que eles tem que estar escutando
por conexões que requisitem o serviço, computadores externos podem conectar-se a
eles. Serviços algumas vezes são vulneráveis (i.e. podem estar comprometidos sobre
um certo ataque) e oferecem risco a segurança.

Você
serviçonão deve instalar
instalado serviçosnovos,
pode introduzir que não sãonão
talvez necessários
óbvios ou em sua máquina.
conhecidos, Todo
buracos de
segurança em seu computador.
Como você já deve saber, quando você instala um serviço o padrão é ele ser ativado.
Em uma instalação Debian padrão, sem nenhum serviço a mais instalado, o footprint de
serviços rodando é baixo mesmo quando falamos de serviços oferecidos para a rede.
Quando você instala um novo serviço de rede (daemon) em seu sistema Debian
GNU/Linux ele pode ser habilitado de duas maneiras: através do superdaemon inetd
(uma linha será adicionada ao /etc/inetd.conf) ou através de um programa que serve de
interface. Estes programas são controlados pelos arquivos /etc/init.d, que são
chamados no momento da inicialização através do mecanismo SysV (ou outro
alternativo) pelo uso de symlinks em /etc/rc?.d/*.
Se você quer manter algum serviço, mas que será usado raramente, use os comandos
update, isto é, update-inetd e update-rc.d para removê-los do processo de inicialização.
Desabilitando daemons de serviço
Desabilitar um daemon de serviço é simples. Existem vários métodos:

 Remover ou renomear os links de /etc/rc${runlevel}.d/ de modo que eles não


iniciem com a letra 'S'.
 Mover ou renomear o script /etc/init.d/_service_name_ pra outro nome, por
exemplo /etc/init.d/OFF._service_name_.
 Remover a permissão de execução do arquivo /etc/init.d/_service_name_.
 Editar o script /etc/init.d/_service_name_ para parar o serviço imediatamente.

84
Segurança em Redes

Desabilitando o i netd ou seus serviç os

Você deve checar se realmente precisa do daemon inetd. Inetd sempre foi uma maneira
de compensar deficiências do kernel, mas estas deficiências foram corrigidas. Existe
possibilidade de ataques DoS (Denial of Service) contra o inetd, então é preferível usar
daemons individuais do que rodar um serviço do inetd. Se você ainda quer rodar algum
serviço do inetd, então no mínimo alterne para um daemon mais configurável como
xinetd, rlinetd ou openbsd-inetd.
Você deve parar todos os serviços Inetd desnecessários, como echo, chargen, discard,
daytime, time, talk, ntalk e r-services (rsh, rlogin e rcp) os quais são considerados
ALTAMENTE inseguros (use ssh no lugar destes).
Você pode desabilitar os serviços editando o arquivo /etc/inetd.conf diretamente, mas o
Debian fornece uma alternativa melhor: update-inetd (o qual comenta os serviços de
modo que eles possam facilmente ser reativados). Você pode remover o daemon telnet
para alterar o arquivo de configuração e reiniciar o daemon (neste caso o serviço telnet
é desabilitado):
/usr/sbin/update-inetd --disable telnet
Instale o mínimo de s oftware nece ssário

O Debian
possui vem com
3 DVDs de uma grande
software quantidade
e milhares de de software,
pacotes. por exemplo
Apesar o Debian
da grande 4.0 Etch
quantidade de
software, a instalação do sistema base utiliza poucos pacotes.
Sabendo o que seu sistema realmente precisa, você deve instalar apenas o que for
realmente necessário para seu trabalho. Qualquer ferramenta desnecessária pode ser
usada por um usuário malicioso para comprometer o sistema ou por um invasor externo
que tenha acesso ao shell (ou código remoto através de serviços exploráveis).
A presença, por exemplo, de utilitários de desenvolvimento (um compilador C) ou
linguagens interpretadas (como perl, python, tcl...) pode ajudar um atacante a
comprometer o sistema da seguinte maneira:

 Permitir a ele fazer escalação de privilégios. Isto facilita, por exemplo, rodar
exploits locais no sistema se existe um depurador e compilador prontos para
compilar e testar.
 Fornecer ferramentas que poderiam ajudar um atacante a usar o sistema
comprometido como base de ataque contra outros sistemas.
É claro que um invasor com acesso ao shell local pode baixar suas próprias
ferramentas e executá-las, além disso o próprio shell pode ser usado para fazer
complexos programas. Remover software desnecessário não impedirá o problema mas
dificultará a ação de um possível atacante. Então, se você deixar disponíveis
ferramentas em um sistema de produção, estas podem ser usadas remotamente para
um ataque.
Configu rar a senha do L ILO ou GRUB

85
Segurança em Redes

Qualquer um pode facilmente obter uma linha de comando de root e alterar sua senha
entrando com o parâmetro <name-of-your-bootimage> init=/bin/sh no aviso de boot.
Após alterar a senha e reiniciar o sistema, a pessoa terá acesso ilimitado como usuário
root e poderá fazer qualquer coisa que quiser no sistema. Após este processo, você
não terá acesso root ao seu sistema, já que não saberá mais sua senha.
Para se assegurar que isto não ocorra, você deverá definir uma senha para o
gerenciador de partida. Escolha entre uma senha global ou uma senha para
determinada imagem.
Para o LILO, você precisará editar o arquivo de configuração /etc/lilo.conf e adicionar
uma linha password e restricted como no exemplo abaixo.
image=/boot/2.2.14-vmlinuz
label=Linux
read-only
password=mude-me
restricted
Quando terminar, re-execute o lilo. Caso omita restricted o lilo sempre perguntará por
uma senha, não importando se foram passados parâmetros de inicialização. As
permissões padrões
root e permite do somente
o acesso /etc/lilo.conf garantem
leitura permissões
para o grupo de leitura
do lilo.conf, e gravação
geralmente root.para o
Caso utilize o GRUB ao invés do LILO, edite o /boot/grub/menu.lst e adicione as
seguintes duas linhas no topo do arquivo (substituindo, é claro mude-me pela senha
designada). Isto evita que usuários editem os itens de inicialização. A opção timeout 3
especifica uma espera de 3 segundos antes do grub inicializar usando o item padrão.
timeout 3
password mude-me
Para fortalecer futuramente a integridade da senha, você poderá armazenar a senha
em um formato criptografado. O utilitário grub-md5-crypt gera um hash de senha que é
compatível com o algoritmo de senha encriptada pelo grub (md5). Para especificar no
grub que uma senha no formato md5 será usada, use a seguinte diretiva:
timeout 3
password --md5 $1$bw0ez$tljnxxKLfMzmnDVaQWgjP0
O parâmetro --md5 foi adicionado para instruir o grub a fazer o processo de
autenticação md5. A senha fornecida é uma versão encriptada md5 do mude-me. O uso
do método de senhas md5 é preferido em contrapartida da seleção de sua versão texto
plano.

86
Segurança em Redes

Gerenciando Usuári os
Cont as de Login
Algumas políticas de segurança podem forçar os administradores a entrar no sistema
através do console com seus usuários/senhas e então se tornar o superusuário (com o
su ou sudo). Esta política é implementada no Debian editando-se o arquivo
/etc/login.defs ou /etc/securetty quando utilizar PAM. Em:

 login.defs, editando a variável CONSOLE que define um arquivo ou lista de


terminais nos quais o login do root é permitido
 Securetty [6] adicionando/removendo os terminais nos quais o root tem
permissão de acesso. Se você deseja permitir somente acesso a console
local então você precisa por console, ttyX [7] e vc/X (se estiver usando
dispositivos devfs), você pode querer adicionar também ttySX [8] se estiver
usando um console serial para acesso local (onde X é um inteiro, você pode
querer ter múltiplas instâncias [9] dependendo do nível de consoles virtuais
que tem ativado no /etc/inittab [10]). Para mais informações sobre
dispositivos de terminais, leia o Text-Terminal-HOWTO
Quando utilizar PAM, outras alterações no processo de login, que podem incluir
restrições a usuários e grupos em determinadas horas, podem ser configurados no
/etc/pam.d/login. Uma característica interessante que pode ser desativada é a
possibilidade de fazer login sem senhas. Esta característica pode ser limitada
removendo-se nullok da seguinte linha:
auth required pam_unix.so nullok

Permissões de acesso
Módulos se Segurança do PAM

PAM é a parte principal da autenticação em um sistema Linux. PAM significa Pluggable


Authentication Modules ou Módulos de Autenticação Plugáveis/Modulares.
Originalmente, a autenticação no Linux era apenas via senhas criptografadas
armazenadas em um arquivo local chamado /etc/passwd. Um programa como o login
pedia
com o oarmazenado
nome do usuário
naquelee arquivo.
a senha,Secriptografava a senha
fossem iguais, e ocomparava
garantia o resultado
acesso à máquina.
Caso contrário, retornava erro de autenticação. Isto até funciona muito bem para o
programa login, mas, suponha que agora deseja-se usar isso também para
autenticação remota, ou seja, a base de usuários não está mais na mesma máquina,
mas sim em alguma outra máquina da rede, o chamado servidor de autenticação. Será
preciso mudar o programa login para que ele também suporte esse tipo de autenticação
remota.
Suponha também que surgiu um novo algoritmo de criptografia, muito mais avançado,
mais rápido, com criptografa melhor, etc., sendo que o desejo é usar esse novo
algoritmo. Deve-se, então, mudar novamente o programa login para que ele suporte
este novo algoritmo também. No Linux, muitos programas utilizam algum tipo de

87
Segurança em Redes

autenticação de usuários. Imagine se todos eles tivessem que ser reescritos cada vez
que se mudasse algum dos critérios de autenticação.
Para resolver este tipo de problema, a Sun® criou o PAM há alguns anos e liberou as
especificações em forma de RFC. O Linux derivou sua implementação do PAM a partir
deste documento. Com PAM, o aplicativo login deste exemplo teria que ser reescrito
apenas uma vez, justamente para suportar PAM. A partir de então, o aplicativo delega a
responsabilidade da autenticação para o PAM e não se envolve mais com isso.

Voltando aopara
criptografia exemplo anterior,
as senhas, no que
basta casoo módulo
de se querer utilizar
PAM seja um outro
modificado algoritmo
para de
que todos
os aplicativos automaticamente e de forma transparente passem a usufruir desta nova
forma de autenticação. PAM possui uma outra vantagem: é possível configurar a
autenticação de forma individual para cada aplicativo. Com isto é possível fazer com
que, por exemplo, um usuário comum possa usar os dispositivos de áudio do
computador desde que tenha se logado na máquina através do console. Se o login não
tiver sido feito no console (por exemplo, é um login remoto via SSH), este tipo de
acesso ao hardware será negado.
Praticamente todos os aplicativos do Linux que requerem algum tipo de autenticação
suportam PAM. Na verdade, não funcionam sem PAM. Toda a configuração está
localizada no diretório /etc/pam.d. Quando um aplicativo suporta PAM, ele necessita de
um arquivo de configuração neste diretório. A Figura ilustra como funciona a
autenticação com PAM usando o programa login como exemplo:

pam_nologin

O módulo pam_nologin é bastante simples, e muito útil. É uma forma rápida de


desabilitar o login de qualquer usuário que não seja o root. Para isto, basta criar o
arquivo /etc/nologin. Existindo este arquivo, o módulo pam_nologin vai sempre retornar
ERRO para usuários diferentes de root e exibir o conteúdo de /etc/nologin (onde se
deve colocar o motivo da proibição), ou seja, só o usuário root consegue se logar na

88
Segurança em Redes

máquina. Quando o arquivo for removido, a operação voltará ao normal, com usuários
comuns podendo se logar novamente.
Isto pode ser útil quando se quer fazer alguma manutenção no sistema, por exemplo,
situação em que logins de usuários são indesejáveis. Alguns aplicativos do próprio
Linux também podem criar este arquivo e depois removê-lo quando alguma operação
crítica for concluída.
Note que os usuários que já estiverem logados na máquina não são afetados pela
criação ou remoção do arquivo /etc/nologin.
Vamos fazer um teste, criamos o arquivo /etc/nologin
cd /etc
touch nologin
Agora vamos adicionar um aviso dentro deste arquivo
echo MANUTENCAO! > /etc/nologin
Então vamos tentar logar no sistema com qualquer usuário que não seja root:
O usuário admin tentou logar no sistema e recebeu o aviso de “MANUTENCAO”.

Para remover esta proteção, delete o arquivo /etc/nologin, e os usuários voltarão a logar
normalmente.
pam_cracklib

Este módulo é especialmente importante para a segurança pró-ativa. Colocado apenas


na classe password, o módulo vai verificar a senha do usuário antes que ela seja
trocada. Se for uma senha considerada fraca, ela será rejeitada e o usuário não
conseguirá trocar a senha. As verificações que o módulo faz atualmente são:
 palíndromo: a nova senha é um palíndromo (frase que tem o mesmo sentido da
esquerda para a direita ou ao contrário)?
 caixa: a senha nova é a antiga com apenas mudanças de
maiúsculas/minúsculas?


similar: a nova senha é muito similar à antiga? Esta verificação pode ser
controlada por um parâmetro que indica o número mínimo de caracteres
diferentes que a senha nova deve ter em relação à senha antiga. O valor padrão
é 10 ou metade do tamanho da senha atual, o que for menor.
 Senha repetida: se existir o arquivo /etc/security/opasswd com as senhas
anteriores do usuário, o módulo pam_cracklib vai também verificar se a senha
nova já não foi usada anteriormente. Esse arquivo de senhas antigas é
atualmente gerado apenas pelo módulo pam_unix, embora exista uma
discussão para se criar um módulo específico para esta tarefa (algo como
pam_saveoldpass) e remover esta funcionalidade do módulo pam_unix.
Os parâmetros normalmente utilizados com o módulo cracklib são:
retry=N

89
Segurança em Redes

"N" é o número de tentativas que o usuário poderá fazer para fornecer uma
senha considerada boa.
difok=N
"N" é o número de letras diferentes que a senha nova deve ter em relação à
senha antiga. Este parâmetro controla o comportamento da verificação do tipo
similar, visto há pouco. O valor padrão é 10 (e este é o valor alterado por "N" ou
metade do tamanho da senha atual), aquele que for o menor.
minlen=N
Tamanho mínimo da nova senha mais um. Além de contar a quantidade de
caracteres da senha nova, créditos também podem ser fornecidos com base na
quantidade de algarismos, caracteres maiúsculo-minúsculos e símbolos. Ou
seja, se o valor de minlen for 10, o usuário pode usar uma senha com menos do
que 10 caracteres, desde que, somando a quantidade de caracteres mais os
créditos, o valor final ultrapasse 10. Por exemplo:

password required /lib/security/pam_cracklib.so retry=3 minlen=10

Ele não vem instalador por padrão na máquina, então precisaremos instalar o programa

apt-get install libpam-cracklib


Agora adicionamos
Vamos utilizar este modulo na pratica, tentando mudar a senha do usuário “admin” para
“123”.

90
Segurança em Redes

Analisando a imagem, podemos verificar que para o modulo funcionar, retiramos o


comentário da linha “password required pam_cracklib.so” no arquivo
/etc/pam.d/common-password, salvamos o arquivo, e tentamos mudar a senha do
usuário admin.
Podemos verificar que o parâmetro passado para o arquivo common-password na linha
do cracklib esta “minlen=6” isto significa que a senha precisa ter no mínimo 6 digitos.
Isto evita que senhas fracas sejam quebradas por programas de bruteforce.

Gerenciando Servi ços


Segurança p or o bscuri dade (Ba nners)
Mudando o número da porta

Mudar o número da porta do ssh é uma ótima opção, pois poderíamos escapar de
scanners que varrem a internet buscando versões de ssh vulneráveis, mas felizmente,
a maioria deles somente procura na porta padrão “22” do ssh, então vamos enganar
estas tentativas, mudando a porta do ssh de 22 para 33000.

91
Segurança em Redes

Vamos então modificar a linha “Port 22” para “Port 33000” no arquivo
/etc/ssh/sshd_config como mostra a figura abaixo.

Não esqueça de liberar a porta 33000 no firewall quando ativar esta opção, pois se ela
estiver bloqueada o nenhuma usuário irá conseguir conectar via ssh.
Quando ativar esta opção, coloque a opção –P 33000 no comando ssh para ele
reconhecer que precisa conectar na porta 33000 e não na porta padrão 22.

Cont rolando permissão de ace sso a serviços

SSH mais seguro


O ssh é um pacote de programas cujo objetivo é aumentar a segurança de um sistema
de redes. Ele, basicamente fornece um substituto mais seguro para os programas
"remotos" - rsh, rlogin, rcp. Alem de ser uma boa alternativa para o telnet.
Vamos aprender como deixá-lo mais seguro ainda, com alguns ajustes, para evitar
ataques de bruteforce ou de scanners.
Desabilitar log in remoto de root

O ssh vem instalado por padrão, então vamos analisar o seu arquivo de configuração
/etc/ssh/sshd_config para evitar que o ssh aceite conexão root por padrão, ou seja,

92
Segurança em Redes

para conectar na máquina, precisaremos entrar com um usuário normal, e depois virar
super usuário.

Vamos modificar a linha “PermitRootLogin yes” para “PermitRootLogin no”


Com isto, evitamos caso, se o invasor tentar atacar o nosso ssh com bruteforce de
senha, ela consiga entrar no sistema diretamente como root.
Desabilitar a c have interativa de logi ns

Vamos o comando keygen para geração, manutenção e conversão de chave aleatória


para o protocolo
(SSH1) e DSA ou ssh.
ssh-keygen pode criar chaves RSA para o protocolo versão 1
RSA para a versão 2 (SSH2).
Tanto o administrador quanto os usuários podem gerar suas chaves.
As chaves do usuário ficam guardadas nos arquivos:

 ~/.ssh/identity, para protocolo 1 ou;


 ~/.ssh/id_dsa e ~/.ssh/id_rsa, para protocolo 2.

E as chaves do administrador ficam guardadas em /etc/ssh.

93
Segurança em Redes

Para as chaves privadas criadas, é criada uma chave pública de mesmo nome mais
sufixo .pub, que fica guardada na mesma pasta da chave privada.
Criamos então uma chave RSA para o usuário admin, com a senha “senai123”

No windows, podemos usar o PuTTygen, que esta disponível no site do putty.


Clique no botão Generate, e fique movendo o mouse ao redor do programa para ele
gerar uma estrutura randômica.

94
Segurança em Redes

Quando terminar, o programa irá mostrar a chave publica/privada que ele acabou de
gerar

Escolha uma senha, vamos usar a senha “senai123” , e clique em Save Public Key,
normalmente o nome será id_rsa.pub, agora faça o mesmo com a Private key, clique no
botão SAVE Private Key,e salve com o nome de id_rsa.ppk

95
Segurança em Redes

Agora envie a chave publica, para o servidor Linux, através do winscp e jogue a chave
para o diretório /home/admin/.ssh/
Precisamos mudar as opções para o host remoto no putty tambem para não aceitar a
opção “keyboard-interactive” e para ele utilizar a nossa chame privada que acabamos
de criar.

Após ter gerado as chaves, copiar a chave para o /home/admin via scp e mudar para
que o Putty utilize esta chave para conectar no servidor, vamos adicionar a chave
publica que geramos no windows, e que enviamos via winscp, no arquivo
.ssh/authorized_keys do servidor ssh do Linux.
Blacklist com o denyhost

O DenyHosts funciona através dos logs do SSH. Ele processa esses logs gerados e
verifica todas as tentativas de accesso, sendo ela as com usuários existentes mas com
senha errada ou usuários inexistentes.
Quando ele verifica um número X configurável de tentativas de login, esse IP que
tentou o acesso é adicionado ao arquivo /etc/hosts.deny , fazendo com que não consiga
acessar o servidor ssh (ou todos os serviços) novamente.
O programa verifica também a quantidade de tentativas de acesso através do root, e
após um número de tentativas erradas o host também é "banido".
Por exemplo, se alguem tenta logar o usuário senai@servidor por mais de 5 vezes
erroneamente, o DenyHosts bloqueará seu IP e você não conseguirá mais acessar.
(Você pode configurar esse número de tentativas para quando o login existe e quando
não existe em /etc/passwd)

96
Segurança em Redes

Além disso o DenyHosts arquiva os acessos que excederam o número de tentativas


padrão. Por exemplo, você configurou o número de tentativas aceitáveis como 2 e o
máximo como 5. O usuário senai@servidor errou 2 vezes a senha e acertou na terceira,
mas o limite era 5, ele irá arquivar esse login como que somente acertou a senha na
terceira tentativa.
Primeiramente vamos instalar o python2.4 e o python2.4-dev

Você pode encontrar a última versão disponível em http://denyhosts.sourceforge.net ,


pois ele não existe no repositório Debian.
Para nosso exemplo utilizaremos o DenyHosts-2.6.tar.gz
# tar xvzf DenyHosts-2.6.tar.gz
# cd DenyHosts-2.6
# python setup.py install
Temos agora que criar nosso arquivo de configuração. Vamos utilizar o exemplo
contido na instalação:
# cd /usr/share/denyhosts/
# cp denyhosts.cfg-dist /etc/denyhosts.cfg
Agora configure o /etc/denyhosts.cfg da forma que preferir. Segue abaixo o meu arquivo
de configuração:

97
Segurança em Redes

SECURE_LOG = /var/log/auth.log
HOSTS_DENY = /etc/hosts.deny
PURGE_DENY = 4d
PURGE_THRESHOLD = 2
BLOCK_SERVICE = sshd
DENY_THRESHOLD_INVALID = 3
DENY_THRESHOLD_VALID = 6
DENY_THRESHOLD_ROOT = 1
DENY_THRESHOLD_RESTRICTED = 1
WORK_DIR = /usr/share/denyhosts/data
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
HOSTNAME_LOOKUP=YES
LOCK_FILE = /var/run/denyhosts.pid
ADMIN_EMAIL = linuxar@linuxar.com.br
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report
SYSLOG_REPORT=YES
AGE_RESET_VALID=5d
AGE_RESET_ROOT=30d
AGE_RESET_RESTRICTED=30d
AGE_RESET_INVALID=12d
DAEMON_LOG = /var/log/denyhosts
DAEMON_SLEEP = 30s
DAEMON_PURGE = 1h
O exemplo de configuração é muito auto-explicativo caso você deseje saber
informações adicionais.
Agora o que precisamos é rodar o daemon do DenyHosts. Vamos usar também o
exemplo.
# cd /usr/share/denyhosts/
# cp daemon-control-dist /etc/init.d/denyhosts
(a pasta init.d varia de distribuições, mas não é obrigatório ficar nessa pasta, desde q
você saiba o caminho)
Edite-o com seu editor de texto preferido. Segue abaixo o meu exemplo ( somente o
cabeçalho de configuração, não esqueça do resto do script que fica abaixo ):
#!/usr/bin/env python
DENYHOSTS_BIN = "/usr/bin/denyhosts.py"
DENYHOSTS_LOCK = "/var/run/denyhosts.pid"
DENYHOSTS_CFG = "/etc/denyhosts.cfg"
PYTHON_BIN = "/usr/bin/env python"
Vamos agora dar atributo de execução a esse arquivo e que o usuário root seja dono:
# chown root:root /etc/init.d/denyhosts
# chmod +x /etc/init.d/denyhosts

98
Segurança em Redes

Só que falta agora é configurarmos para que ele inicie automaticamente com o sistema.
Isso varia de distribuição para distribuição.
Debian Based: update-rc.d denyhosts defaults

Modo enjaula do (chroot)


O root é um usuário que possui muito poder e esse poder muitas vezes pode levar ao
comprometimento do sistema, como por exemplo, em uma invasão bem sucedida.
O que iremos mostrar aqui, é um utilitário chamado Jail, ele pode ser entendido como
uma “prisão”, pois é um ambiente criado cm chroot que restringe processos a aquele
ambiente.
Por exemplo, um processo que esta rodando dentro do jail não pode afetar outros
processos que estão fora do jail.
Um ambiente chroot restringe algumas coisas. Se um usuário está dentro do jail, ele
não conseguirá killar processos de fora do ambiente, não poderá também montar
sistemas de arquivos ou deletar partições com o fdisk.
Além disto, também não podem fazer as famosas chamadas de sistema (system calls)
para tentar sair do jail.

Por exemplo,
de root, se alguém
e execute um rm invadir
–rf /, elea somente
máquina,irá
rode um exploit
apagar local ecriado
o ambiente consiga
peloprevilégios
jail, e não
todo o sistema Linux do seu servidor.
Jail é um ótimo modelo de segurança, extremamente eficiente quando se tem um
servidor compartilhado, e que rodam diversos aplicativos que constantemente
apresentam vulnerabilidades como o Bind, apache, sendmail entre outros.

Gerenciando Sistema
Gerenciando arquivo s
Arquivos co m permis são de Suid bit

Mesmo não permitindo que arquivos com permissão de Suid bit ativados não sejam
aceitos nas partições, fica a seguinte pergunta:
Será que todos os arquivos que tem permissão de Suid bit por padrão são necessários
no meu servidor?
O que deve ser feito?

 Fazer um levantamento de todos os arquivos do sistema que tem permissão


de suid bit e deixar isso registrado em uma lista.
 Tirar todas as permissões de suid bit dos arquivos no sistema.

99
Segurança em Redes

 Colocar permissão de suid bit somente nos arquivos que realmente são
necessários em seu servidor.

chattr e lsattr
O comando chattr modifica atributos de arquivos e diretórios. Os atributos definem
características especiais para os arquivos para o sistema de arquivos ext2.
Não confunda atributos de arquivo com permissões de acesso, os atributos são
diferentes e definem outras características especiais para os arquivos/diretórios
especificados.
chattr [opções] [atributos] [arquivos/diretórios]
Onde:
Arquivos/diretórios que terão os atributos modificados. Podem ser usados coringas.
Opções:
 -R - Modifica atributos em subdiretórios;
 -V - Mostra detalhes sobre a modificação de atributos.
Os atributos de arquivos/diretórios podem ser especificados da seguinte maneira:


+ - Adiciona o atributo
 - - Remove o atributo
 = - Define o atributo exatamente como especificado
Os atributos são os seguintes:

 A - Não modifica à hora de acesso de arquivos. Poder aumentar


consideravelmente o desempenho em Notebooks devido à diminuição de I/O
no disco rígido. Quando especificada em diretórios, faz com que todos os
arquivos e subdiretórios residentes nele não tenham a hora de acesso
modificada.
 a - Append-Only - Arquivos com este atributo podem somente ser gravados
em modo incrementais (o conteúdo poderá somente ser adicionado ao final
do arquivo). Eles não poderão ser removidos, renomeados e novos links não
poderão ser criados para estes arquivos. Em diretórios faz com que os
arquivos sejam apenas adicionados. Somente o root pode especificar ou
retirar este atributo.
 c - Permite compactação nos arquivos especificados de forma transparente
para o usuário. Durante a leitura, o kernel retorna dados descompactados e
durante a gravação os dados são compactados e gravados no disco.
 d - Este atributo não é usado pelo kernel, mas faz com que o programa
dump evitar backup dos arquivos marcados com este atributo.
 i - Imutável - Arquivos imutáveis não podem ser modificados, os dados
também não podem ser gravados para estes arquivos, não podem ser
removidos, renomeados. Até mesmo o usuário root não poderá modificar
estes arquivos. Em diretórios, faz com que arquivos não possam ser

100
Segurança em Redes

adicionados ou apagados. Somente o usuário root pode especificar ou retirar


este atributo.
 s - O arquivo especificado é marcado como "apagamento seguro"; quando o
arquivo é apagado, seus blocos são zerados e gravados de volta no disco
(eliminando qualquer possibilidade de recuperação).
 S - Faz a gravação imediatamente para o arquivo especificado. É como
especificar a opção "sync" na montagem do sistema de arquivos ext2, mas
afeta somente os arquivos especificados. Não tem efeito em diretórios.

u - O arquivo especificado é marcado como recuperável. Quando o arquivo é
apagado, seu conteúdo é salvo para permitir futura recuperação.
Os atributos de arquivos/diretórios são visualizados através do utilitário lsattr.
Exemplos:

 chattr +AacdiSsu teste.txt - Adiciona todos os atributos


 chattr =ASs teste.txt - Define os atributos para "ASs"
 chattr +i -A teste.txt - Retira o atributo "A" e adiciona "i"
 chattr = teste.txt - Retira todos os atributos
Para o nosso exemplo utilizamos o Debian 3.1 sob o kernel 2.6.8-2, que vem por
padrão na instalação, mas você pode utilizar qualquer Kernel da série 2.6.

O problema é que o chattr funciona por padrão somente em ext2 e ext3, para funcionar
em RaiserFS como é o nosso caso, precisaremos recompilar o kernel.
Para os usuário da série 2.4 será necessário aplicar um patch para que possamos
habilitar o suporte no kernel, embora eu julgue melhor utilizar a série 2.6, pois
aparentemente os patches estão desatualizados. Mas caso queira tentar, basta
acessar:

 http://acl.bestbits.at
O lsattr lista atributos de um arquivo/diretório. Os atributos podem ser modificados
através do comando chattr.
lsattr [opções] [arquivos/diretórios]

Onde:
Arquivos/diretórios que deseja listar os atributos. Podem ser usados coringas.

Opções:

 -a - Lista todos os arquivos, incluindo ocultos (iniciando com um ".").


 -d - Lista os atributos de diretórios ao invés de listar os arquivos que ele
contém.
 -R - Faz a listagem em diretórios e subdiretórios.
 -v - Mostra versões dos arquivos.

101
Segurança em Redes

Caso seja especificado sem parâmetros, o lsattr listará os atributos de todos os


arquivos e diretórios do diretório atual. O lsattr mostrará mensagens de erro caso seja
usado em um diretório de pontos de montagem ou arquivos que não sejam ext2.
No caso de uma invasão, muitos binários serão afetados, com o comando lsattr
podemos verificar quais binários sofreram modificações.
Por exemplo, suponhamos que o arquivo /sbin/teste foi modificado por alguma rootkit,
poderíamos descobrir facilmente como abaixo:

Quando verificamos o diretório /bin, verificamos que o binário teste, possui atributos que
não são padrão, sendo assim, se uma invasão bem sucedia acontecesse,
provavelmente muitos binários teriam os seus atributos modificados como aconteceu
com o binário em nosso exemplo.

Controlando processos
Levantamento d e Processos
Quando um sistema é comprometido, na maioria das vezes, o invasor irá instalar uma
rootkit para facilitar a entrada dele novamente no futuro.
Esta rootkit irá modificar os binários, ps , netstat , ls etc. Tudo para que quando o
Administrador verificar quem esta na máquina, e executar por exemplo um “who” ou um
“ps”, ele não irá saber que tem alguém não autorizado conectado na máquina, pois os

102
Segurança em Redes

binários foram modificados pela rootkit especialmente para não mostrar que o invasor
esta lá.
Existem outros softwares que podem ajudar nesta tarefa, ferramentas como o losf,
lsattr,rkhunter, trojan-scan etc.
Vamos mostrar as melhores e mais eficientes para cada tipo de problema enfrentado
em uma invasão.

LSOF – List Open Files


O comando lsof é utilizado para mostrar os arquivos que estão abertos no sistema. Um
arquivo aberto pode ser um arquivo comum, um diretório, uma biblioteca, um stream, ou
um soquete de rede.
Quando o invasor entrar em um servidor, é quase certo que o binário netstat será
infectado e modificado para tornar a ação do hacker invisível. É ai que entra o lsof, pois
ele nos ajudará a identificar estes problemas.
O LSOF é um excelente utilitário para gerenciamento de conexões de rede em seu
sistema UNIX. De qualquer forma vários utilitários podem desempenhar funções
similares, mas nenhum é tão robusto como LSOF. Com LSOF você pode listar portas
abertas, identificar conexões que foram feitas no seu sistema, e determinar que
recursos um processo está usando. Não somente isto, mas você também pode
determinar que processos um usuário em particular tem e encontrar informações
detalhadas sobre o uso de arquivos e diretórios.
Rodando o LSOF sem opções irá exibir todos os arquivos abertos pertencentes a todos
os processos ativos na máquina. Isto geralmente exibe uma quantidade enorme de
dados, então sugiro que você filtre sua busca usando as opções disponíveis.
Algumas opções disponíveis
$ lsof -u usuário
Mostra os arquivos abertos identificado pelo nome de usuário, representado aqui pelo
identificador usuário.
$ lsof -g n

Mostra os arquivos abertos por um determinado grupo, identificado aqui numericamente


pela variável n.
$ lsof -p n

Mostra os arquivos abertos por um determinado número de processo (PID),


representado aqui pela variável n.
As opções também podem ser combinadas:
$ ls -u usuário -g n

lsof –i [protocolo][@nomehost|endereçohost][:serviço|porta]
Por padrão, esta opção lista informações detalhadas sobre cada conexão, como o
comando ou programa envolvido, o PID, o usuário que está rodando o comando, o FD

103
Segurança em Redes

(File Descriptor), o tipo de conexão, o número do dispositivo, o protocolo da Internet e o


nome do arquivo ou endereço da Internet. A opção "-i" pode ser útil quando você está
querendo manter a segurança de sua máquina. Você pode determinar quais portas
estão abertas e escutando para conexões externas. LSOF poderá também associar
elas com um nome de programa. Com isso você pode identificar serviços
desnecessários, que são um risco de segurança e desativá-los
Vamos listar todas as informações da conexão do host 192.168.1.3 que esta conectado
via ssh na porta 22 do nosso servidor.
Observando a figura, percebemos que todas as conexões srcinadas do ip 192.168.1.3
são observadas e listadas.
O LSOF possui uma sintaxe que mostra todas as conexões ativas, e não somente o de
um determinado host, como pode analisar na figura abaixo.

Monitoramento
Organiz ando os Log s
Sistemas Unix-like já possuem por padrão um sistema excelente para registro de logs,
comumente representado pelo syslogd e klogd, que são os daemons responsáveis por
oferecer este suporte, registrando mensagens de diferentes aplicativos e serviços, além
do kernel em diferentes locais de acordo com suas configurações.
Apesar de ser um sistema excelente, geralmente os logs gerados e registrados por
padrão não são suficientes ou completos o bastante para a verificação real de um dado
servidor, além de não proporcionarem uma maneira prática e menos monótona de
acompanhamento e leitura, por isso recorremos a ferramentas livres disponíveis.
Syslog-ng

O syslog-ng é um execelente programa desenvolvido por Balázs e colaboradores da


comunidade, sendo uma alternativa ao bom e velho syslog, encontrado como padrão na
maioria dos sistemas unix conhecidos hoje.
A principal vantagem do syslog-ng é que ele possue fácil e flexível configuração,
possibilidade de filtragem de conteúdo através de regex (expressões regulares).
Possue uma melhor performance para logging remoto e integridade de dados.

Configuração
Com o software instalado, vamos localizar o arquivo de configuração padrão do syslog-
ng, que será o /etc/syslog-ng/syslog-ng.conf.
Antes de customizar o syslog-ng vamos entender como ele funciona , primeiramente
deveremos ter uma fonte de registro (chamada source ), de onde o syslog-ng irá obter
as mensagens. Então teremos os filtros que serão aplicados às mensagens obtidas
dessa fonte (lembre-se que essa é uma das qualidades mais importantes do syslog-
ng ) e, finalmente, um destino para o registro das mensagens, mais comumente
representado por um arquivo.
Deve se considerar que o responsável por organizar e conectar fonte ( source ), filtros
(filter ) e destino (destination ) é a diretiva log .

104
Segurança em Redes

Vamos entender melhor cada uma delas:


Source: indica a fonte ou as fontes de onde o syslog-ng poderá obter as mensagens do
sistema para processamento e registro.
Sintaxe: source <identificador> { driver(parâmetros); driver(parâmetros);...};
Filters: Responsáveis por rotear as mensagens dentro do syslog-ng de acordo
expressões e funções (host(), match(), level(), program(), facility()).
Sintaxe: filter <identificador> {expressão; };
Destination: Após passar pela fase de filtragem e, de acordo com a regra
correspondente a uma dada mensagem, o destination será pura e simplesmente o
indicador do destino de registro dessa mensagem, podendo ser não apenas um arquivo
como também um banco de dados ou um host remoto.
Sintaxe: destination <identificador> {driver-destino(parâmetros); driver-
destino(parâmetros); ...};
Iremos então dar um exemplo prático de arquivo syslog-ng.conf genérico para Linux
explicativo para entendermos da melhor forma possível como criar nosso próprio
arquivo de configurações:

# Opções par a o f unci onament o do sysl og- ng


options { sync (0); time_reopen (10); use_dns (no); use_fqdn (no); create_dirs (yes);
# Font e de obtenção das mensagens

source src { unix-stream(“/dev/log”); unix-stream(“/var/lib/named/dev/log”


maxconnections(10)); internal(); };
# Conf i gur ação de dest i nos

destination authlog {file(“/var/log/messages.auth”);};


destination syslog {file(“/var/log/messages.syslog”);};
destination cron {file(“/var/log/crontab”);};
destination daemon {file(“/var/log/messages.daemon”); };
destination kern { file(“/var/log/messages.kern”); };
destination lpr {file(“/var/log/messages.lpr”); };
destination maillog { file(“/var/log/maillog”); };
destination mail {file(“/var/log/maillog”); };
destination user {file(“/var/log/maillog”); };
destination uucp { file(“/var/log/messages.uucp”); };
destination messages {file(“/var/log/messages”); };
destination console { usertty(“root”); };
destination console_all { file(“/dev/tty8”); };
destination debug { file(“/var/log/debug”); };
destination hostremoto {tcp(“127.0.0.1” port(6666));};
# Conf i gur ação de f i l t r os

filter f_authpriv {facility(auth, authpriv);};


filter f_syslog {not facility(auth, authpriv) and not facility(mail);};

105
Segurança em Redes

filter f_cron {facility(cron);};


filter f_daemon {facility(daemon);};
filter f_kern {facility(kern);};
filter f_lpr {facility(lpr);};
filter f_mail {facility(mail);};
filter f_user {facility(user);};
filter f_uucp {facility(cron);};
filter f_news {facility(news);};
filter f_debug {not facility(auth, authpriv, news, mail);};
fillterf_info
filter f_emergency {level(emerg);};
{level(info);};
filter f_notice {level(notice);};
filter f_warn {level(warn);};
filter f_crit {level(crit);};
filter f_err {level(err);};
filter f_cother {level(debug, info, notice, warn) or facility(daemon, mail);};
# Di r et i vas Log

log { source(src); filter(f_authpriv); destination(authlog); };


log { source(src); filter(f_syslog); destination(syslog); };
log { source(src); filter(f_cron); destination(cron); };
log { source(src); filter(f_daemon); destination(daemon); };
log { source(src); filter(f_kern); destination(kern); };
log { source(src); filter(f_lpr); destination(lpr); };
log { source(src); filter(f_mail); destination(mail); };
log { source(src); filter(f_user); destination(user); };
log { source(src); filter(f_uucp); destination(uucp); };
log { source(src); filter(f_mail); destination(maillog); };
log { source(src); filter(f_debug); destination(debug); };
log { source(src); filter(f_messages); destination(messages); };
log { source(src); filter(f_emergency); destination(console); };
log { source(src); destination(hostremoto); };
Começamos configurando as opções de funcionamento do syslog-ng. A lista de opções
possíveis é bem mais vasta do que as que utilizamos, incluindo possibilidades de
controle de permissões (perm) e ownership (owner, group) de arquivos, porém utilizei
apenas algumas mais usuais:
sync : Indica o número de linhas a serem inseridas no buffer antes de serem
registradas. No nosso caso nenhuma.
time_reopen: tempo em segundos que nosso daemon deve aguardar antes que uma
conexão perdida seja restabelecida.
use_dns: Permite a utilização ou não do resolvedor de nomes locais para o registro em
logs. Nesse caso selecionei 'no' para evitar possíveis ataques Denial of Service (DoS)
gerados pelo alto tráfego do servidor.
use_fqdn: Possibilita adicionar o nome completo de uma máquina ao invés de apenas
seu hostname. Essa opção pode ser útil no caso de registro remoto de diversos
servidores de redes diferentes.
create_dirs: Permite que diretórios dos arquivos de destino dos registros possam ser
criados caso nao existam.

106
Segurança em Redes

Logo após configurarmos as opções de funcionamento de nosso syslog-ng, partimos


para a indicação da fonte (source) de onde ele irá obter as mensagens a serem
registradas.
No caso de nosso exemplo para Linux, indicamos ao syslog-ng que obtenha as
mensagens do sistema através do dispositivo /dev/log e /var/lib/named/dev/log. O
primeiro para mensagens de serviços de nossa máquina e o segundo específico para
mensagens de um servidor DNS chrooted, sendo que nesse segundo caso também
utilizei a opção maxconnections(), que só pode ser utilizado com unix-stream e limita o
número de conexões simultâneas abertas afim de evitarmos DoS.
Poderíamos também utilizar um outro identificador para a fonte chrooted caso queira
aplicar outras opções, por exemplo:
source chrooted_jail { unix stream("/var/lib/named/dev/log"maxconnections(10));
Após escolhermos as fontes de onde o syslog-ng obterá as mensagens a serem
registradas, partimos para a configuração dos destinos e filtros.
Primeiramente identificamos cada um dos destinos (a identificação será importante
posteriormente na utilização da diretiva log) e, nesse exemplo, utilizamos o driver file,
um dos mais importantes do syslog-ng (e mais utilizados), que nos permite registrar as
mensagens em um arquivo do sistema e também o usertty, que permite que as
mensagens sejam enviadas ao terminal em que determinado usuário esteja logado (no
nosso caso o root). É claro que não serão todas as mensagens enviadas ao console do
usuário root, iremos utilizar as funcionalidades de filtragem do syslog-ng para que
apenas as críticas sejam.
Utilizamos nesse arquivo também o destination com a opção para enviarmos logs para
um ou mais servidores remotos
destination hostremoto {tcp("127.0.0.1" port(6666));};
Indicamos o protocolo, o host e a porta. O syslog-ng possibilita a utilização de tcp ou
udp, por isso devo lembrar que o leitor deve verificar se a porta utilizada para escuta já
não está sendo utilizada (nesse nosso caso, 6666 corresponde à porta reservada para
serviços IRC, desabilitados nesse servidor). Em nosso exemplo e através dessa opção,
podemos fazer com que o nosso syslog-ng envie mensagens a um host remoto de
forma criptografada através de um forwarding ssh ou stunnel por exemplo, por isso da
utilização de 127.0.0.1 como host destino. Por isso a verificação local da porta em uso
ou não
Antes de iniciarmos a utilização do syslog-ng após sua configuração, devemos
desabilitar em nosso sistema os serviços syslogd e klogd para evitarmos quaisquer
conflitos, podemos realizar esta tarefa com o rcconf. Logo após, basta executarmos o
binário do syslolg-ng:
rkhunter
O rkhunter é uma ferramenta muito útil para verificar se o sistema esta infectado com
Trojans,rootkits e outros problemas de segurança Instale a ferramenta pelo mirror da
rootkit.nl
wget http://downloads.rootkit.nl/rkhunter-1.2.9.tar.gz

107
Segurança em Redes

Agora vamos rodar e verificar os tipos de rootkits ou falhas de segurança que ele
encontrará.

Ele começa a fazer uma checagem completa de todo o estado do sistema

108
Segurança em Redes

Verificam as portas usadas pelos rootkits mais famosos

Verifica se o sistema possui alguma aplicação antiga que precisa ser atualizada

109
Segurança em Redes

E finalmente o relatório.

Em nosso caso, ele somente apresentou 1 aplicação que pode estar vulnerável, que é a
GnuPG, que possui uma versão mais nova, então por este motivo, ele avisou como
aplicação vulnerável.
Vamos fazer mais um teste, adicionamos mais um usuário ao sistema, e verificar se o
rkhunter percebe esta mudança

110
Segurança em Redes

O rkhunter percebeu a modificação, e avisou o administrador, isto é muito importante


pois qualquer arquivo que sofrer modificação, seja ela ocasionada por uma invasão ou
não, o administrador fica sabendo.

111
Segurança em Redes

Rede Sem Fio

Definição
A rede sem fios (wifi / Wireless network) é uma tecnologia que permite dois ou mais
computadores comunicarem entre si usando protocolos de rede standard sem o recurso
dos cabos.

WLAN
As redes locais sem fio (WLANs) constituem-se como uma alternativa, ou mesmo
extensão, às redes convencionais com fio, fornecendo as mesmas funcionalidades,
mas de forma flexível devido à diferença do meio de transmissão, conforme mostrado
na figura abaixo.

Tipos
Abaixo os tipos mais comuns de rede sem fio.

112
Segurança em Redes

AD Hoc
Um tipo importante de rede móvel é a rede ad hoc, também conhecida como MANET
(Mobile Ad hoc NETwork), ou também IBSS, onde os dispositivos são capazes de
trocar informações diretamente entre si.
Uma topologia ad-hoc é aquela em que uma LAN é criada apenas pelos próprios
dispositivos sem fio, sem controlador central ou ponto de acesso. Ao contrário do que
ocorre em redes convencionais, não há pontos de acesso, ou seja, não existem
epontos decomo
conectada, concentração
demonstrae aos nósabaixo
figura dependem uns dos outros para manter a rede

Infraestruturada
Uma topologia infra-estruturada é aquela que estende uma LAN cabeada existente a
dispositivos sem fio por meio de um ponto de acesso.
O ponto de acesso liga a LAN sem fio e a cabeada, e atua como um controlador central
para a LAN sem fio. O ponto de acesso coordena transmissão e recepção de vários
dispositivos sem fio em um intervalo específico; o intervalo e número de dispositivos
depende do padrão móvel usado e do produto do fornecedor.
No modo infraestruturado, pode haver um ponto de acesso (BSS) para uma área
pequena, como uma única casa ou um edifício pequeno ou, vários pontos de acesso
(ESS) para cobrir uma área grande, conforme mostrado na figura abaixo.

113
Segurança em Redes

Ameaças e Vulnerabilidades
Riscos Internos
Por padrão, alguns equipamentos possuem configurações já propícias para eventuais
ataques, ocasionando os chamados riscos internos, estes, são gerados por má
configuração ou instalação de dispositivos ou associação acidental, tais como:

WLANs grampeáveis ( Rogue WLANs): Ocorre devido à má instalação, em
duas formas. O endereço MAC é duplicado, desta forma o intruso tem
acesso à rede cabeada (em redes infraestruturadas) através do AP ou ainda
possuir acesso a uma rede sem fio (em redes ad-hoc). Outra forma é um AP
não utilizar criptografia e não levar em conta a área de cobertura do local
fazendo com que este envie seu SSID em broadcast, expondo assim a rede.
 Configurações inseguras: A simples instalação de uma VPN não garante
uma segurança satisfatória, entretanto, várias empresas simplesmente
instalam e não configuram adequadamente. Todas as brechas existentes –
grandes ou pequenas – podem ser exploradas. Configurações padrões,
como a do SSID, aonde o broadcast vem ativado, fraca ou nenhuma
codificação, senhas padrões, ausência de autenticação podem transformar
um AP em um gateway para uma rede.
 Associações acidentais: Causado quando a força do sinal é muito grande e
auxiliado por plataformas
automaticamente a uma como o Windows
rede quando estaXP,
é onde associa
passível e se conexão
de uma conecta
(atualmente, já é necessária uma intervenção do usuário). Outro fator
importante é que mesmo sabendo da existência do dispositivo estas pessoas
não sabem ao certo como configurar, manipular e gerenciá-lo. Assim sendo,
existe uma grande possibilidade deste dispositivo se associar a outro
dispositivo, sem o consentimento ou mesmo conhecimento do usuário. Uma
forma de minimizar este tipo de risco que as redes sem fio estão expostos
seria através da configuração manual do dispositivo ou ao menos não
permitir que o dispositivo atue em modo ad hoc.
 Vulnerabilidades no WEP: Inerente ao WEP há falhas tanto nos no algoritmo
como no protocolo IEEE 802.11.

Riscos Externos
Os riscos externos, diferentemente dos internos, são ocasionados devido à interação
direta do invasor que se aproveita das vulnerabilidades de uma WLAN. Muitos ataques
inerentes a redes sem fio, são devidos aos riscos que serão apresentados:

 Espionagem: devido ao meio de transmissão, invasores podem facilmente


ter acesso às mensagens sem métodos de codificação. Mesmo mensagens
codificadas por algoritmos como o WEP, podem ser decodificadas, como já
descrito anteriormente. Este risco é semelhante ao uso de sniffers em redes
cabeadas, quando um usuário já conectado a um domínio deseja monitorar o
tráfego. Contudo, em redes sem fios, o fato do invasor não precisar estar
fisicamente conectado ao meio, torna esse risco mais complicado,
introduzindo assim uma falha ainda não relatada, a impossibilidade de banir
um usuário não autenticado. Não há meios de prevenção sobre a intenção

114
Segurança em Redes

de um usuário. Formas de tentar diminuir este risco é o uso de VPNs e IDS,


que serão ainda comentados.
 Wardriving - O termo wardriving foi escolhido por Peter Shipley
(http://www.dis.org/shipley/) para batizar a atividade de dirigir um automóvel
à procura de redes sem fio abertas, passíveis de invasão. Para efetuar a
prática do wardriving, são necessários um automóvel, um computador, uma
placa Ethernet configurada no modo "promíscuo" (o dispositivo efetua a
interceptação e leitura dos pacotes de comunicação de maneira completa ),
e um tipo de antena, que pode ser posicionada dentro ou fora do veículo
(uma lata de famosa marca de batatas fritas norte-americana costuma ser
utilizada para a construção de antenas) . Tal atividade não é danosa em si,
pois alguns se contentam em encontrar a rede wireless desprotegida,
enquanto outros efetuam login e uso destas redes, o que já ultrapassa o
escopo da atividade. Tivemos notícia, no ano passado, da verificação de
desproteção de uma rede wireless pertencente a um banco internacional na
zona Sul de São Paulo mediante wardriving, entre outros casos
semelhantes. Os aficionados em wardriving consideram a atividade
totalmente legítima.

 Warchalking - Inspirado em prática surgida na Grande Depressão norte-


americana, quando andarilhos desempregados (conhecidos como "hobos")
criaram uma linguagem de marcas de giz ou carvão em cercas, calçadas e
paredes, indicando assim uns aos outros o que esperar de determinados
lugares, casas ou instituições onde poderiam conseguir comida e abrigo
temporário, o warchalking é a prática de escrever símbolos indicando a
existência de redes wireless e informando sobre suas configurações. As

115
Segurança em Redes

marcas usualmente feitas em giz em calçadas indicam a posição de redes


sem fio, facilitando a localização para uso de conexões alheias pelos
simpatizantes da idéia.

Medi das de segur ança


Access Control List, esta é uma prática herdada das redes cabeadas e dos
administradores de redes que gostam de manter controle sobre que equipamentos
acessam sua rede.
O controle consiste em uma lista de endereços MAC dos adaptadores de rede que se
deseja permitir a entrada na rede sem fio. Seu uso é bem simples e apesar de técnicas
de MAC Spoofing serem hoje bastante conhecidas é uma prática de segurança
razoável e pode ser usado em conjunto com qualquer outro padrão, como WEP, WPA
etc.
A lista pode ficar no ponto de acesso ou em um PC ou equipamento de rede cabeada, e
a cada novo cliente que tenta se conectar seu endereço MAC é validado e comparado
aos valores da lista. Caso ele exista nesta lista, o acesso é liberado.
Esta prática, embora não provenha muita segurança, é usada para dificultar o uso de
endereços MAC repetidos que ocorre em ataques como o MAC Spoofing e o ARP
Poisoning.

116
Segurança em Redes

Bluetooth
O nome Bluetooth foi escolhido em homenagem ao rei da Dinamarca Harald Blatand,
que era conhecido como Harald Bluetooth. Esse apelido lhe foi dado por ele possuir
uma coloração azulada em seus dentes. O apelido foi usado para esta tecnologia pelo
fato de Harald Bluetooth ter ficado conhecido como unificador da Dinamarca, logo o
significado de Bluetooth é unificação.

É usado para comunicação entre pequenos dispositivos de uso pessoal, como PDAs,
telefones celulares (telemóveis) de nova geração, computadores portáteis, mas também
é utilizado para a comunicação de periféricos, como impressoras, scanners, e qualquer
dispositivo dotado de um chip Bluetooth.
Um dos problemas de segurança do Bluetooth é o Bluesnarfing, consiste em surrupiar
informações dos aparelhos alheios. Basta que o seu celular esteja com o bluetooth
ligado e em modo “discoverable” para que uma pessoa mal-intencionada nas
proximidades possa invadi-lo e roubar o conteúdo de sua agenda e catálogo de
endereços, por exemplo. O pior é que a expressão “nas proximidades” não é
exatamente verdadeira. Embora o alcance típico de um celular bluetooth seja de 10 m e
de um laptop chegue a 100 m, isso não é obstáculo para a criatividade humana.

Dicas de Segurança
 Desativar o Bluetooth logo apos a compra de um novo aparelho pois alguns
telefones já saem de fábrica habilitados;
 Só habilitar o Bluetooth na hora de fazer a transferência de dados;
 Mudar o código PIN usado para a conexão Bluetooth;
 Usar o modo Stealth (invisível) pois o aparelho fica com a conexão Bluetooth
ativa, mas sem ser visto por outros;

117
Segurança em Redes

Firewall

Definição
O Firewall é um programa que como objetivo proteger a máquina contra acessos
indesejados, tráfego indesejado, proteger serviços que estejam rodando na máquina e
bloquear a passagem de coisas que você não deseja receber (como conexões vindas
da Internet para sua segura rede local, evitando acesso aos dados corporativos de uma
empresa ou a seus dados pessoais).

Aplicação
O iptables é um firewall a nível de pacotes e funciona baseado no endereço/porta de
srcem/destino do pacote, prioridade, etc. Ele funciona através da comparação de
regras para saber se um pacote tem ou não permissão para passar. Em firewalls mais
restritivos, o pacote é bloqueado e registrado para que o administrador do sistema
tenha conhecimento sobre o que está acontecendo em seu sistema.
Ele também pode ser usado para modificar e monitorar o tráfego da rede, fazer NAT
(masquerading, source nat, destination nat), redirecionamento de pacotes, marcação de
pacotes, modificar a prioridade de pacotes que chegam/saem do seu sistema,
contagem de bytes, dividir tráfego entre máquinas, criar proteções anti-spoofing, contra
syn flood, DoS, etc. O tráfego vindo de máquinas desconhecidas da rede pode também
ser bloqueado/registrado através do uso de simples regras.
As possibilidades oferecidas pelos recursos de filtragem iptables como todas as
ferramentas UNIX maduras dependem de sua imaginação, pois ele garante uma grande
flexibilidade na manipulação das regras de acesso ao sistema, precisando apenas
conhecer quais interfaces o sistema possui, o que deseja bloquear, o que tem acesso
garantido, quais serviços devem estar acessíveis para cada rede, e iniciar a construção
de seu firewall.
Caracterí sticas do firewall iptables
 Especificação de portas/endereço de srcem/destino
 Suporte a protocolos TCP/UDP/ICMP (incluindo tipos de mensagens icmp)
 Suporte a interfaces de srcem/destino de pacotes
 Manipula serviços de proxy na rede

118
Segurança em Redes

 Tratamento de tráfego dividido em chains (para melhor controle do tráfego


que entra/sai da máquina e tráfego redirecionado.
 Permite um número ilimitado de regras por chain
 Muito rápido, estável e seguro
 Possui mecanismos internos para rejeitar automaticamente pacotes
duvidosos ou mal formados.
 Suporte a módulos externos para expansão das funcionalidades padrões
oferecidas pelo código de firewall
 Suporte completo a roteamento de pacotes, tratadas em uma área diferente
de tráfegos padrões.
 Suporte a especificação de tipo de serviço para priorizar o tráfego de
determinados tipos de pacotes.
 Permite especificar exceções para as regras ou parte das regras
 Suporte a detecção de fragmentos
 Permite enviar alertas personalizados ao syslog sobre o tráfego
aceito/bloqueado.
 Redirecionamento de portas
 Masquerading

Suporte
único IP aouSNAT
faixa (modificação
de IP's). do endereço de origem das máquinas para um
 Suporte a DNAT (modificação do endereço de destino das máquinas para
um único IP ou fixa de IP's)
 Contagem de pacotes que atravessaram uma interface/regra
 Limitação de passagem de pacotes/conferência de regra (muito útil para criar
proteções contra, syn flood, ping flood, DoS, etc).
Tipos de firewalls

Existem basicamente dois tipos de firewalls:

 Nível de aplicação - Este tipo de firewall analisam o conteúdo do pacote para


tomar suas decisões de filtragem. Firewalls deste tipo são mais intrusivos
(pois analisam
controle o conteúdo
relacionado de tudo do
com o conteúdo quetráfego.
passa Alguns
por ele) e permitem
firewalls a nívelum
de
aplicação combinam recursos básicos existentes em firewalls a nível de
pacotes combinando as funcionalidade de controle de tráfego/controle de
acesso em uma só ferramenta. Servidores proxy, como o squid, são um
exemplo deste tipo de firewall.
 Nível de pacotes - Este tipo de firewall toma as decisões baseadas nos
parâmetros do pacote, como porta/endereço de srcem/destino, estado da
conexão, e outros parâmetros do pacote. O firewall então pode negar o
pacote (DROP) ou deixar o pacote passar (ACCEPT). O iptables é um
excelente firewall que se encaixa nesta categoria.
Os dois tipos de firewalls podem ser usados em conjunto para fornecer uma camada
dupla de segurança no acesso as suas máquinas/máquinas clientes.

119
Segurança em Redes

Tabelas
Tabelas são os locais usados para armazenar os chains e existem 3 tabelas disponíveis
no iptables:

 Filter
 NAT
 Mangle

Filter
Esta é a tabela padrão, contém 3 chains padrões:
 INPUT – entrada.
 OUTPUT - saída.
 FORWARD - repasse.

NAT

Usada para concentrar o fluxo de varias conexões, saindo para uma única. Possui 3
chains padrões:

 PREROUTING - Consultado quando os pacotes precisam ser modificados


logo que chegam. É o chain ideal para realização de DNAT e
redirecionamento de portas.
 OUTPUT - Consultado quando os pacotes gerados localmente precisam ser
modificados antes de serem roteados. Este chain somente é consultado para
conexões que se srcinam de IPs de interfaces locais.
 POSTROUTING - Consultado quando os pacotes precisam ser modificados
após o tratamento de roteamento. É o chain ideal para realização de SNAT e
IP Masquerading.

Mangle
Utilizada para alterações especiais de pacotes (como modificar o tipo de serviço (TOS)
ou outros detalhes que serão explicados no decorrer do capítulo. Possui 2 chains
padrões:

 INPUT – entrada.
 FORWARD - repasse.
 PREROUTING - Consultado quando os pacotes precisam ser modificados
logo que chegam.
 OUTPUT - Consultado quando pacotes gerados localmente precisam ser
modificados antes de serem roteados.

120
Segurança em Redes

 POSTROUTING - Consultado quando os pacotes precisam ser modificados


após o tratamento de roteamento. É o chain ideal para realização de SNAT e
IP Masquerading.

Regras
Parâmetros paras CHAINS
-L List (Listar as Regras)
-A Add (Adicionar Regras)
-I Insert (Inserir Regras)
-R Replace (Substituir Regras)
-D Delete (Apagar Regras)
-P Policy (Policiamento Padrão: INPUT, OUTPUT e FORWARD)
-N New (Criar nova Chain)
-E rEname (Renomeia a Chain Criada por -N)
-F Flush (Limpar Tabela)
-X eXtract (Limpar Chain Criada por -N)
-Z Zero (Zerar o Contador das Tabelas)
Parâmetros para o complemento das regras
-o Output (Endereços de Saí-da)
-i Input (Endereços de Entrada)
-s Source (Endereços de Origen)
-d Destination (Endereços de Destino)
-j Join (Aplicar a Regra)
-p Protocol (Protocolo: todos-0, icmp=1, tcp=6,udp=17)
-f Fragment (Fragmentos pacotes fragmentados)
-n Numeric (IPs sãoexibidos de forma numérica)
+ (Adicionado ao nome da interface indica todas)
Especificando um alvo
 ACCEPT (Aceita o pacote processado pela CHAIN)
 DROP (Barra o pacote processado pela CHAIN)

REJECT (Rejeita, com a mensagem "icmp-port-unreachable")


 REDIRECT (Redireciona o pacote processado pela CHAIN)
 MASQUERADE (Mascaramento do ip de srcem do pacote)
 LOG (Registra a atividade de um pacote).
Estado da conexão
 NEW (Confere pacotes que criam novas conexões)
 ESTABLISHED (Confere pacotes de conexões já estabelecidas)
 RELATED (Confere pacotes relacionados indiretamente a uma
conexão)
 INVALID (Confere pacotes que não puderam ser identificados)

121
Segurança em Redes

Um exemplo de f irewall simples


Esta seção possui um exemplo mais elaborado de firewall que servirá para máquinas
conectadas via ppp com uma rede interna conectada via Masquerading. Este exemplo
não é tão complexo e cobre as expectativas mais comuns de pessoas que gostam de
explorar os potenciais de rede no Linux ou satisfazer sua curiosidade. Ele poderá ser
facilmente adaptado para atender outro tipo de necessidade. A configuração assumida
é a seguinte:

1. Máquina
que serve de do firewall
ligação comrede
a sua 2 interfaces
Interna, adeoutra
rede, uma éque
é ppp0 eth0
é acom o IP 192.168.1.1
interface Internet.
2. Qualquer acesso externo a máquinas da rede interna é bloqueado.
3. Os usuários da rede local tem acesso livre ao servidor Linux.
4. Qualquer acesso externo a máquina do firewall é bloqueado, exceto conexões
para o serviço Apache (httpd). Outras tentativas de conexões devem ser
explicitamente registradas nos logs do sistema para conhecimento do administrador.
5. Todos os usuários possuem acesso livre a Internet via Masquerading, exceto
que o acesso para o serviço www deve ser obrigatoriamente feito via squid, e o
servidor smtp a ser usado deverá ser o do firewall Linux.
6. Prioridades serão estabelecidas para os serviços de telnet, IRC,talk e DNS.
#!/bin/sh
# Modelo de configuração de firewall
# É assumido um sistema usando kmod para carga automática dos módulos
usados por esta configuração do firewall:
# ipt_filter
# ipt_nat
# ipt_conntrack
# ipt_mangle
# ipt_TOS
# ipt_MASQUERADE
# ipt_LOG
# Se você tem um kernel modularizado que não utiliza o kmod, será necessário
# carregar estes módulos via modprobe, insmod ou iptables --modprobe=modulo

##### Definição de Policiamento #####


# Tabela filter
iptables -t filter -P INPUT DROP
iptables -t filter -P OUTPUT ACCEPT
iptables -t filter -P FORWARD DROP
# Tabela nat
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
iptables -t nat -P POSTROUTING DROP
# Tabela mangle
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT

##### Proteção contra IP Spoofing #####

122
Segurança em Redes

for i in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 >$i
done
##### Ativamos o redirecionamento de pacotes (requerido para NAT) #####
echo "1" >/proc/sys/net/ipv4/ip_forward
# O iptables define automaticamente o número máximo de conexões simultâneas
# com base na memória do sistema. Para 32MB = 2048, 64MB = 4096, 128MB =
8192,
# sendo que são usados 350 bytes de memória residente para controlar
# cada conexão.
# Quando este limite é excedido a seguinte mensagem é mostrada:
# "ip_conntrack: maximum limit of XXX entries exceed"
#
# Como temos uma rede simples, vamos abaixar este limite. Por outro lado isto
# criará uma certa limitação de tráfego para evitar a sobrecarga do servidor.
echo "2048" > /proc/sys/net/ipv4/ip_conntrack_max

###############################################################
# Tabela filter #
###############################################################
##### Chain INPUT #####
# Criamos um chain que será usado para tratar o tráfego vindo da Internet e
iptables -N ppp-input
# Aceita todo o tráfego vindo do loopback e indo pro loopback
iptables -A INPUT -i lo -j ACCEPT
# Todo tráfego vindo da rede interna também é aceito
iptables -A INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
# Conexões vindas da interface ppp0 são tratadas pelo chain ppp-input
iptables -A INPUT -i ppp+ -j ppp-input

# Qualquer outra conexão desconhecida é imediatamente registrada e derrubada


iptables -A INPUT -j LOG --log-prefix "FIREWALL: INPUT "
iptables -A INPUT -j DROP

##### Chain FORWARD ####


# Permite redirecionamento de conexões entre as interfaces locais
# especificadas abaixo. Qualquer tráfego vindo/indo para outras
# interfaces será bloqueado neste passo
iptables -A FORWARD -d 192.168.1.0/24 -i ppp+ -o eth0 -j ACCEPT
iptables -A FORWARD -s 192.168.1.0/24 -i eth0 -o ppp+ -j ACCEPT
iptables -A FORWARD -j LOG --log-prefix "FIREWALL: FORWARD "
iptables -A FORWARD -j DROP

##### Chain ppp-input ####


# Aceitamos todas as mensagens icmp vindas de ppp0 com certa limitação
iptables -A ppp-input -p icmp -m limit --limit 2/s -j ACCEPT

123
Segurança em Redes

# Primeiro aceitamos o tráfego vindo da Internet para o serviço www (porta 80)
iptables -A ppp-input -p tcp --dport 80 -j ACCEPT

# A tentativa de acesso externo a estes serviços serão registrados no syslog


# do sistema e serão bloqueados pela última regra abaixo.
iptables -A ppp-input -p tcp --dport 21 -j LOG --log-prefix "FIREWALL: ftp "
iptables -A ppp-input -p tcp --dport 25 -j LOG --log-prefix "FIREWALL: smtp "
iptables -A ppp-input -p udp --dport 53 -j LOG --log-prefix "FIREWALL: dns "
iptables -A ppp-input -p tcp --dport 110 -j LOG --log-prefix "FIREWALL: pop3 "
iptables -A
iptables -A ppp-input
ppp-input -p
-p udp
tcp --dport
--dport113
111-j-jLOG
LOG--log-prefix
--log-prefix"FIREWALL:
"FIREWALL:identd
rpc" "
iptables -A ppp-input -p tcp --dport 111 -j LOG --log-prefix "FIREWALL: rpc"
iptables -A ppp-input -p tcp --dport 137:139 -j LOG --log-prefix "FIREWALL:
samba "
iptables -A ppp-input -p udp --dport 137:139 -j LOG --log-prefix "FIREWALL:
samba "
# Bloqueia qualquer tentativa de nova conexão de fora para esta máquina
iptables -A ppp-input -m state --state ! ESTABLISHED,RELATED -j LOG --log-
prefix "FIREWALL: ppp-in "
iptables -A ppp-input -m state --state ! ESTABLISHED,RELATED -j DROP
# Qualquer outro tipo de tráfego é aceito
iptables -A ppp-input -j ACCEPT

#######################################################
# Tabela nat #
#######################################################
##### Chain POSTROUTING #####
# Permite qualquer conexão vinda com destino a lo e rede local para eth0
iptables -t nat -A POSTROUTING -o lo -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j ACCEPT
# Não queremos que usuários tenham acesso direto a www e smtp da rede
externa, o
# squid e smtpd do firewall devem ser obrigatoriamente usados. Também
registramos
# as tentativas para monitorarmos qual máquina está tentando conectar-se
diretamente.
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp+ -p tcp --dport 80 -j
LOG --log-prefix
iptables -t nat "FIREWALL: SNAT-www
-A POSTROUTING "
-s 192.168.1.0/24 -o ppp+ -p tcp --dport 25 -j
LOG --log-prefix "FIREWALL: SNAT-smtp "
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp+ -p tcp --dport 25 -j
DROP
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp+ -p tcp --dport 80 -j
DROP
# É feito masquerading dos outros serviços da rede interna indo para a interface
# ppp0
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp+ -j MASQUERADE
# Qualquer outra srcem de tráfego desconhecida indo para eth0 (conexões
vindas
# de ppp+) são bloqueadas aqui

124
Segurança em Redes

iptables -t nat -A POSTROUTING -o eth0 -d 192.168.1.0/24 -j LOG --log-prefix


"FIREWALL: SNAT unknown"
iptables -t nat -A POSTROUTING -o eth0 -d 192.168.1.0/24 -j DROP
# Quando iniciamos uma conexão ppp, obtermos um endereço classe A
(10.x.x.x) e após
# estabelecida a conexão real, este endereço é modificado. O tráfego indo para
# a interface ppp não deverá ser bloqueado. Os bloqueios serão feitos no
# chain INPUT da tabela filter
iptables -t nat -A POSTROUTING -o ppp+ -j ACCEPT
# Registra e bloqueia qualquer outro tipo de tráfego desconhecido
iptables -t nat -A POSTROUTING -j LOG --log-prefix "FIREWALL: SNAT "
iptables -t nat -A POSTROUTING -j DROP

###############################################
# Tabela mangle #
###############################################
##### Chain OUTPUT #####
# Define mínimo de espera para os serviços ftp, telnet, irc e DNS, isto
# dará uma melhor sensação de conexão em tempo real e diminuirá o tempo
# de espera para conexões que requerem resolução de nomes.
iptables -t mangle -A OUTPUT -o ppp+ -p tcp --dport 21 -j TOS --set-tos 0x10
iptables -t mangle -A OUTPUT -o ppp+ -p tcp --dport 23 -j TOS --set-tos 0x10
iptables -t mangle -A OUTPUT -o ppp+ -p tcp --dport 6665:6668 -j TOS --set-tos
0x10
iptables -t mangle -A OUTPUT -o ppp+ -p udp --dport 53 -j TOS --set-tos 0x10

125
Segurança em Redes

Proxy

Definição
Proxy é uma palavra em inglês que, segundo o Michaelis, significa: Proxy - procuração,
procurador, substituto, representante.
Portanto Servidor Proxy é, em essência, um equipamento que presta um serviço de
procurador de um computador de uma rede em outra rede, evitando que o endereço IP
do computador seja conhecido na outra rede.
O Serviço de Proxy age como representante de um usuário que precise acessar um
sistema do outro lado do Servidor Proxy.
O Proxy permite executar a conexão, ou não, a serviços em uma rede de modo indireto.
Normalmente os proxies são utilizados como cahes de conexão para serviços Web.

Aplicação
Primeiramente temos que escolher a maquina que o squid ira ficar. Uma maquina para
comportar o squid não precisa de um processador rapidíssimo, o mais importante para
ele e a memória RAM, o squid adora memória, quanto mais puder dar a ele melhor. A
utilização de discos SCSI para a partição que ficará o cache também e muito bem
vinda.
Partiremos do pressuposto que a maquina em que o squid será instalado já tem a rede
TCP/IP funcionando, Se o squid for ser usado para conectar uma rede privada (IP's
inválidos
2 placas na
deInternet
rede oucomo da classe
no mínimo 2 192.168.0.0/24)
IP's. (melhor o àprimeiro
Internet,caso
a maquina precisara
para entrar numade
configuração de rede isolada) um kernel configurado com ipforward e masquerading e
muito bem vindo para a construção de um Proxy transparente.
Configuração:

A configuração do squid é feita editando seu arquivo de configuração, o squid.conf. Na


instalação do RPM ele estará no/etc/squid/. Use seu editor preferido para configurar o
arquivo. O arquivo de configuração e muito bem explicado, as configurações padrão
vem comentadas facilitando o entendimento.
O squid trabalha "Escutando" uma porta TCP determinada, os clientes que querem
acessar uma pagina Web, ftp, ssl fazem requisições nesta porta informando o servidor
e o protocolo que querem utilizar e o squid faz a requisição na porta certa. A porta

126
Segurança em Redes

padrão do squid e a porta 3128 isto pode ser alterado com uma diretiva do squid.conf
http_port, vamos usar a porta 8080 inserindo a seguinte linha no squid.conf:
http_port 8080
Temos que decidir também onde será o diretório de cache e o tamanho do mesmo. Por
padrão o squid está configurado para o diretório de cache ficar em /var/spool/squid, por
questões de performance, segurança e gerenciabilidade é melhor que ele fique
instalado em uma partição separada. Montaremos então a partição de cache no
diretório
cache /cachea elinha
procure configuraremos
cache_dir nopara que o cache
squid.conf, fique lá. Para
provavelmente mudarassim:
ela estará o diretório do

#cache_dir ufs /var/spool/squid 100 16 256


Bem vamos entender os parâmetros. O primeiro diz respeito ao formato do cache,
melhor não mudar isso, a outra opção e asyncufs que não esta compilada no RPM e
ainda é instável. A segunda opção informa o diretório do cache, como resolvemos que o
cache ficará no diretório /cache este valor deve ser mudado para /cache. O terceiro
parâmetro e o tamanho do cache em Mega bytes, tendo um disco de 9GB, separados
uns 20% para um overhead do linux mais o squid podemos selecionar 7GB. Os outros
parâmetros dizem respeito a configuração dos diretórios do squid, não e necessário
muda-los. Então nossa linha fica sendo:
cache_dir ufs /cache/ 7000 16 256(Note que não tem mais o # na frente)

E possível
sem perderinserir
o cachevárias entradas cache_dir no squid.conf, ele ira anexar a nova área
anterior.
Agora que já esta configurada a área de cache, primeiro e preciso assegurar que o
squid terá direito de escrita no diretório de cache, o squid não roda como o root, ele usa
um usuário definido no parâmetro do squid.conf, cache_effective_user, a distribuição da
conectiva vem com o squid rodando com o usuário nobody, para fazer o squid rodar
com outro usuário (o usuário squid por exemplo), troque o valor do parâmetro no
arquivo de configuração. lembre-se que o usuário terá de ter acesso de leitura e escrita
nos diretórios de cache e log.
As ACL permitem especificar endereços de srcem ou destino, domínios, horários,
usuários, portas ou métodos de conexão ao Proxy, que servirão de base para permitir
ou negar o acesso baseando-se em conjuntos dessas ACL's. Isto permite uma grande
flexibilidade na configuração do SQUID: podemos, por exemplo, especificar quais
endereços podem ser acessados, quais não podem ser acessados, que certo endereço
somente pode ser acessado em determinado horário, que um usuário somente pode
acessar a partir de uma maquina especifica, que um protocolo pode ou não ser
utilizado, ou qualquer combinação dessas permissões/restrições.

acl minharede src 192.168.0.0/255.255.255.0| | | |_ > Domínio da ACL| |


| | | |_ _ _ _ _ > Tipo de ACL| | | |_ _ _ _ _ _ _ _
_ > Nome da ACL||_ _ _ _ _ _ _ _ _ _ _ _ _ > Comando de criação de ACL
Isto cria uma ACL de nome minharede do tipo src (IP de srcem) sendo seu domínio
192.168.0.0/255.255.255.0 uma rede classe C.

127
Segurança em Redes

Agora temos que dar permissão a esta ACL a diretiva que faz isso e o http_access
Então temos que inserir no squid.conf

http_access minharede allow| | |_> allow/deny (permite/nega)


|| |_ _ _ _ _> ACL ( ACL's a que se aplica a regra)| |_ _ _ _ _ _ _ _
_ _ _ _ _> Comando de permissão.

Mas isso nãovamos


parâmetros. pode ser feito em
ver como qualquer
esta lugar,
o arquivo o squid
padrão e meio
e quais chato com
alterações a ordem
devem dos
ser feitas
para entendermos melhor.
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multilink http
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny all
Como podemos ver existem vários tipos de ACL, vamos nos ater a primeira, foi criada
uma ACL do tipo src, isto significa maquina de srcem, com nome "all" que corresponde
a qualquer maquina existente. A ultima diretiva diz que a conexões correspondentes a
diretiva all estão proibidas de continuar. A diretiva ACL tem de ser criada antes de ser
conferido algum direito. Então agora a ordem das linhas deverá ser a seguinte:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multilink http
acl CONNECT method CONNECT
#ACL's Do usuário
acl minharede src 192.168.0.0/255.255.255.0 #ACL correspondente a rede interna
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#Regras do Usuário

128
Segurança em Redes

http_access allow minharede #permite conexões da rede interna


http_access deny all
Podemos ver que temos varias linhas para a ACL Safe_ports, isso merece duas
considerações, primeiro e possível especificar vários parâmetros para uma ACL, seja
dando um espaço entre os parâmetros ou colocando duas entradas para a mesma ACL
assim se tivéssemos que permitir também a rede 192.168.1.0/255.255.255.0
poderíamos criar a ACL de duas formas:

#Com espaço:
acl minharede 192.168.0.1/255.255.255.0 192.168.1.0/255.255.255.0
#ou com duas linhas
acl minharede 192.168.0.0/255.255.255.0
acl minharede 192.168.1.0/255.255.255.0
A segunda consideração e que por padrão as diretivas ACL são do tipo "OU", ou seja
uma conexão pertencera a uma ACL se qualquer um dos parâmetros coincidir. No
nosso exemplo, a rede 192.168.0.0 OU rede 192.168.1.1 coincidiram com a ACL. A
ordem entre as diretivas ACL não e importante.
Para as diretivas http_access a coisa funciona diferente, como podemos ver a diretiva
de permissão da rede interna foi inserida antes do deny all. O squid lê as diretivas de
CIMA para
diretivas BAIXO, parando
http_access a comparação
são do tipo "E", para quenaa primeira que em
diretiva entre coincidir.
ação, aAlém dissotem
conexão as
de estar coincidindo com TODAS as ACL's especificadas.
EX:
acl all src 0.0.0.0/0.0.0.0
acl minharede src 192.168.0.0/255.255.255.0
acl horacom time MTWTF 09:00-18:00
http_access allow minharede horacom
http_access deny all
No exemplo acima, só as maquinas da rede 192.168.0.0/255.255.225 de 09:00 as
18:00 poderão acessar a Internet, as demais maquinas ou qualquer maquina fora deste
horário não poderão acessar.

Tipos
Autentic ado
Descomentar a linha abaixo e adicionar os parâmetros necessários:
# auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Digite o usuário e senha para navegação

129
Segurança em Redes

Definir as ACLs:
acl autenticacao proxy_auth REQUIRED
Definir ação sobre as ACLs:
http_access allow autenticacao
Cadastrar os usuários:
htpasswd -c /etc/squid/passwd usuario

Transparente
O proxy transparente é uma união de uma característica do squid mais o ipforward do
Linux. Para que isso funcione o linux em questão tem de estar configurado para ser o
gateway das maquinas. Vamos interceptar as conexões Web e redirecioná-las para o
Squid.
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
(ou a porta que esteja sendo utilizada pelo squid)
echo 1 > /proc/sys/net/ipv4/ip_forward
Isso vai redirecionar tudo o que vier para a porta 80 (http) para a porta local 8080 do
squid.
Bom, isso e só a primeira parte, agora temos de configurar o Squid.
Mais linhas adicionadas ao squid.conf:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
O modo do httpd-accelerator permite ao squid responder como se fosse um servidor
Web real, e redirecionar a chamada para o servidor real.
Bom, os clientes não passam tão liso assim de configuração, eles devem ver o squid
como seu gateway primário, ou pelo menos o gateway primário deles deve ver o squid
como o gateway para porta 80, essa configuração depende de cada rede.

Monitoramento
O Sarg é um interpretador de logs para o Squid, assim como o Webalizer e o Apache.
Sempre que executado ele cria um conjunto de páginas, divididas por dia, com uma
lista de todas as máquinas que foram acessadas e a partir de cada máquina da rede
veio cada acesso. Ele também mostra os usuários, caso o Squid esteja configurado
para exigir autenticação.

130
Segurança em Redes

A partir daí você pode acompanhar as páginas que estão sendo acessadas, mesmo
que não exista nenhum filtro de conteúdo e tomar as medidas cabíveis em casos de
abuso. Todos sabemos que os filtros de conteúdo nunca são completamente eficazes,
eles sempre bloqueiam algumas páginas úteis e deixam passar muitas páginas
impróprias. Se você tiver algum tempo para ir acompanhando os logs, a inspeção
manual é sempre o método mais eficiente.

Aqui host
pelo está um exemplo da
192.168.0.3 do rede
relatório gerado
interna. pelo
Veja queSarg,
entemostrando
os dados os sites acessados
fornecidos estão a
quantidade de banda usada pelo usuário e o tempo que ele ficou em cada página:
O Sarg é incluído na maioria das distribuições atuais, em alguns casos instalado por
padrão junto com o Squid.
No Debian e derivados ele pode ser instalado com um: "apt-get install sarg". Depois de
instalado, basta chamar o comando "sarg" (como root) para que os relatórios sejam
geradas automaticamente a partir do log do squid.
O Sarg não é um daemon que fica residente, você precisa apenas chama-lo quando
quiser atualizar os relatório, se você quiser automatizar esta tarefa, pode usar o cron
para que ele seja executado automaticamente todos os dias ou uma vez por hora por
exemplo.

Por padrão os relatórios vão para a pasta /var/www/squid-reports/ (no Debian).


Esta padrão, junto com outras configurações podem ser alteradas no arquivo de
configuração do Sarg, que é o /etc/sarg/sarg.conf (no Mandrake) ou /etc/squid/sarg.conf
(no Debian). O arquivo é auto explicativo, nele você pode alterar os diretórios padrão,
alterar o layout da página de relatórios e ativar recursos como o envio de uma cópia do
relatório por e-mail sempre que o sarg for executado.

131
Segurança em Redes

132
Segurança em Redes

Sis temas de D etecção d e


Intruso (IDS)

Definição
James P. Anderson sugeriu melhorias nos sistemas de auditoria e de detecção de
ações não autorizadas, algumas possibilidades viáveis em um trabalho em conjunto
com a Marinha Norte Americana, as primeiras técnicas reais de Mecanismos de
detecções de Intrusões, assim surgiu o primeiro IDS, Intrusion Detection System.
O IDS atua como um sniffer (Analisador de Rede), olhando todo o tipo de dados
trafegados em seu segmento, desta forma, ajuda a evitar quebras ou invasões de
segurança na rede corporativa, fornecendo a execução automática de políticas e
resposta a incidentes para servidores, aplicativos e dados.

Características
O IDS possui duas estruturas conceituais de funcionamento: o método preemptivo e
método reacionário.

 O método preemptivo é conhecido por basicamente reconhecer, através de


uma base de dados, a assinatura (signatures) de ataques, ou seja,
seqüências de ações já conhecidas de ataques. O IDS, de forma autônoma,
observa a movimentação e o tráfego de rede destinado ao seu host e então
as compara
este com seus registros
host. Podemos compararpara identificar
então o seupossível tentativa de
funcionamento ataque
com o dea
programas antivírus, sistemas assim são capazes de identificar a maioria
dos ataques existentes .
 No método reacionário o IDS, através da análise dos logs do sistema, cria
um perfil de comportamento para os usuários do sistema. O IDS reacionário
é capaz de reagir a algum comportamento anormal de determinado log de
um usuário. Diante desta ação o IDS pode bloquear o acesso do usuário,
lançar um contra-ataque para descobrir o endereço IP que está sendo
utilizado por ele, assim como outras informações e enviar um e-mail para o
administrador do sistema, tal qual como foi configurado. O método
reacionário é o mais convencional em relação à detecção de intrusão,
contudo ambos métodos possuem suas eficiências comprovadas.

133
Segurança em Redes

Aplicação
A detecção de intrusos é uma tecnologia de segurança capaz de identificar e isolar
intrusões contra um sistema de computação e iniciar procedimentos de alerta e contra-
ataque.
Diferentes IDSs têm diferentes classificações de intrusão. Um sistema tentando
detectar ataques contra servidores Web pode considerar apenas pedidos maliciosos
HTTP, enquanto que um sistema que se proponha a monitorar protocolos dinâmicos de
roteamento pode considerar apenas RIP spoofing. Independente do tipo, os IDSs
compartilham uma definição geral de intrusão, que é o uso não autorizado ou
inadequado de um sistema de computação.
A detecção de intrusos é um componente importante de um sistema de segurança e
complementa outras tecnologias. Ao fornecer informações ao administrador do site, o
IDS permite não apenas a detecção de ataques explicitamente endereçados por outros
componentes de segurança (tais como firewalls), como também tentativas de
notificação de novos ataques não previstos por outros componentes, Os IDSs também
fornecem informação que potencialmente permitem às organizações descobrirem as
srcens de um ataque. Desta forma, os IDSs tentam fazer com que os “atacantes” se
tornem responsáveis por suas ações, e até certo ponto, servem para desestimular
futuros ataques.

Devido aconforme
funcione sua importância dentrodade
a expectativa um sistema
organização quedeo segurança, é crucial que
está implementando. Paraoque
IDSo
IDS seja útil, o administrador do site precisa poder confiar na informação fornecida pelo
sistema. Sistemas com falhas não só fornecem menos informações, como também uma
perigosa falsa sensação de segurança.
Dadas às implicações de falhas em um componente do IDS, é correto presumir que os
IDSs em si são alvos óbvios para ataques. Um intruso mais esperto que perceba que
um IDS foi implementando em uma rede que ele está atacando irá muito provavelmente
atacar primeiro o IDS tentando desabilitá-lo ou forçando-o a dar informações falsas
(distraindo o pessoal de segurança do verdadeiro ataque).
Para que um componente de software possa resistir a ataques, ele precisa ser
projetado e implementado com um entendimento claro sobre os meios específicos
pelos quais ele pode ser atacado.

Snort
O snort realiza sozinho a tarefa de registros de possíveis tentativas de ataque em
potencial, é uma ótima solução e se torna melhor combinado com uma ferramenta para
tratar os “logs”, tornando ainda mais útil para um administrador.
Para realizarmos essa configuração necessitamos de alguns pacotes:

 Servidor MySQL,
 Snort compilado com suporte a MySQL,

134
Segurança em Redes

 Acidlab.
Instalando o MySQL:
# aptitude install mysql-server
Configurando o Banco de dados do SNORT
# mysql -u root -p
CREATEinsert,
> GRANT DATABASE
select, snort;
update ON snort.* TO snort@localhost IDENTIFIED BY
'senhasnort';
> GRANT insert, select, delete, update, create ON snort.* TO acid@localhost
IDENTIFIED BY 'senhaacid';
QUIT
Instalando o Apache2 com suporte a PHP4:
# aptitude install apache2 php4 libapache2-mod-php4 php4-mysql
Instalando o Snort e criar as suas estruturas da database:
Detalhes do debconf para a instalação do Snort
// Configurar a rede onde o Snort vai ouvir
//// Definir
Definir oo usuário
hostnameroot para
para receber MySQL
oservidor e-mail de estatísticas
como: diárias
localhost
// Definir o nome da base de dados como: snort
// Definir o nome do usuário para acesso à base como: root
// Definir a senha do db snort, ex.: snortids
# aptitude install snort-mysql
# cd /usr/share/doc/snort-mysql
# zcat create_mysql.gz | mysql -u root -p snort
Verificando a base snort
# mysql –u root –p
> show databases;
> use snort;
> show tables;
> status;
> quit;
Verificando as configurações do snort-mysql
# cd /etc/snort
# vi snort.conf
// mudar:
// var HOME_NET p/ o ip da rede/24
// var EXTERNAL_NET p/ any
Validando configurações do Snort
# snort –vde –c /etc/snort/snort.conf

135
Segurança em Redes

Instalando e configurando o ACIDLAB


# aptitude install acidlab-mysql
Vamos criar um arquivo para declarar o site para o ACIDLAB no APACHE2:
# cd /etc/apache2/sites-avaliable

//# No
vi acidlab
vi, em modo comando (sem dar insert) digite ":r /etc/acidlab/apache.conf".
Publicamos o novo site.
# a2ensite acidlab
Restartamos o Apache:
# /etc/init.d/./apache2 restart
Agora vamos configurar o ACIDLAB:
# vi /etc/acidlab/acid_conf.php
// no VI, digite :32 você vai direto para a linha 32 onde começamos a alterar o
seguinte trecho:

// $alert_dbname = "snort ";


// $alert_host = "localhost";
// $alert_port = "";
// $alert_user = "acid";
// $alert_password = "senhaacid";

// $archive_dbname = "snort ";


// $archive_host = "localhost";
// $archive_port = "";
// $archive_user = "snort";
// $archive_password = "senhasnort";
Pronto, acesse http://localhost/acidlab utilizando algum browser (navegador). Vai
parecer um erro, mas é normal na primeira vez a página que aparece, clique no link
setup page que se encontra no texto da página.Depois no botão Create_ACID_AG.
# /etc/init.d/./snort restart

136
Segurança em Redes

Redes Vir tuais Pri vadas


(VPN)
Definição
Virtual Private Network (Rede Privada Virtual), é uma rede privada construída sobre a
infra-estrutura de uma Intranet ou na Internet. Ou seja, ao invés de se utilizar links
dedicados ou redes de pacotes para conectar redes remotas, utilizam-se as mesmas,
com circuitos e memórias virtuais.
A idéia do termo VPN engloba qualquer tecnologia que garanta comunicação segura
enquanto os dados estão trafegando por redes não confiáveis.

Aplicação
Túneis virtuais habilitam o tráfego de dados criptografados pela Internet e esses
dispositivos, são capazes de entender os dados criptografados formando uma rede
virtual segura sobre a rede Internet.
A forma como esses dados serão codificados, quais os algoritmos de codificação e
autenticação serão utilizados, dependerá do protocolo sobre o qual o VPN está se
baseando. Assim como em qualquer meio de transmissão de dados, os dispositivos
responsáveis pelo gerenciamento da VPN devem ser capazes de garantir a
privacidade, integridade, autenticidade dos dados.

IPSEC
O IPSec é a melhoria do próprio protocolo TCP/IP, ao reduzir suas vulnerabilidades, e
especificar serviços como:

 Controle de acesso;
 Integridade de pacotes;
 Autenticação de srcem;
 Privacidade de pacotes;
 Privacidade do fluxo de pacotes;

137
Segurança em Redes

 Proteção de replays;
Desenvolvido pelo IETF, o IPSec possui o intuito de assegurar o tráfego dos dados sem
a necessidade de ferramentas feitas para a camada de aplicativos ou serviços, isto é,
sem mudanças em softwares já utilizados.
Havendo apenas a mudança na camada de rede facilitando o suporte das plataformas,
como Windows, Unix e Linux.

De forma geral,
procedimentos para garantir
utilizados a segurança, o IPSec criptografa o pacote IP. Os
são os seguintes:

 ESP (Encapsulating Security Payload) – O ESP possibilita a construção de


túneis (tunelamento) criptografados, onde o header e o payload do
datagrama IP são encapsulados e criptografados (utilizando algoritmo
simétrico) no novo payload do IPSec, então ele adiciona um novo header
contendo o IP destino do gateway VPN. Desta forma, o IPSec oferece a
vantagem de esconder da Internet os endereços IP srcinais, impedindo a
leitura por ataques de monitoração de tráfego. Como parte final da operação,
o payload agora é autenticado com algoritmos de hash (assinatura digital).
 AH (Authentication Header) – Depois de criado o novo header, este deve ser
autenticado. A autenticação do AH difere do ESP porque a autenticação do
AH não protege as informações que estão no cabeçalho do pacote IPSec,
mesmo porque alguns campos são alterados à medida em que atravessam a
rede
hash em função do
específicos roteamento.
e que A autenticação
estejam dentro do padrãodeve suportar algoritmos de
IPSec.
 O IKE (Internet Key Exchange) funciona basicamente em duas fases: a
primeira é o estabelecimento de uma sessão segura (utilizando-se chaves
assimétricas) e a segunda é a negociação da troca das chaves. Para as
parte envolvidas em uma transmissão de dados segura se comunicarem é
preciso serem concluídas três etapas importantes:
- Negociação entre as partes sobre protocolos, algoritmos de
criptografia e chaves a serem utilizadas na sessão;
- Troca de chaves de um modo eficiente; e
- Manter estes requisitos durante a conversação.

O IPsec pode ser usado para codificar diretamente o tráfego entre dois hosts
(conhecido como Modo de transporte) ou ser agregado a uma VPN, o que permite
enviar dados independentemente da infra-estrutura utilizada (Modo de túnel).
A junção de uma VPN com IPSec provê integridade no controle, discrição e até
considerável imunidade o tráfego, desta forma, essa combinação tem sido amplamente
utilizada na prática como prevenção a ataques como o Man-inthe-middle, assegurando
os dados. A figura abaixo abaixo ilustra o protocolo IEEE 802.11 com mecanismos de
segurança até aqui comentados.

138
Segurança em Redes

139
Segurança em Redes

Criptografia

1. Definição
A criptografia tem como objetivo, proteger a confidencialidade, autenticidade e
integridade das informações. Técnicas e sistemas criptográficos devem ser usados para
a proteção das informações que são consideradas de risco e para aquelas que os
outros controles não fornecem proteção adequada.
Baseado na análise de risco, o nível apropriado de proteção deve ser identificado
levando-se em conta o tipo e a qualidade do algoritmo criptográfico usado e o tamanho
das chaves a serem utilizadas (ISO/IEC 17799:2000).
A criptografia é tão antiga quanto a própria escrita. Os romanos utilizavam códigos
secretos para comunicar planos de batalha. Contudo, somente depois da Segunda
Guerra Mundial, com a invenção do computador, o uso da criptografia tomou maior
impulso em seu desenvolvimento. O trabalho criptográfico formou a base para a ciência
da computação moderna.

Aplicação
Algo ritmos Criptográficos
Existem dois tipos básicos de algoritmos criptográficos que podem ser utilizados tanto
sozinhos como em combinação. Estes algoritmos, chave única e chave pública e
privada, são usados para diferentes aplicações e deve-se analisar qual é o melhor para
cada caso.
Para que uma mensagem seja cifrada utilizam-se uma ou mais chaves (seqüência de
caracteres) que serão embaralhadas com a mensagem srcinal. Estas chaves devem
ser mantidas em segredo, pois somente com o conhecimento delas é que se poderá
decifrar a mensagem.
O primeiro tipo de algoritmo que surgiu foi o de chave única, também chamado de
algoritmo de chave simétrica. Neste, o sistema usa a mesma chave tanto para a
cifragem como para a decifragem dos dados, e esta deve ser mantida em segredo.

140
Segurança em Redes

Tecno log ias de Encrip tação de dados


Cript ografia Simétrica
A Criptografia Simétrica consiste em transformar, utilizando-se uma chave K e uma
função y=f(x), um texto legível (informação aberta) – x - em um texto ilegível
(informação criptografada) – y – O texto y é transmitido para o destino onde y é
decriptografado pelo algoritmo inverso f –1 (y) obtendo-se o texto legível – x – se e só
se o destinatário conhece a chave K, a qual deve ser utilizada no algoritmo inverso f –1
(y). Para quem desconhece a chave K é computacionalmente difícil obter-se y a partir
do conhecimento de x se o algoritmo for bem projetado, isto é, se for seguro.

Algo ritmos d e Chave Simét rica


DES (Data Encryption Standard) - Uma cifra de bloco criada pela IBM e endossada pelo
governo dos Estados Unidos em 1977. O DES utiliza uma chave de 56 bits e opera em
blocos de 64 bits. Projetado para ser implementado em componentes de hardware, ele
é relativamente rápido e é usado com freqüência para criptografar grandes volumes de
dados de uma só vez. O DES é usado em muitas aplicações mais seguras da Internet,
incluindo a SSL (Secure Sockets Layer) e a maioria das alternativas mais seguras do
IP.

DES
dadosTriplo (Triple DES)
é criptografado três- vezes
O DEScom
triplo é uma evolução
diferentes chaves. do DES, no qual um bloco de
Vistos os anúncios da possibilidade do cálculo da chave secreta do DES por força bruta
estarem sendo cada vez mais viáveis economicamente em função inclusive do tamanho
desta chave (56 bits), a NIST (National Institute of Standards in Technology antiga NBS
- National Bureau of Standards) lançou em 1997 uma competição aberta para o
sucessor do DES, chamado AES – Advanced Encryption Standard. Nesta competição
foram apresentadas 18 propostas, sendo que das cinco finalistas foi escolhido, entre
duzentos, o algoritmo de criptografia Rijndael, produzido por dois Belgas.
Algumas das vantagens do AES são: poder usar chaves de 128, 192 e 256 bits ou
maiores e ser executado eficazmente em um grande número de ambientes, cartões
inteligentes, softwares de computador e browsers, enquanto o DES foi projetado
principalmente para hardware. Outro problema do DES foram as mudanças propostas
pela NSA nas S-Boxes do algoritmo srcinal, visto que alguns observadores temiam que
essa mudança poderia introduzir uma armadilha e poderia permitir que um atacante
decifrasse mensagens criptografadas pelo DES sem testar todas possíveis chaves.
Os S-boxes são tabelas não-lineares que determinam como o algoritmo de criptografia
substitui bytes por outros.
RC2 e RC4 - Ron Rivest da RSA DSI (Data Security Inc.) projetou essas cifras com
tamanho de chave variável para proporcionar uma criptografia em alto volume que
fosse muito rápida. Pode ser usado como substituto do DES, pois ambos são cifras de
bloco. Em softwares, o RC2 é aproximadamente 2 vezes mais rápido do que o DES, ao
passo que o RC4 é 10 vezes mais rápido que o DES.
O IDEA (International Data Encryption Algorithm) foi criado em 1991, sendo projetado
para ser facilmente calculado em softwares. É bastante forte e resistente a várias

141
Segurança em Redes

formas de criptoanálise. Opera com blocos de textos em claro no tamanho de 64 bits e


possui uma chave de 128 bits, sendo que o mesmo algoritmo é usado para cifrar e
decifrar os textos.

Criptografia Assimétrica
O problema da criptografia simétrica é que as partes na comunicação devem conhecer
a mesma chave, que deve ser divulgada entre as partes de forma sigilosa, pois se um
terceiro elemento
segurança não criptografia.
atribuída pela autorizado tiver acesso à chave poderá comprometer a

Como solução para tal situação temos o algoritmo de chaves assimétricas. Esta
solução é composta basicamente de um algoritmo de criptografia e de decriptografia (o
qual pode ser ou não de conhecimento público, mas deve ser conhecido pelas partes
de uma comunicação) e um par de chaves (conhecidas como chave privada e chave
pública) e que tem, basicamente, as seguintes premissas:

 A informação criptografada por uma chave só pode ser decriptografada pela


outra;
 Uma chave não pode ser descoberta a partir da outra (mesmo conhecendo o
algoritmo de criptografia e de decriptografia e tendo a informação
criptografada); e
 A chave pública de uma entidade é amplamente divulgada sendo que a
chave privada só é de conhecimento da mesma.
Dessa forma a comunicação entre duas partes, como por exemplo A e B, é feita como
se segue:

 Tanto A quanto B possuem, cada um, um par de chaves (pública e privada);


 Se A deseja enviar a B, ele solicita a chave pública de B;
 De pose da chave pública de B, A criptografa a informação com essa chave
e envia a B; e
 A mensagem criptografada com a chave pública de B só pode ser
decriptografada pela chave privada de B.
Algoritmos assimétricos (ou de chave pública e privada) são muito complexos sendo
que as chaves utilizadas são números primos entre si e de valores muito grandes, o
que torna muito lenta a cifragem e decifragem de uma grande quantidade de dados.
Por isso, geralmente, algoritmos assimétricos são utilizados apenas para estabelecer
sessão e a troca, de forma confiável, entre as partes envolvidas na comunicação, de
uma chave simétrica.
Um dos parâmetros para se medir a resistência de um algoritmo é o tamanho de suas
chaves. Quanto maior o número de bits das chaves, maior o número de possíveis
combinações e, teoricamente, maior a resistência do algoritmo contra ataques.

Algo ritmos d e Chave Assimétrica


Dentre os diversos algoritmos de chave assimétrica destacam-se:

142
Segurança em Redes

Diffie-Hellman – Protocolo para troca de chaves, criado antes do RSA, e modificado


posteriormente, visto que pode ser “quebrado” por um intruso que capta toda a troca de
informações.
RSA - É um algoritmo criado e patenteado pela RSA Data Security Inc., porém com uso
liberado para quaisquer aplicações. Baseado na dificuldade computacional de se fatorar
um número inteiro muito longo (por exemplo 512 bytes de tamanho) em dois números
primos.

A segurança do RSA está baseada no problema de fatorar números grandes.


Miller e Rabin – Outro algoritmo de criptografia assimétrica muito usado. Similar ao RSA
mas é um algoritmo probabilístico, no sentido de que se pode concluir falsamente que o
número inteiro é primo mas com baixa probabilidade.

143
Segurança em Redes

Cert ific ação Dig ital

Definição
A identificação digital de um usuário é chamada de Certificado Digital o qual possui o
,

nome, chave pública (ver criptografia assimétrica) e outros dados de um usuário.


É usado para validar uma assinatura digital que pode ser anexada a um e-mail ou
formatos eletrônicos.
O processo de certificação digital possibilita a identificação inequívoca da identidade,
procedência e conteúdo das informações, baseado na troca de chaves criptografadas.
As chaves privadas são armazenadas em um hard disk ou em um Token. Neste caso a
chave somente pode ser utilizada quando o token for inserido no computador (um
exemplo é o smart card).

Aplicação.
Infraestrutura de Chave Pública (PKI)
Uma PKI (Public Key Infrastructure) é utilizada para prover a identificação de uma
entidade eletrônica (usuário, computador, etc.) na Internet.
Uma PKI é composta dos seguintes componentes:


CA - distribuir
criar, (Certificate Authorities
e revogar – Autoridade
certificados digitais.Certificadora): Responsável por
 RA - (Registration Authorities - Autoridade Registradora): Registra novos
usuários.
Podemos citar ainda outros conceitos utilizados em PKI:

 Certificação: é o processo de associação de uma chave pública a um


usuário.
 Validação: verificação se o certificado está ou não expirado e se as
informações nele são verdadeiras.
 Revogação: um certificado não pode ser apagado ou reutilizado. Quando o
mesmo não é mais válido é marcado pela CA como revogado.

144
Segurança em Redes

Os usuários da PKI podem descobrir o status atual de um certificado digital utilizando o


processo Real-time Online Certificate Status Checking.

Funcionamento do Processo Real-time Online Certificate Status Checkin g

Outro modo, menos confiável, de checar o status de um certificado requer que os


usuários
CA. da PKI façam um download de uma lista de certificados revogados (CRL) pela

O maior problema das CRLs é o fato de que muitos certificados são revogados por dia.
Uma empresa pode correr risco, pelo fato de possuir uma CRL desatualizada, de estar
confiando em um certificado que acabou de ser revogado.

Assinatura Digital
As assinaturas digitais fornecem os meios para proteção da autenticidade e integridade
de documentos eletrônicos (ISO/IEC 17799:2000).
Para criar uma assinatura digital para uma mensagem de e-mail, por exemplo, uma
cópia da mensagem é criptografada (algoritmo Hash) usando a chave privada
(assinatura digital), a qual é enviada, junto com a mensagem de e-mail e o certificado
digital do remetente para o destinatário, que cria a assinatura digital utilizando a chave
pública do remetente e compara com a assinatura recebida.
A assinatura digital somente pode ser decriptografada e verificada usando-se a chave
pública embutida no certificado digital do remetente, garantindo assim que uma
mensagem não foi falsificada por terceiros.

Algo ritmos p ara Geração de Assinat ura Digi tal.

145
Segurança em Redes

Consiste de algoritmos que utilizam chaves privada e pública para, a partir de um texto
legível de tamanho m, gerar uma informação criptografada de tamanho n onde n é
muito menor que m.
Tal função em um algoritmo assimétrico é conhecida como função de Hash ou de
Espalhamento.
Os algoritmos mais conhecidos são o MD5 (Message Digest 5), que é um
aprimoramento do MD4, e o RSA, também usado para gerar assinaturas digitais de bits
para mensagens de qualquer tamanho.
O RSA é um algoritmo que gera assinaturas digitais de 160 bits para mensagens de
qualquer tamanho. É considerado mais seguro que o MD5, porém tem uma
performance em média 50% inferior, mas é considerado um algoritmo bastante rápido
além de seguro.
A segurança do RSA está baseada no problema de fatorar números grandes.
Um dos fatores que determinam a popularidade do RSA é o fato de ele também poder
ser usado para assinatura digital.

146
Segurança em Redes

Autenticação

Definição
Autenticação é um processo que busca verificar a identidade digital do usuário de um
sistema, normalmente, no momento em que ele requisita um log in (acesso) em um
programa ou computador. A autenticação normalmente depende de um ou mais
"fatores de autenticação".
O termo "autorização" é muitas vezes confundido com o termo autenticação, mas
apesar de serem relacionados, o significado de ambos é muito diferente. A autenticação
é o processo que verifica a identidade de uma pessoa, por sua vez, a autorização
verifica se esta pessoa possui permissão para executar determinadas operações. Por
este motivo, a autenticação sempre precede a autorização.

Aplicação
O controle de acesso é um exemplo comum de adoção de mecanismos de
autenticação. Um sistema computacional, cujo acesso é permitido apenas a usuários
autorizados, deve detectar e excluir os usuários não autorizados. O acesso é controlado
por um procedimento que estabelece a identidade do usuário com algum grau de
confiança (autenticação), e só então concede determinados privilégios (autorização) de
acordo com esta identidade.

Arquitetura Triple A (AAA);


O termo protocolos AAA é uma referência aos protocolos relacionados com os
procedimentos de autenticação, autorização e acompanhamento do uso de recursos
pelos usuários (accounting).
Auten ticação

A autenticação é uma referência ao procedimento que confirma a validade do usuário


que realiza a requisição de um serviço. Este procedimento é baseado na apresentação
de uma identidade junto com uma ou mais credenciais. As senhas e os certificados
digitais são exemplos de credenciais.

147
Segurança em Redes

Autori zação
A autorização é a concessão de uso para determinados tipos de serviço, dada a um
usuário previamente autenticado, com base na sua identidade, nos serviços que
requisita e no estado atual do sistema. A autorização pode ser baseada em restrições,
que são definidas por um horário de permissão de acesso ou localização física do
usuário, por exemplo. A autorização determina a natureza do serviço cujo acesso é
permitido a um usuário. Como exemplos de tipos de serviços temos: filtragem de
endereço IP, atribuição de endereço, atribuição de rota, serviços diferenciados por QoS,
controle de endpoint
determinado banda/gerenciamento
e criptografia. de tráfego, tunelamento compulsório para
Account ing

O procedimento de accounting é uma referência à coleta da informação relacionada à


utilização de recursos de rede pelos usuários. Esta informação pode ser utilizada para
gerenciamento, planejamento, cobrança e etc. A accounting em tempo real ocorre
quando as informações relativas aos usuários são trafegadas no momento do consumo
dos recursos. Na accounting em batch as informações são gravadas e enviadas
posteriormente. As informações que são tipicamente relacionadas com este processo
são a identidade do usuário, a natureza do serviço entregue, o momento em que o
serviço se inicia e o momento do seu término.

Kerberos
Kerberos é o nome de um Protocolo de transporte de rede, que permite comunicações
individuais seguras e identificadas, em uma rede insegura. Para isso o Massachusetts
Institute of Technology (MIT) disponibiliza um pacote de aplicativos que implementam
esse protocolo. O protocolo Kerberos previne Eavesdropping e Replay attack, e ainda
garante a integridade dos dados. Seus projetores inicialmente o modelaram na
arquitetura cliente-servidor, e é possível a autenticação mutua entre o cliente e o
servidor, permitindo assim que ambos se autentiquem.
Kerberos utiliza Criptografia simétrica e necessita de um sistema de confiança tripla.
Kerberos é um protocolo de autenticação do Projeto Athena. Tem esse nome em
alusão ao Cão guarda de três cabeças (Cérbero) do deus Hades da Mitologia grega.
Diversas versões do protocolo já existiram, as versões 1 até a 3 foram utilizadas
somente dentro da MIT. Steve Miller e Clifford Neuman, foram os principais projetistas
da versão 4 do Kerberos, publicada nos anos 80, ainda com foco no Projeto Athena.
A versão 5 foi projetada por John Kohl e Clifford Neuman e publicada em 1993 no RFC
1510 (Ficou obsoleto ao RFC 4120 de 2005), e teve como intenção melhorar a
segurança e as limitações relativas a versão 4.
A MIT disponibilizou uma implementação livre sob licença BSD.
Autoridades Norte-americanas/Estadundenses proibiram o uso do Kerberos, pois esse
utiliza um algoritmo de criptografia com uma chave de 56-bit, chamado DES. Eles
consideraram que o protocolo prejudica a segurança nacional, porque impede que
mensagens interceptadas sejam entendidas (Assim como qualquer aplicativo que utilize
criptografia com chave maior que 40-bit). Uma implementação não americana do
Kerberos, KTH-KRB foi desenvolvida pela Royal Institute of Technology na Suécia,
tornando assim o sistema disponível fora dos EUA, até a mudança da regulamentação

148
Segurança em Redes

de exportação de criptografias. A implementação Sueca é baseada em uma versão


chamada eBones. eBones é baseado em um release da versão eBones da MIT
(Retirado a criptografia e as chamadas a mesma) que por sua vez foi baseado na
versão 4 do Kerberos atualização 9. Esse Kerberos limitado é chamado hoje como
eBones. Uma implementação chamada Heimdal, foi feita basicamente, pelo mesmo
grupo de pessoas e é baseada na versão 5 do Kerberos.
Windows 2000, Windows XP e o Windows Server 2003 utilizam uma variante do
Kerberos, como seu método de autenticação padrão. As adições feitas no conjunto de
protocolos Windows
“Microsoft do Kerberos
2000 pela Microsoft
Kerberos sãoPassword
change documentadas
and Setno RFC 3244
Password chamado
Protocols”. O
Mac OS X da Apple também usa o Kerberos, tanto o cliente como o servidor.
Em 2005, o grupo chamado IETF “IETF Kerberos Workgroup” atualizou as
especificaçõesKerberos. As atualizações incluem:

 "Encryption and Checksum Specifications" (RFC 3961),


 "Advanced Encryption Standard (AES) Encryption for Kerberos 5" (RFC
3962),
 Uma nova edição da especificação do Kerberos versão 5 "The Kerberos
Network Authentication Service (V5)" (RFC 4120). Essa versão substitui o
RFC 1510, tornando a especificação do protocolo mais transparente e o
explicando de modo mais detalhado e limpo.

Uma nova
Generic edição de
Security especificação
Service do GSS-API
Application "TheInterface
Program Kerberos (GSS-API)
Version 5
Mechanism: Version 2." (RFC 4121).

RADIUS
RADIUS (Remote Authentication Dial In User Service), definido em RFC 2865, é um
protocolo proprietário de codificação de 128 bits reais para gerenciamento centralizado
de autenticação de usuários remotos.
Utiliza o algoritmo MD5 para a segurança de senhas e é o provedor do protocolo
802.11i. Diferente da TKIP, a chave para a comunicação entre um servidor RADIUS e
as STA permanece no servidor ao invés de se concatenar com os pacotes.
A centralização de senhas também aumenta segurança do meio, porém, ao tomar o
servidor, um usuário mal intencionado detém o controle do meio inteiro.
Por ser um recurso disponível apenas em alguns produtos e possuir uma camada extra
de codificação, torna o custo da instalação um pouco mais caro em relação aos outros.

TACACS
Terminal Access Controller Access-Control System (TACACS) é um protocolo de
autenticação remota usado para comunicação com servidores de autenticação,
comumente em redes UNIX. TACACS permite que um servidor de acesso remoto se
comunique com um servidor de autenticação para verificar se o usuário tem acesso à
rede.

149
Segurança em Redes

Um cliente coleta o nome de usuário e a senha e então envia uma consulta a um


servidor de autenticação TACACS, as vezes chamado de TACACS daemon ou
simplesmente TACACSD. Baseado na resposta desta consulta, o acesso ao usuário e
liberado ou não.
Outra versão do TACACS lançada em 1990 foi batizada de XTACACS (extended
TACACS). Entretanto, estas duas versões vem sendo substituídas pelo TACACS+ e
pelo RADIUS em redes mais novas. Apesar do nome, TACACS+ é um protocolo
completamente novo e não é compatível com TACACS ou XTACACS.
TACACS é definido pela RFC 1492, usando tanto TCP como UDP e por padrão a porta
49.

150
Segurança em Redes

Glossário da Continu idade de Ne gócios

Termo Significado
ABCP são as iniciais de Associated Business Continuity
Professional, que vem a ser o mais elementar dos três
ABCP níveis de reconhecimento de profissionais do DRI
(Disaster Recovery Institute International). Vide "CBCP" e
"MBCP".
Alerta É a notícia da ocorrência ou da iminência de um desastre.
Ameaça É um fator externo que pode vir a atacar um ativo
causando um desastre ou perda significativa.
Análise de impacto Vide "Business impact analysis".
de desastres
Análise de impacto
nos negócios Vide "Business impact analysis".
Conjunto de procedimentos cuja finalidade é a
Análise de risco identificação dos potenciais desastres, as potenciais
ameaças e as respectivas consequências.
São os conjuntos de dados e informações necessários
Arquivos críticos para a consecução dos processos críticos de trabalho ou
que devam ser submetidos a uma especial guarda em
função de exigências legais.
Diz-se da ativação dos procedimentos de contingência de
Ativação forma a se restabelecer as funções críticas numa situação
excepcional.
Ativo Todo item que uma organização possua e que tenha
algum valor tangível ou intangível.
São as informações na forma de documentos,

Ativos de informação microformas,


outras de umadados, arquivos,
organização, e bancos
bem derecursos
como os dados, dentre
e
equipamentos, incluindo hardware e software, existentes
para garantir o acesso, guarda, transporte e proteção das
informações.
Avaliação de danos Qualificação ou quantificação do impacto de um desastre.
"Back-up" Termo genérico para designar item substituto, reserva ou
cópia.
Processo de geração de cópias dos dados srcinais (vide
"Back-up" de dados
"processo de back -up").
BIA Vide "Business Impact Analysis".
Diz-se do método de Análise e Gestão de Risco desenvolvido
Bow Tie (Método)
pela Shell, nos anos 90. (Bow tie = Gravata borboleta)
BS 7799 Norma britânica relativa a Segurança da Informação

151
Segurança em Redes

composta por três partes. A parte 1 diz respeito às


melhores práticas para uma boa gestão da segurança da
informação (esta parte 1 tornou-se a ISO 17799). A parte
2 diz respeito ao processo de implementação e
certificação dos procedimentos relacionados na parte 1 e
a parte 3 diz respeito ao processo de análise de risco.
Business impact E estimativa (qualitativa ou quantitativa) do impacto nos
analysis negócios decorrente de um desastre específico.
CBCP são as iniciais de "Certified Business Continuity
Professional", que vem a ser um dos três níveis de
CBCP reconhecimento de profissionais do DRI (Disaster
Recovery Institute International...). Vide "MBCP" e
"ABCP".
Contingência Situação excepcional decorrente de um desastre.
A ISO 17799 (e a BS 7799) usa o termo genérico
Controle de
segurança da "controle" para designar todos os procedimentos,
informação mecanismos e dispositivos aplicáveis para a gestão e
implementação da segurança da informação.
São as cópias feitas de um arquivo ou de um documento
Cópia de segurança que deverão ser guardadas sob condições especiais para
a preservação de sua integridade no que diz respeito tanto
a forma como conteúdo.
Situação excepcional que tenha potencial de colocar a
sobrevivência de uma organização em risco, ou que tenha
Crise capacidade de gerar perdas tangíveis ou intangíveis
significativas.
É um evento súbito e inesperado cujo impacto resulte em
Desastre
perdas significativas para a organização.
Disaster Recovery
Institute International Vide DRI.
O DRI é o Disaster Recovery Institute International,
DRI entidade sem fins lucrativos cuja missão é promover o
conhecimento relacionado à gestão da continuidade dos
negócios.
Emergência É o estado que se segue à ocorrência de um desastre.
Espelhamento de Num espelhamento de discos (hard drive) o mesmo dado
discos é gravado em dois discos diferentes simultaneamente (em
termos práticos podemos considerar simultaneamente).
São as funções cuja indisponibilidade por um tempo
Funções críticas superior ao tolerável geram perdas significativas para a
organização.
É um processo de gestão cuja finalidade é reduzir a
Gerência de risco possibilidade de eventos indesejáveis a um patamar
tolerável ou aceitável.
É um processo de gestão que, baseado na comunicação
Gestão de crise
institucional, objetiva mitigar os impactos de um desastre.
É a medida do risco que um recurso ou um ativo está
exposto a um desastre. É função do valor do ativo, das
Grau de exposição ameaças, das vulnerabilidades e dos dispositivos de
proteção e prevenção existentes.
Incidente
Um incidente é um evento de pequeno impacto, mas que
poderia ter causado um desastre.

152
Segurança em Redes

Incapacidade temporária que impeça a utilização de um


Indisponibilidade
recurso ou processo.
Os serviços e instalações que dão suporte aos processos
Infra-estrutura crítica críticos da organização são considerados como infra-
estrutura crítica.
Inoperância Incapacidade de funcionamento temporária de um recurso
ou processo da organização.
Norma internacional publicada pela ISO onde estão
ISO 17799 relacionadas as melhores práticas para uma boa gestão
da segurança da informação. Vide "BS 7799".
Vem a ser o local onde deverá ser operacionalizado o
Local alternativo regime de contingência. Também conhecido como "back-
up site".
MBCP são as iniciais de Master Business Continuity
Professional, que vem a ser o mais graduado dos três
MBCP níveis de reconhecimento de profissionais do DRI
(Disaster Recovery Institute International). Vide "CBCP" e
"ABCP".
Mission critical Os sistemas aplicativos que dão suporte às funções
application críticas de uma organização são reconhecidos como
"mission critical".
Conjunto de procedimentos, previamente planejados, a
Plano de
contingência serem adotados após a ocorrência de um desastre com o
objetivo de minimizar os impactos do mesmo.
Plano de Conjunto de planos e de procedimentos dedicados a
garantir a continuidade das operações vitais de uma
continuidade
organização, ainda que sob o impacto de um desastre.
Conjunto de procedimentos alternativos, a serem
Plano de recuperação adotados após um desastre, visando a reativação dos
de desastres processos operacionais que tenham sido paralisados, total
ou parcialmente, ainda que com alguma degradação.
Conjunto de procedimentos dedicados a minimizar os
Plano de resposta
impactos de um desastre iminente ou durante sua
emergencial ocorrência.
Conjunto de procedimentos dedicados a facilitar o retorno
Plano de retorno da produção e operação às condições "normais" (depende
do que será considerado como condição "normal")
existentes antes do desastre.
Documento onde deve ser explicitado o comprometimento
Política de segurança de uma organização com a segurança da informação
da informação (diretrizes ) e os mecanismos pelos quais esta
organização irá garantir tal compromisso.
Procedimentos de Ações adotadas de forma a mitigar o impacto de um
emergência desastre. Vide "plano de resposta emergencial".
É um processo de trabalho que uma vez paralisado por
Processo crítico tempo superior ao aceitável irá afetar gravemente as
operações e serviços da organização.
Processo de "back- Processo de geração de cópias de arquivos ou base de
up" dados. Vide "back-up de dados".
É todo recurso imprescindível para a produção de um
Recurso crítico processo crítico de trabalho da organização.
Redundância Diz-se de um segundo dispositivo que esteja

153
Segurança em Redes

imediatamente disponível para uso quando de uma falha


de um dispositivo primário de um sistema de computador.
Vide "tolerância à falha".
Replicação de base Processo de geração de cópia de uma base de dados.
de dados Vide "espelhamento de discos".
Resposta Conjunto de ações adotadas de forma a mitigar o impacto
de um desastre ainda durante sua ocorrência. Vide "plano
emergencial
de resposta emergencial".
Diz-se da recuperação física da infra-estrutura que tenha
Restauração sido impactada por um desastre. Vide "plano de retorno".
É a probabilidade da concretização de um evento que
Risco de segurança possa causar perdas significativas por causar danos a um
ou mais aos ativos da organização.
A gestão de risco reduz o risco a um patamar aceitável. O
Risco residual risco que ainda venha a existir após a adoção de medidas
preventivas e de controle é denominado de risco residual.
"Recovery point objective" vem a ser a posição (no tempo)
na qual deverão estar disponíveis os dados das
RPO aplicações recuperadas por ocasiãoapós a ocorrência de
um desastre. O RPO está diretamente relacionado com o
processo e freqüência de geração de cópias de
segurança.
"Recovery time objective" vem a ser o tempo pré-definido
RTO no qual um processo deverá estar disponível após a
decretação do no regime de contingência.
Teste de mesa Vide "walk-through" (teste).
Diz-se da capacidade de um sistema de computador
Tolerância à falha superar falhas de um de seus componentes através do
uso de recursos redundantes. Vide "redundância".
Unidade de geração de energia elétrica autônoma,
usualmente tendo como fonte um conjunto de baterias.
Deve estar instalada de forma a não haver
UPS / "No-break" descontinuidade de fornecimento de energia elétrica para
os equipamentos críticos quando de uma falha de
suprimento da rede pública (UPS = "uninterruptible power
supply").
Vulnerabilidade Ponto fraco que venha a expor um ativo crítico a um
possível ataque de uma ameaça.
"Walk-through" (teste) Tipo de prática onde é feita uma

154

Você também pode gostar