VERSÃO PARA IMPRESSÃO

Documentos relacionados
Protocolos e Serviços de Redes

Prof. Marcelo Cunha Parte 6

FUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão

Protocolos de Rede. Protocolos em camadas

ATENÇÃO O TCP/IP não é um protocolo. TCP/IP é um conjunto de diversos protocolos em 04 camadas próprias que se relaciona com o modelo OSI.

Redes de Computadores

Introdução à Computação

Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo

Sistemas de Detecção de Intrusão

Firewalls. Carlos Gustavo A. da Rocha. ASSR

Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte

Firewall. Prof. Marciano dos Santos Dionizio

REDES DE COMPUTADORES

REDES DE COMPUTADORES

Funcionalidade e Protocolos da Camada de Aplicação

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES

Modelo de Camadas. Redes de Computadores

Solução em AntiSpam em Nuvem. Filtre mais de 99,98% dos s indesejados!

Introdução às camadas de transporte e de rede

AULA EXPOSITIVA SOBRE: CONCEITOS E IMPLEMENTAÇÃO DE FIREWALL, VPN E SSH (REDES PRIVADAS E SERVIÇOS DE ACESSO REMOTO)

Arquitetura da Internet TCP/IP

O que é o NTP e como utilizar o NTP.br

CURSO TÉCNICO EM INFORMÁTICA

Transferência de Arquivo: Protocolo FTP

Redes de Computadores

Segurança e Auditoria. Auditoria Coleta de dados, Análise de dados, Auditoria preventiva. de Sistemas

PROJETO LÓGICO DE REDE

Firewall - Inspeção com estado. (Stateful Inspection)

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO RIO GRANDE DO NORTE DEPARTAMENTO ACADÊMICO DE TECNOLOGIA DA INFORMAÇÃO

Redes de Computadores I

INTERNET. A figura mostra os inúmeros backbones existentes. São cabos de conexão de altíssima largura de banda que unem o planeta em uma rede mundial.

Introdução a Redes e a Internet. Introdução ao Computador 2010/01 Renan Manola

DHCP Dynamic Host Configuration Protocol

Mantendo sua VPN protegida

CCNA 2 Conceitos Básicos de Roteadores e Roteamento

Protocolos da camada aplicação

UMG 50. Principais Características. Aplicações Típicas. Visão Geral USER MEDIA GATEWAY E1 E VOIP. Do tamanho da sua empresa

DESCRIÇÃO E JUSTIFICATIVAS TECNICAS SOBRE A INFLUÊNCIA DO SISTEMA OPERACIONAL NA SEGURANÇA DOS SERVIÇOS IPS

INFORMÁTICA. Com o Professor: Rene Maas

Resumo P2. Internet e Arquitetura TCP/IP

Gerenciamento de Redes. Alan Santos

Os três principais tipos de firewall são o filtro de pacotes, o filtro de pacotes com estado e o proxy.

6. Explique a camada de aplicação. A camada de Aplicação é a que fornece os serviços Reais para os usuários:

Levantamento de informação (Fingerprint)

SNORT. Sistema de Detecção de Intrusão de Rede. Amanda Argou Vilnei Neves REDES II

Sistema de Monitoramento de Dispositivos utilizando o Pandora FMS

Padrões (arquiteturas) de rede

REDES DE COMPUTADORES. Vinícius Pádua

UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO O MODELO TCP/IP

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Arquitetura de sistemas distribuídos

CURSO TÉCNICO EM INFORMÁTICA

CURSO TÉCNICO EM INFORMÁTICA

Camada de Transporte Protocolos TCP e UDP

Configuração do Servidor Gateway Firewall e DHCP

Ideal para roteamento de chamadas entre filial x matriz Cancelamento de eco

Laboratório - Uso do Wireshark para examinar uma captura UDP DNS


Capítulo 7. A camada de aplicação

Servidores. Um Servidor, em redes de computadores, nada mais é que um host da rede capaz de oferecer um determinado serviço a outros hosts da redes.

Rede de computadores Protocolos UDP. Professor Carlos Muniz

Ideal para conversão das chamadas analógicas para 2 portas de redes Ethernet. VoIP, utilizando toda a rede e aparelhos analógicos FXS 24 canais VoIP

Redes de Computadores e Aplicações

TCP/IP TCP UDP IP HTTP HTTPS FTP TFTP TELNET POP3 IMAP SMTP SNMP DHCP

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1

Introdução ao Burp Suite

Noções sobre Redes de Computadores. Aula 16/06 Secretariado Executivo

Redes de Computadores. Prof. Msc André Y. Kusumoto

Camada de Aplicação da Arquitetura TCP/IP

AULA 3 - REDES. Prof. Pedro Braconnot Velloso

Apostila 4. Ameaças e Contramedidas de Segurança no Host

Ideal para conversão das chamadas analógicas para 2 portas de redes Ethernet. VoIP, utilizando toda a rede e aparelhos analógicos FXS 24 canais VoIP

Redes de comunicação. Mod 2 Redes de computadores. Professor: Rafael Henriques

Informática Básica. Aula 03 Internet e conectividade

PN7320. Power Over the NET de 20 portas (unidade de distribuição de energia PDU)

Classes de endereços IP - Os bits de endereços IP são reservados um para a classe de rede e os outros para computador (host).

O QUE É? O Microsoft Windows Server é um sistema operacional destinado para servidores.

MANUAL DO USUÁRIO - APP MONIVOX ROIP

Como Permitir a Navegação Usando o NetBIOS Over IP

Gerência de Redes de Computadores RMON. Prof. Alex Furtunato

MODELOS DE REFERENCIA OSI TCP/IP

IMEI MONTAGEM E MANIPULAÇÃO DE REDES DE DADOS - REDES DE COMPUTADORES. Curso Profissional de Técnico de Gestão de Equipamentos Informáticos

Rede Local - Administração Endereçamento IPv4

Gerenciamento de Redes: Protocolo SNMP

Tecnologia de Redes. Arquitetura de Rede de Computadores

GERENCIADOR DE REDE NTOP

TECNOLOGIA WEB INTERNET PROTOCOLOS

Transcrição:

VERSÃO PARA IMPRESSÃO SEGURANÇA DE REDES DE COMPUTADORES UIA 2 SEGURANÇA NOS SERVIÇOS DE REDES

Este material é destinado exclusivamente aos alunos e professores do Centro Universitário IESB, contém informações e conteúdos protegidos e cuja divulgação é proibida por lei. O uso e/ou reprodução total ou parcial não autorizado deste conteúdo é proibido e está sujeito às penalidades cabíveis, civil e criminalmente.

3 SUMÁRIO Aula 7 Filtragem de Pacotes... 5 7.1. Introdução... 5 7.2. Conceitos... 5 7.3. Visão Geral... 5 7.3.1. A filtragem de Pacotes... 6 7.3.2. Abordagens para Aplicação de Filtros... 7 7.4. A Sintaxe das Regras... 7 7.4.1. Ação... 7 7.4.2. Direção... 7 7.4.3. Log... 7 7.4.4. Quick... 8 7.4.5. Interface... 8 7.4.6. AF... 8 7.4.7. Protocolo... 8 7.4.8. SRC_ADDR, DST_ADDR... 8 7.4.9. SRC_PORT, DST_PORT... 9 7.4.10. TCP_FLAGS... 10 7.4.11. State... 10 7.5. Negar por Padrão... 10 7.6. Passando Tráfego... 10 Aula 8 Vulnerabilidades nos Serviços de Redes... 11 8.1. Serviços de Redes... 11 8.2. Conceitos... 11 8.2.1. Serviços de Redes Cliente-Servidor... 12 Gateway... 12 DHCP... 12 Outros Serviços... 12 8.2.2. Serviços de Redes na Internet... 12 WWW e HTTP... 12 FTP... 13 DNS... 13 E-Mail... 13 IMAP... 13 SMTP... 14 TELNET... 14 SSH... 14 IPv4 e IPv6... 14 8.3. Ameaça e Vulnerabilidades dos Serviços de Redes... 15 8.3.1. Vulnerabilidades no DNS... 15 8.4. Regras Básicas... 16 Aula 9 Configuração de Segurança de Serviços de Rede... 16 9.1. Gerenciamento de Logs... 16 9.1.1. Syslog-ng... 17 9.1.2. Logs do Windows... 19 9.1.3. NTP... 19 Aula 10 Monitoramento de serviços... 21 10.1. Monitoramento de serviços... 21 10.1.1. Nagios... 21

4 10.1.2. Zabbix... 22 10.1.3. Cacti... 24 10.1.4. Ntop... 24 10.1.5. Avaliação... 26 10.2. Ferramentas de monitoramento de segurança... 26 10.2.1. Wireshark... 26 10.2.2. Metasploit... 27 10.2.3. OpenVAS... 27 10.2.4. Nmap... 28 10.2.5. Aircrack-ng... 29 10.2.6. KISMET... 30 Aula 11 Autenticação... 30 11.1. Sistema AAA... 31 11.1.1. Autenticação... 31 Algo que você sabe... 31 Algo que você tem... 31 Algo que você é... 31 Autorização... 32 Auditoria... 32 11.2. Sistemas de Autenticação Única... 32 11.2.1. OTP... 32 11.2.2. S/Key... 33 11.2.3. Smart Card... 34 11.3. Protocolo Kerberos... 35 11.3.1. Acesso a serviços em uma rede... 37 11.3.2. Benefícios do Kerberos... 38 11.4. Biometria... 38 Aula 12 Controle de Acesso... 39 12.1. Controle de acesso... 39 12.1.1. Controle de Acesso Centralizado... 40 12.1.2. Controle de Acesso Descentralizado... 40 12.2. Processos do Controle de acesso... 40 12.3. Mecanismos de Segurança... 41 12.4. Modelos de segurança... 41 12.5. Controle de Acesso Discricionário (DAC)... 43 12.6. Controle de Acesso Mandatório (MAC)... 44 12.7. Controle de Acesso Baseado em Perfis (RBAC)... 45 12.7.1. Controle de Acesso Baseado em Regras... 46

5 Aula 7 FILTRAGEM DE PACOTES 7.1. INTRODUÇÃO Já estudamos que existem várias formas de ataques e como ajuda na proteção de servidores internos a criação e implementação de filtros de pacotes pode ser uma boa iniciativa para o bloqueio de acessos indevidos. Esta iniciativa, de uso de filtros é recomendada para utilização em situações simples e complementada por outros mecanismos de segurança, que permitam uma maior flexibilidade e também um controle efetivo. Eles são bastante úteis porém não devem ser empregados como a única forma de defesa da rede. 7.2. CONCEITOS Filtragem de pacotes é o bloqueio ou liberação da passagem de pacotes de dados de maneira seletiva, conforme eles atravessam a interface de rede. O critério usado pelo pf(4) ao inspecionar pacotes são baseados nos cabeçalhos da Camada 3 (IPv4 e IPv6) e Camada 4 (TCP, UDP, ICMP, e ICMPv6). Os critérios mais usados são endereço de origem e destino, porta de origem e destino e protocolo. Regras de filtragem especificam o critério em que o pacote deve se enquadrar e a ação resultante, que pode ser bloqueio ou liberação, tomada quando o pacote casa com a regra. As regras de filtragem são avaliadas em sequência da primeira a última. A não ser que o pacote encontre um regra contendo a palavra-chave quick, o mesmo será avaliado contra todas as regras de filtragem antes da ação final ser tomada. A última regra a casar é a "vencedora" e dita qual ação tomar. Existe um pass all implícito no início das regras de filtragem, que significa que caso o pacote não case com nenhuma regra a ação resultante será pass. Após a aplicação dos filtros é recomendável que o administrador da rede fique atento ao desempenho da mesma que pode sofre um pequeno impacto levando-se em conta alguns fatores como volume do tráfego, número de filtros entre outros; o bom senso deve prevalecer para achar a melhor medida que garanta um certo nível de segurança e bom desempenho da rede. 7.3. VISÃO GERAL São sistemas responsáveis pela filtragem dos pacotes entre hosts internos e externos de um modo seletivo. Para se implementar uma barreira de segurança numa rede de computadores, é fundamental que se conheça os detalhes dos protocolos de comunicação utilizados, os mais usuais são TCP, IP, UDP e ICMP. Estes são os principais protocolos a nível de rede e transporte que são considerados e examinados ao se estabelecer regras de filtragem num filtro de pacotes (Packet Filtering) para a Internet.

6 Fonte: http://tinyurl.com/zx7ratg Este mecanismo de filtragem no roteador possibilita que se controle o tipo de tráfego, em qualquer parte da rede, e controla o tipo de serviços que possam comprometer a segurança de rede, restringindo-os. O componente que realiza a filtragem de pacotes, geralmente é um roteador, sendo este designado de screening router. 7.3.1. A FILTRAGEM DE PACOTES Consiste na análise dos pacotes, conforme o conteúdo de determinados campos que fazem parte do cabeçalho do pacote, esta análise permite a passagem ou descarte do pacote conforme os filtros. O filtro é composto de várias regras que levam em conta principalmente: Endereço IP de origem e destino - Todo pacote possui um endereço de origem e um endereço de destino. O endereço de origem é o da máquina (interface) que estabeleceu a comunicação, enquanto o endereço de destino corresponde à máquina de destino final. Quando o pacote trafega pela rede estes endereços não são alterados. A filtragem por endereço pode ser feita pela origem e/ou destino, no endereço completo (host) ou em parte dele (net ou bloco). Protocolo - As regras podem ser montadas para bloquear totalmente um determinado protocolo (UDP, TCP, ICMP ou RCP) ou especificar um serviço, que assume características diferentes dependendo da combinação protocolo/porta. Portas de origem e destino - O acesso a serviços Internet é feito com base nos números de portas. Assim como os endereços IP, as portas podem ser modificadas no caso de um ataque para tentar contornar os filtros. Outros campos dos cabeçalhos TCP/IP como Type-of-service (TOS) e Flags (bit ACK), podem ser utilizados para as regras de filtragem.

7 7.3.2. ABORDAGENS PARA APLICAÇÃO DE FILTROS Bloquear alguns acessos e permitir todos os demais - este tipo de regra é simples de implementar, mas pode dar uma falsa sensação de segurança, já que o mesmo serviço pode ser ativado em uma porta completamente diferente. Permitir alguns acesso e bloquear todos os demais - este tipo de filtro possui uma implementação mais complexa e exige um maior entendimento do funcionamento dos protocolos, mas oferece um maior nível de segurança. Sentido da aplicação do filtro - O sentido da aplicação dos filtros é fundamental para seu funcionamento, e pode ser aplicados na entrada da interface (inbound) ou saída (outbound). Dependendo do sentido, os endereços IP e as portas mudam completamente. Saiba mais sobre o conceito de filtragem de pacotes assistindo ao vídeo http://tinyurl.com/jnpzuea 7.4. A SINTAXE DAS REGRAS A forma geral simplificada da sintaxe para regras de filtragem é: ação [direção] [log] [quick] [on interface] [af] [proto protocolo] \ [from src_addr [port src_port]] [to dst_addr [port dst_port]] \ [flags tcp_flags] [state] 7.4.1. AÇÃO A ação executada em pacotes que combinem com a regra, pode ser pass ou block. A ação pass libera a passagem do pacote para processamento posterior pelo kernel, enquanto que a ação block reagirá com base na opção block-policy. A reação padrão pode ser sobrescrita especificando block drop ou block return na regra. 7.4.2. DIREÇÃO A direção em que o pacote está se movendo na interface, pode ser in ou out. 7.4.3. LOG Especifica que o pacote deve ser logado. Caso a regra especifique as opções keep state, modulate state ou synproxy state somente o pacote que estabelece a conexão é logado. Para logar todos pacotes, use log-all.

8 7.4.4. QUICK Se um pacote casar com uma regra que especifique a palavra quick, esta regra é considerada final e a ação especificada é executada. 7.4.5. INTERFACE O nome ou grupo da interface de rede onde o pacote passa. Um grupo de interface é especificado com o nome da interface mas sem o número no final. Por exemplo: ppp ou fxp. Fará com que a regra case com qualquer pacote atravessando qualquer interface ppp ou fxp respectivamente. 7.4.6. AF A família de endereços a que o pacote pertence, inet para IPv4 ou inet6 para IPv6. Geralmente o PF pode determinar essa informação com base no endereço(os) de origem e/ou destino do pacote. 7.4.7. PROTOCOLO O protocolo de Camada 4 do pacote: tcp udp icmp icmp6 Um nome de protocolo válido em /etc/protocols Um número de protocolo entre 0 e 255 Um grupo de protocolos utilizando uma lista. 7.4.8. SRC_ADDR, DST_ADDR Os endereços de origem/destino no cabeçalho do IP. Endereços podem ser especificados como: Endereço IPv4 ou IPv6 simples. Um bloco de rede CIDR. Nome de domínio totalmente qualificado, que será resolvido pelo DNS quando as regras forem carregadas. Todos endereços IP resultantes serão substituidos na regra. O nome de uma interface de rede. Quaisquer endereços IP na interface substituirão a regra. O nome de uma interface de rede seguido por uma /máscara (ex., /24). Cada endereço IP na interface é combinado com a máscara para formar um bloco de rede CIDR que será substituido na regra. O nome de uma interface de rede entre parenteses ( ). Isto informa ao PF para atualizar a regra caso o endereço(os) da interface sofra alteração. Útil em interfaces que obtém seu endereço IP via DHCP ou dialup, pois as outras regras não precisarão ser recarregadas toda vez que o endereço mudar.

9 O nome de uma interface de rede seguido por algum dos modificadores: :network - substitui o bloco de rede CIDR (ex., 192.168.0.0/24) :broadcast - substitui o endereço de broadcast (ex., 192.168.0.255) :peer - substitui o endereço da outra ponta num link ponto-a-ponto Além disso, o modificador :0 pode ser adicionado a um nome de interface ou qualquer um dos modificadores acima para indicar ao PF para não incluir endereços IP de aliases na substituição. Estes modificadores também podem ser usados quando o nome da interface está entre parênteses. Exemplo: fxp0:network:0 Uma tabela. Qualquer dos apresentados acima, negado usando o modificador! ("not"). Um grupo de endereços usando-se uma lista. A palavra-chave any indicando todos os endereços A palavra-chave all que é um atalho para from any to any. 7.4.9. SRC_PORT, DST_PORT A porta de origem/destino no cabeçalho da Camada 4 do pacote. Portas podem ser especificadas da seguinte forma: Um número entre 1 e 65535 Nome de serviço válido em /etc/services Lista de portas usando uma lista Uma faixa:!= (diferente) < (menor que) > (maior que) <= (menor ou igual a) >= (maior ou igual a) >< (faixa) <> (faixa inversa) Os dois últimos são operadores binários (recebem dois argumentos) e não incluem os argumentos na faixa. : (faixa inclusiva) O operador de faixa inclusiva também é um operador binário e inclui os argumentos na faixa.

10 7.4.10. TCP_FLAGS Especifica os flags que devem estar setados no cabeçalho TCP quando for usado proto tcp. Flags são especificados na forma: flags check/mask. Por exemplo: flags S/SA - instrui o PF a verificar somente os flags S e A (SYN e ACK) e casar, se apenas o flag SYN estiver "setado". 7.4.11. STATE Especifica se a informação de estado deve ser mantida em pacotes que casem com a regra. keep state - funciona com TCP, UDP, e ICMP. modulate state - funciona apenas com TCP. PF irá gerar Números de Sequência Inicial (ISNs) seguros para pacotes que combinem com esta regra. synproxy state - faz proxy de pedidos de conexão TCP para ajudar a proteger servidores contra floods de pacotes SYN TCP spoofados. Essa opção inclui a funcionalidade keep state e modulate state. 7.5. NEGAR POR PADRÃO A prática recomendada ao configurar um firewall é usar uma política "negar por padrão". Isto é, bloquear tudo, e depois ir permitindo certos tipos de tráfego através do firewall. Esta é a abordagem recomendada por ser mais cautelosa, além de facilitar a configuração das regras. Para criar uma política de filtragem negar por padrão, as primeiras duas regras de filtragem devem ser: block in all block out all Isto irá bloquear todo o tráfego em todas interfaces em qualquer direção, de qualquer lugar para qualquer lugar. 7.6. PASSANDO TRÁFEGO O tráfego agora deve ser explicitamente permitido ou será barrado pela política padrão do firewall. É aqui que os critérios de filtragem como porta de origem/destino, endereço de origem/destino e protocolo entram em cena. Sempre que o tráfego tiver permissão de cruzar o firewall as regras devem ser escritas da maneira mais restritiva possível. Isso é para nos certificarmos de que o tráfego válido, e, somente tráfego válido terá permissão de passagem. Alguns exemplos: # Autoriza passagem de tráfego chegando em dc0 vindo da rede local 192.168.0.0/24, # e indo para a máquina OpenBSD com endereço IP 192.168.0.1. Também permite # tráfego de retorno saindo via dc0. pass in on dc0 from 192.168.0.0/24 to 192.168.0.1 pass out on dc0 from 192.168.0.1 to 192.168.0.0/24 # Permite tráfego TCP chegando em fxp0 e indo para o servidor web # rodando na máquina OpenBSD. O nome da interface, fxp0, é usado como # endereço de destino, para que apenas pacotes destinados à # máquina OpenBSD casem com a regra. pass in on fxp0 proto tcp from any to fxp0 port www

11 Aula 8 VULNERABILIDADES NOS SERVIÇOS DE REDES 8.1. SERVIÇOS DE REDES Como já vimos na unidade anterior, serviços de redes são conjuntos de operações implementadas pelos protocolos através de uma interface, e são oferecidos e entregues à camada imediatamente superior. Os serviços definem o que uma camada é capaz de executar sem se preocupar com a maneira pela qual as operações serão executadas na camada superior. Fonte: http://tinyurl.com/jato5xk Os serviços podem ser orientados a conexão ou não. Serviços relacionados à família TCP são orientados a conexão, enquanto serviços relacionados ao protocolo UDP são sem conexão. Figura 1. Infraestrutura de redes. Fonte: http://tinyurl.com/j82tele Os serviços são utilizados por diferentes aplicações, podendo uma aplicação utilizar vários serviços, como, por exemplo, um browser como o Mozilla Firefox. Ele utiliza, por exemplo, HTTP, SHTTP, DNS. 8.2. CONCEITOS Serviços orientados a conexão: é o serviço realizado pelo protocolo TCP. Antes da realização do envio de dados, um processo chamado handshaking cria uma conexão entre os hosts. Isto tem por objetivo preparar o receptor para o recebimento de pacotes. Esta prévia conexão verificará se todos os pacotes chegarão corretamente ao destino, e em caso negativo, solicitará o reenvio dos mesmos (quando o receptor recebe um pacote, ele envia uma mensagem confirmando o recebimento ao transmissor. No caso da confirmação não chegar, o pacote será reenviado), gerando uma transferência de dados muito confiável. É possível ainda, realizar um controle de fluxo e congestionamento, para os casos em que o receptor não suporta a velocidade de envio dos pacotes, ou quando algum roteador no caminho da rede está congestionado (é

12 enviada uma mensagem ao transmissor, falando para reduzir a velocidade ou interromper o envio de pacotes). Como exemplo de serviços orientados a conexão, TCP, temos: HTTP, FTP, Telnet. Serviços sem conexão: é o serviço do protocolo UDP (Protocolo de Datagrama de Usuário). Neste tipo de serviço, não há o processo de handshaking. Desta forma, a aplicação apenas envia dados para um host, e e assim não há como saber se todos os pacotes chegaram. É um processo bem mais rápido, por não haver a etapa da handshaking, mas é menos confiável, além ainda de não possuir a possibilidade de controlar o fluxo e o congestionamento como no TCP. Algumas aplicações que usam o UDP: conferência de vídeo e telefone por internet. 8.2.1. SERVIÇOS DE REDES CLIENTE-SERVIDOR GATEWAY Segundo Tanembaum, o nome geral para uma máquina que faz uma conexão entre duas ou mais redes e oferece a conversão necessária, tanto em termos de hardware e software, é um gateway. Em rede de computadores, um gateway ou porta de entrada, é um computador intermediário ou um dispositivo dedicado, que tem cmo responsabilidade fornecer alguns tipos de serviços. Entre as suas funcionalidades principais, destacam-se (a) a interligação de duas redes que possuem protocolos diferentes, (b) o compartilhamento da conexão de internet, roteadores, proxy, firewalls, etc. DHCP O protocolo DHCP (Dynamic Host Configuration Protocol ou Protocolo de configuração dinâmica de endereços de rede) é um serviço extremamente utilizado para realizar a atualização das configurações de rede em dispositivos que usem o protocolo TCP/IP. Sem utilizar o protocolo DHCP, o profissional de TI teria que configurar, manualmente, as propriedades do protocolo TCP/IP em cada dispositivo que esteja conectado a rede, denominado pelo protocolo como host. OUTROS SERVIÇOS Existem diversos outros serviços de rede cliente-servidor tais como proxy e firewall, que já foram vistos em outras sessões do curso. 8.2.2. SERVIÇOS DE REDES NA INTERNET WWW E HTTP A internet é um conjunto de computadores interconectados por diversas redes, com o objetivo de compartilhar as mais diversas informações. É um conjunto de redes que trabalham com o modelo de referência da arquitetura TCP/IP. Os serviços fornecidos pela web (WWW - World Wide Web) ganharam dimensões maiores nós últimos anos. No início da internet, as páginas trabalhavam somente através de texto. Mas com a identificação das suas possibilidades, novas tecnologias foram desenvolvidas e o protocolo HTTP passou a trabalhar com diversas informações, como imagens, sons e, atualmente, vídeo. Hoje em dia, todos os sites praticamente têm seus conteúdos com estas informações.

13 As informações que trafegam pela web foram aumentando, consequentemente, com o surgimento de novas tecnologias e com a demanda crescente de novas informações e conteúdos. FTP O FTP (File Transfer Protocol Protocolo de transferência de arquivos) é um protocolo utilizado na internet para acesso de arquivos remotos, e em servidores de arquivos locais nas organizações. O protocolo FTP permite transferir arquivos pela internet. Ao fazermos o download de um arquivo, normalmente utilizamos este protocolo FTP. Ele é também utilizado para que o usuário faça o upload de um arquivo de seu computador para um servidor na rede. Na internet, é possível encontrar vários programas gratuitos que fornecem os serviços de FTP. Através deste protocolo, é possível transferir arquivos, autenticar usuários e gerenciar arquivos e diretórios. DNS O DNS (Domain Name System ou Sistema de Nomes de Domínios) é um dos serviços mais importantes e mais utilizados da internet. É o sistema que realiza o gerenciamento de nomes hierárquico e distribuído e, é ainda responsável pela conversão do nome das páginas web para endereços IP. O modelo de referência TCP/IP possui dois níveis de DNS, o primário e o secundário. DNS primário é o principal; quando digitamos o endereço da página web pelo DNS primário, localizamos a página solicitada através do navegador. O DNS secundário funciona da mesma forma que o primário, porém é utilizado quando este não é encontrado; ele nós oferece mais segurança. E-MAIL O e-mail (electronic mail) é um serviços que permite ao usuário enviar e receber informações por meio de uma rede de computadores. Com este serviço, é possível transmitir informações pela internet ou pela rede interna de uma empresa, a intranet. A trocar e-mail é algo muito comum no mundo digital. Olhar a caixa de e-mail diariamente é uma atividade normal. A ferramenta de comunicação conquistou os usuários ao redor do mundo e se tornou indispensável no dia a dia dos negócios. IMAP No início do correio eletrônico, o protocolo POP (Post Office Protocol), foi bastante utilizado para que as mensagens do e-mail fossem transferidas para o computador local do usuário. A versão mais utilizada do protocolo POP é o POP3. Com a alta demanda do correio e com o surgimento de novos dispositivos e mobilidade, surge um protocolo alternativo para correio eletrônico, o IMAP. Hoje o mais utilizado é o IMAP4. Segundo Tanenbaum esse protocolo pressupõe que todas as mensagens de correio eletrônico permaneçam no servidor, em várias caixas de correio. Mesmo baixando as mensagens para o seu computador local, elas ficarão disponíveis no servidor de e-mail. Com o IMAP4 é possível trabalhar com os modos de mensagens off-line, on-line e desconectado.

14 SMTP Segundo Scrimger, o protocolo SMTP realiza a transferência de e-mails de um sistema de correio eletrônico para outro. Ele assegura um método eficiente e confiável. A mensagem é armazenada no servidor SMTP até que seja transferida para o servidor de destino. Ele é baseado na entrega fim a fim, isto é, conecta ao servidor de destino para transferir a mensagem. TELNET TELNET é um protocolo utilizado pelos usuários e administradores no acesso remoto entre o cliente e o servidor. Já não é tão utilizado e sua grande utilização deveu-se à sua estabilidade. O TELNET opera na camada de aplicação e utiliza o protocolo TCP para transportar as informações. A conexão com um servidor de TELNET é normalmente iniciada por um cliente, quando ele fornece acesso a programas do servidor, login simultâneo, entre outros. Opera tanto graficamente quanto com linhas de comando, em que as instruções são enviadas para serem executadas no servidor. Em geral, os comandos básicos tem nomes curtos. SSH O protocolo SSH oferece uma funcionalidade semelhante ao TELNET tendo porém duas melhorias significantes e importantes: a comunicação segura e a transferência de dados adicionais e independentes pela mesma conexão. Comer diz que, o SSH oferece três mecanismos que formam a base dos serviços que ele fornece: Protocolo de camada de transporte - fornece autenticação de servidor, confidencialidade de dados e integridade de dados com privacidade de encaminhamento perfeita (ou seja, se uma chave for comprometida durante uma sessão, o conhecimento não afeta a segurança das sessões anteriores). Protocolo de autenticação de usuário - autentica o usuário para o servidor. Desta forma o servidor pode entender exatamente que o usuário está tentando formar uma conexão. Protocolo de conexão - multiplexa diversos canais de comunicação lógicos através de uma única conexão SSH subjacente. IPV4 E IPV6 Na internet, cada computador conectado à rede tem um endereço IP. Todos os endereços IPv4 possuem 32 bits. Os endereços IP são atribuídos à interface de rede do computador, normalmente, às placas de rede. Para Tanenbaum, é importante observar que um endereço IP não se refere realmente a um computador. Na verdade, ele se refere a uma interface de rede; desta forma, se um computador estiver em duas redes, ele precisará ter duas interfaces de rede para possuir dois endereços IP. Com o passar do tempo, o IPv4 passou a apresentar algumas limitações com o aumento demasiado do número de computadores na internet nos últimos anos. Os endereços de 32 bits foram se esgotando com o passar dos anos e estima-se que esteja esgotado. Hoje em dia o protocolo IPv6 vem sendo implantado gradativamente na internet.

15 Segundo Albuquerque, o protocolo foi desenvolvido para atender não apenas às necessidades atuais, mas também às necessidades das aplicações futuras. As principais características do IPv6 são: (a) protocolos simples; (b) endereços de 128 bits para identificar as máquinas; (c) sem restrições quanto à topologia da rede; (d) recursos para autenticação e criptografia dos datagramas; (e) independe das características do meio de transmissão; (f) modo básico de operação baseado em datagramas; (g) eficiente em redes de alta e baixa velocidade, entre outros. 8.3. AMEAÇA E VULNERABILIDADES DOS SERVIÇOS DE REDES Como vimos os serviços são essenciais para o que temos hoje de internet. Entretanto, não podemos esquecer que os protocolos que permitem o funcionamento dos diversos serviços estão sujeitos a ameaças sempre, bem como possuem vulnerabilidades conhecidas e desconhecidas que podem ser exploradas. Como ameaças podemos citar algumas tais como perda de dados, negação de serviços, vírus, invasões, fraudes e roubo de informações, vazamento de Informações, perda de confidencialidade/integridade/disponibilidade/autenticidade. Com relação as vulnerabilidades, cada serviço e seus protocolos possuem suas vulnerabilidades conhecidas, pontos fracos que podem ser exploradas muitas vezes até com ferramentas para a exploração. Não podemos ainda esquecer que existem as vulnerabilidades desconhecidas, aquelas que ainda não foram descobertas, mas que estão ali, quietas, esperando serem descobertas, exploradas e concretizarem alguma ameaça, vindo a causar um impacto que muitas vezes não era esperado. 8.3.1. VULNERABILIDADES NO DNS DNS (Domain Name System) é um serviço essencial para o bom funcionamento da Internet. Essa importância, associada à natureza das informações que ele armazena, o tornam um dos alvos mais atraentes para atacantes. Desse modo, uma configuração adequada dos servidores DNS é crucial para aumentar a segurança e colaborar para o bom funcionamento da rede. Servidores DNS expostos à Internet estão sujeitos a uma série de riscos, dentre os quais destacam-se: Vazamento de informações sensíveis sobre a rede da organização através de transferências de zonas DNS. Essas informações podem ajudar um atacante a identificar os pontos fracos da rede e a escolher futuros alvos. Ataques de envenenamento de cache, que levam um servidor a armazenar informações forjadas. Tais informações podem ser usadas para comprometer a segurança de clientes que façam consultas a esse servidor. Comprometimento do servidor através de vulnerabilidades no software de DNS, o que pode facilitar outras quebras de segurança no restante da rede da organização. Aprenda um pouco mais assistindo ao vídeo a seguir. http://tinyurl.com/j4edx6j

16 8.4. REGRAS BÁSICAS a. Possuir políticas de segurança; b. Realizar a instalação e configuração de acordo com as necessidades de segurança da organização (Hardening); c. Realizar sistematicamente a educação dos usuários; d. Ter os relógios dos servidores ajustados; e. Monitorar os logs continuamente. Aprenda mais sobre Práticas de Segurança para Administradores de Redes Internet, no site a seguir. http://tinyurl.com/2fvzpu5 Aula 9 CONFIGURAÇÃO DE SEGURANÇA DE SERVIÇOS DE REDE Veremos agora técnicas e tecnologias para o monitoramento de dispositivos e recursos de redes para que possamos compreender as técnicas e realizar a configuração de ferramentas de sincronismo de tempo, centralização de logs e monitoria de serviços. 9.1. GERENCIAMENTO DE LOGS O uso de serviços de log centralizados é importante para o gerenciamento de falhas nos dispositivos e no gerenciamento da segurança com a preservação do registro de eventos em casos de falhas de sistema ou comprometimento de algum dispositivo da rede. Cada organização possui requisitos diferentes de gerenciamento de logs, que determina o detalhamento dos logs coletados, por quanto tempo serão armazenados e como serão analisados. No gerenciamento de logs, o objetivo é concentrar em um sistema todos os eventos dos equipamentos da rede, softwares de segurança, sistemas operacionais e aplicativos. É necessário concentrar esforços para que esses dados não sejam comprometidos por sistemas malintencionados. Eles serão úteis na análise de incidentes de segurança ou falhas computacionais. Para isso é necessário que o servidor de logs esteja protegido por um sistema de controle de perímetro, já mencionado nas sessões anteriores. Também é necessária a realização de uma configuração segura do servidor, que veremos adiante. Aprenda mais com os vídeos Segurança em Linux Gerenciamento de Logs e A Importância dos Logs nos Sistemas de Informação (em espanhol) a seguir. http://tinyurl.com/nw9t9bo http://tinyurl.com/jpsvrmj Para definir a estratégia de logs, recomendamos o artigo Guide to

17 Computer Security Log Management, de Karen Kent e Murugiah Souppaya, do NIST (National Institute of Standarts and Technology) em http://tinyurl.com/hjt6fyk 9.1.1. SYSLOG-NG O syslog-ng é uma ferramenta distribuída com a licença de software livre, bastante utilizada atualmente. É uma solução que, pela sua qualidade do código, permite a criação de um servidor de logs na rede para vários clientes. O syslog-ng é uma implementação do protocolo Syslog, definido pela RFC 5424 The Syslog Protocol. Essa RFC define o protocolo e uma série de particularidades, incluindo a porta padrão do protocolo (UDP 514) e as facilidades e severidades. As facilidades são categorias que indicam a origem da mensagem. Através delas é possível separar os registros de log em arquivos separados, organizando melhor as informações. A lista a seguir apresenta todas as facilidades definidas na RFC, com seus respectivos códigos e siglas: Código Nome Sigla 0 kernel messages Kern 1 user-level messages user 2 mail system mail 3 system daemons daemon 4 security/authorization messages auth 5 messages generated internally by syslogd syslog 6 line printer subsystem Lpr 7 network news subsystem News 8 UUCP subsystem Uucp 9 clock daemon Cron 10 security/authorization messages Authpriv 11 FTP daemon ftp 12 NTP subsystem Ntp 13 log audit Audit 14 log alert Alert 15 clock daemon Cron 16 local use 0 local0 17 local use 1 Local1 18 local use 2 Local2 19 local use 3 Local3 20 local use 4 Local4 21 local use 5 Local5 22 local use 6 Local6 23 local use 7 Local7

18 Além destas facilidades, existem ainda as severidades, indicando o nível de profundidade ou detalhamento do registro de log correspondente. As severidades definidas no padrão estão na tabela abaixo: Código Descrição Sigla 0 Emergency emerg 1 Alert alert 2 Critical crit 3 Error err 4 Warning warning 5 Notice Notice 6 Informational Info 7 Debug debug Quando uma severidade 0 é definida no sistema, significa que apenas as mensagens emergenciais serão registradas. À medida que o código da severidade vai aumentando, temos mais detalhes do sistema e por consequência a quantidade dos registros aumenta até a severidade 7, onde todas as ações são registradas. A severidade 7 é útil no auxílio de resolução de problemas, como quando um determinado sistema não está se comportando como se espera. Fonte: http://tinyurl.com/zpjru7d O syslog-ng é suportado por ambientes heterogêneos, podendo ser configurado em máquinas Linux, BSD e Unix como agente e servidor. Quando o syslog-ng é utilizado como agente ou servidor, é possível que as mensagens sejam transmitidas de forma criptografada na rede. É possível também sua configuração em sistemas MS Windows, mas somente como agente. O fluxo do syslog-ng é ter uma origem ou um conjunto delas, um filtro e um destino ou um conjunto deles, conforme é visto na figura.

19 Figura 2. Fluo do syslog-ng. Aprenda um pouco mais assistindo ao vídeo a seguir sobre sistema de log do Linux, o rsyslog. http://tinyurl.com/zmvjdy3 9.1.2. LOGS DO WINDOWS Importante questão a ser considerada é o registro de logs em sistemas Windows. Infelizmente, o padrão Syslog é um padrão Unix, de modo que os sistemas Windows não o utilizam de forma nativa. Dessa forma, não é possível, utilizando apenas os recursos do sistema operacional, redirecionar os registros de log gerados por um sistema Windows para o syslog-ng, como foi feito antes para sistemas Unix. Apesar disso, existem algumas ferramentas que permitem a compatibilidade entre o sistema de logs do Windows e o syslog-ng. Uma ferramenta simples e gratuita é o Winlogd. WinLogd é um sistema capaz de capturar os logs do Microsoft Windows e enviá-los para o sistema de syslog Unix, como o syslog-ng. Uma vantagem importante da centralização de logs é a possibilidade de analisar a correlação entre eles, de modo a confrontar logs de diferentes origens e chegar a conclusões interessantes sobre o funcionamento da rede. Aprenda mais no site, em inglês, sobre winlogd, um EventLog do Windows para serviço de Syslog. http://tinyurl.com/2klqtl 9.1.3. NTP NTP (Network Time Protocol ou Protocolo de Tempo para Redes), é o protocolo que permite a sincronização dos relógios dos dispositivos de uma rede como servidores, estações de trabalho, roteadores e outros equipamentos à partir de referências de tempo confiáveis. É um protocolo para sincronização dos relógios dos computadores, baseado em uma fonte confiável: os relógios atômicos do Observatório Nacional, que definem a hora legal brasileira. A primeira vista isto pode parecer algo simples como "consultar o tempo em um servidor" e "ajustar o relógio local" de tempos em tempos. Na verdade, algumas implementações do SNTP, a versão simplificada do protocolo, fazem isso e apenas isso. Mas o NTP em sua forma completa é muito mais complexo.

20 Os seus diversos componentes do sistema colaboram para, entre outras,: (a) discernir, dentre um conjunto de servidores, quais fornecem o tempo correto e quais estão mentindo; (b) escolher, dentre os servidores que fornecem o tempo correto, qual é a melhor referência; (c) identificar, à partir de métodos criptográficos, servidores de tempo conhecidos e confiáveis, evitando possíveis ataques; (d) formar, em conjunto com outros servidores NTP, uma topologia simples, confiável, robusta e escalável para a sincronização de tempo. Acesse os sites a seguir para aprender mais e conhecer as configurações. Confira! http://tinyurl.com/jxdd84c http://tinyurl.com/ybzqp63 O site armazena o projeto NTP, que desenvolve uma ferramenta de sincronização de relógios para computadores Linux, Unix, VMS e Windows. O NTP pode ser configurado como servidor, como cliente e/ou as duas funcionalidades ao mesmo tempo. Assim, podemos buscar uma fonte de relógio externa, se assim desejarmos, e redistribuir essa fonte de hora confiável para a configuração dos relógios das máquinas da rede interna. A configuração do NTP ocorre com a edição do arquivo ntp.conf, localizado normalmente em /etc/ntp.conf nos servidores Unix. Segue um exemplo de configuração do NTP utilizando como referência os relógios do Comitê Gestor da Internet do Brasil (CGI.br): 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ================================================ # memória para o escorregamento de frequência do micro # pode ser necessário criar esse arquivo manualmente com # o comando touch ntp.drift driftfile /etc/ntp.drift # estatísticas do ntp que permitem verificar o histórico # de funcionamento e gerar gráficos statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable # servidores públicos do projeto ntp.br server a.ntp.br iburst server b.ntp.br iburst server c.ntp.br iburst # outros servidores # server outro-servidor.dominio.br iburst # configurações de restrição de acesso restrict default kod notrap nomodify nopeer ===================================== Aprenda mais assistindo aos vídeos a seguir sobre NTP e.como configurar SNTP para sincronização por data e hora. http://tinyurl.com/gp833um http://tinyurl.com/hx294qh

21 Aula 10 MONITORAMENTO DE SERVIÇOS A partir do momento em que os riscos existentes por ameaças tanto externas quanto internas são verificados e analisados, as empresas decidem utilizar sistemas que podem monitorar redes e detectar ataques de qualquer lugar de onde partam. As práticas de monitoramento de segurança não estão abertas a considerações para as empresas que são governadas por restrições normativas; são uma exigência. Por diversas razões o monitoramento de segurança e a detecção de ataques devem ser uma questão importante para empresas. Elas incluem os impactos e consequências que organizações podem enfrentar se um ataque à sua infraestrutura tivesse êxito. Não apenas as operações podem ser afetadas, mas, inclusive, sofrer a perda de sua reputação, uma das piores perdas para uma organização. Veremos nesta sessão algumas ferramentas de monitoramento 10.1. MONITORAMENTO DE SERVIÇOS As ferramentas de monitoramento são um subconjunto do universo de ferramentas de gerenciamento que estão focadas em obter informações sobre elementos de infraestrutura de TI. Entre as ferramentas de monitoramento, destacamos algumas com o código-fonte aberto e distribuído sob a licença GNU GPL. 10.1.1. NAGIOS O Nagios é uma ferramenta de gerenciamento que monitora os elementos e serviços de rede. ΩProtocol (FTP); Secure Shell (SSH); Hypertext Transfer Protocol (HTTP); Simple Mail Transfer Protocol (SMTP); Post Office Protocol version 3 (POP3); Network Time Protocol (NTP); Internet Control Message Protocol (ICMP); ou através de plugins adicionais que podem ser desenvolvidos e integrados ao Nagios. Diversos plugins estão disponíveis na internet (www.nagios.org) e podem ser utilizados pelo administrador para testes mais completos. A interatividade com o administrador baseia-se no envio de mensagem eletrônica, alerta no console e mensagem SMS para celulares sobre o problema ocorrido. O grande destaque dessa ferramenta é a possibilidade de classificação de grupos de usuários para receber relatórios e alertas do sistema. Por exemplo, o problema de um determinado servidor pode ser comunicado ao responsável pelo serviço, bem como para uma equipe responsável pelos equipamentos ou ativos de rede. Toda a sua configuração é realizada em arquivos de texto e, a interface com o usuário, realizada em um console web. É possível obter relatórios de disponibilidade e planejar ações corretivas para os problemas ocorridos em equipamentos da rede. A figura a seguir apresenta a tela principal do Nagios onde se pode ter uma visão abrangente do estado dos servidores que estão sendo monitorados pela ferramenta.

22 Fonte: http://tinyurl.com/zkn3dew Existe ainda o projeto Fully Automated Nagios (FAN - http://www.fullyautomatednagios.org/ ), que tem por objetivo prover uma instalação facilitada do Nagios e ferramentas auxiliares providas pela comunidade. O projeto FAN disponibiliza inclusive uma imagem em CDROM (ISO), que facilita a instalação de um servidor Nagios. Aprenda mais sobre o Nagios assistindo aos vídeos: http://tinyurl.com/zpg5x6l http://tinyurl.com/jc48kxs http://tinyurl.com/zzk856g 10.1.2. ZABBIX O Zabbix é uma ferramenta de gerenciamento que monitora os elementos e serviços de rede. Os dados são coletados através de consultas ao SNMP (Simple Network Management Protocol), de ferramentas de testes que simulam o funcionamento das aplicações FTP (File Transfer Protocol), SSH

23 (Secure Shell), HTTP (Hypertext Transfer Protocol) ou através de plugins adicionais que podem ser desenvolvidos e integrados ao Zabbix. Todos os dados coletados pelo Zabbix são armazenados em uma base de dados SQL (Structured Query Language), permitindo a geração de relatórios pré-definidos e personalizados, e ainda a utilização de ferramentas especializadas para gerar relatórios. Entre os relatórios padrão gerados pelo Zabbix, temos os relatórios de disponibilidade, de nível de serviços, de tráfego de rede e de utilização de recursos, como CPU (Central Processing Unit) e memória. Toda a configuração do Zabbix é realizada através de uma interface web clara e amigável. Os alarmes são emitidos no console web do usuário, via recursos de áudio, mensagens eletrônicas e/ou envio de SMS (Short Message Service) para aparelhos celulares. O Zabbix permite a geração de gráficos on-line e oferece ao administrador a possibilidade de criar mapas personalizados da rede. A seguir imagem de uma tela de monitoramento do Zabbix. Fonte: http://tinyurl.com/jy6pzvn Aprenda mais sobre o uso do Zabbix assistindo aos vídeos: http://tinyurl.com/z6t44cz http://tinyurl.com/z9cbn6c http://tinyurl.com/jlonuw6 http://tinyurl.com/z2gnw2u

24 10.1.3. CACTI Ferramenta de monitoração criada por Ian Berry (http://www.cacti.net/ ). Surgiu como uma opção de front end (interface gráfica com o usuário para interagir com programas) que apresenta os gráficos dos dados obtidos através de consultas SNMP ou de scripts. Esses dados são armazenados pelo Round-Robin Database Tool (RRDTool - Software que armazena e mostra dados em série obtidos em um determinado período de tempo). O Cacti disponibiliza um ambiente de configuração e operação agradável e acessível (interface web escrita em PHP), com controle de acesso por nível de usuário. As informações de configuração são armazenadas em um banco de dados SQL. Sua arquitetura prevê a possibilidade de expansão através de plugins, que adicionam novas funcionalidades, tornando-o ainda mais completo. O Cacti é muito usado em monitoramento de links WAN, por conta da sua facilidade na criação de gráficos para monitorar a banda nos links contratados por operadoras. Apesar dessa funcionalidade importante, o Cacti pode ainda monitorar uma série de parâmetros importantes, como consumo de CPU, memória e espaço em disco, entre outros. A sua capacidade de apresentar os dados de maneira gráfica o torna um excelente complemento para o Nagios na tarefa de monitoramento. Assista ao vídeo para conhecer mais sobre o Cacti: http://tinyurl.com/z535ab7 10.1.4. NTOP O Network Traffic Probe (Ntop - http://www.ntop.org/ ) é uma ferramenta livre para análise de tráfego de rede. Com desenvolvimento iniciado em 1998 por Luca Deri, o Ntop opera nas plataformas Unix (incluindo Linux, BSD, Solaris e MacOSX) e Microsoft Windows. A coleta de informações é feita através da análise do tráfego das informações que passam pelas interfaces da rede local.

25 Fonte: http://tinyurl.com/gm593r9 Principais características: (a) Suporte ao Cisco NetFlow/sFlow; (b) Identificação de sub-redes e seus usuários; (c) Suporte ao WAP (Wireless Application Protocol); (d) Ordenação de tráfego. Possui um servidor HTTP (Hypertext Transfer Protocol) e HTTPS (Hypertext Transfer Protocol Secure) nativo, que apresenta uma série de gráficos do tráfego e estatísticas da rede. Possui ainda um modo interativo no console de texto. Principais objetivos: (a) Monitoramento e medida do tráfego; (b) Planejamento e personalização da rede; (c) Detecção de violações na segurança. A sua versão mais moderna recebe o nome de ntong a próxima geração.

26 Para aprender mais sobre ntong assista aos vídeos: https://www.youtube.com/watch?v=vdglazuvsji https://www.youtube.com/watch?v=nt5whwubqn4 10.1.5. AVALIAÇÃO As ferramentas apresentadas podem ser classificadas em três grupos: (a) Ferramentas de monitoração de serviços, como Nagios e Zabbix. (b) Ferramentas especializadas na geração de gráficos, como Cacti e Zabbix. (c) Ferramentas de classificação de tráfego, como Ntop. O Zabbix é uma ferramenta com algumas características que permitem que ela seja classificada também como ferramenta especializada na geração de gráficos, ainda que estes gráficos possuam menos recursos funcionais que os gráficos do Cacti. Importante, para o profissional que for trabalhar com segurança de redes saber operar com estas ferramentas pois elas colaborarão na identificação do status da sua rede e a partir desta análise identificar possíveis tentativas de ataques. 10.2. FERRAMENTAS DE MONITORAMENTO DE SEGURANÇA Vamos apresentar algumas ferramentas de monitoramento de segurança para que iniciem o conhecimento da existência de ferramentas que auxiliam o trabalho de garantir a segurança das nossas redes. Algumas destas ferramentas serão tratadas mais detalhadamente nas próximas sessões. 10.2.1. WIRESHARK O Wireshark (anteriormente chamado de Ethereal - www.wireshark.org ) funciona em modo promíscuo para capturar todo o tráfego de um domínio de broadcast TCP. O primeiro passo na avaliação de vulnerabilidades é ter uma imagem clara do que está acontecendo na rede. Filtros personalizados pode ser ajustados para interceptar o tráfego específico, por exemplo, para capturar a comunicação entre dois endereços IP, ou capturar consultas DNS baseados na rede. Os dados de tráfego podem ser despejado em um arquivo de captura, que pode ser revisto mais tarde. Os filtros adicionais também podem ser definidos durante a revisão. Normalmente, o testador está à procura de endereços IP vadios, pacotes com endereços forjados, pacotes desnecessários, e geração de pacotes suspeitos a partir de um único endereço IP. O Wireshark dá uma visão ampla e clara do que está acontecendo na sua rede. Assista ao vídeo sobre o Wireshark e descubra como instalar. http://tinyurl.com/hewqbda

27 10.2.2. METASPLOIT É um projeto de segurança de informação com a finalidade de analisar de vulnerabilidades de segurança e facilitar testes de penetração (pentests) e no desenvolvimento de assinaturas para sistemas de detecção de intrusos. O Metasploit é uma ferramenta estruturada em código aberto, que realiza exames rigorosos contra um conjunto de endereços IP. Após a identificação das conexões e pacotes da rede usando as ferramentas de monitoramento, vamos para o sistema operacional no nível da aplicação. Ao contrário de muitas outras, pode também ser usado para técnicas anti-forenses. Programadores experientes podem escrever uma peça de código explorando uma vulnerabilidade particular, e testá-la com o Metasploit para ver se é detectado. Este processo pode ser invertido tecnicamente quando um vírus ataca utilizando alguma vulnerabilidade desconhecida, o Metasploit pode ser usado para testar o antídoto para ele. Assista ao vídeo sobre MetaSploit - tutorial for beginners: http://tinyurl.com/z5vswml 10.2.3. OPENVAS O Nessus scanner é um utilitário famoso e comercial, a partir do qual o OpenVas (Open Vulnerability Assessment System - Sistema Aberto de Avaliação de Vulnerabilidade - http://www.openvas.org/ ) ramificou-se alguns anos atrás pa ra permanecer aberto. Embora o Metasploit e o OpenVAS sejam muito semelhantes, existe uma diferença distinta entre eles. Fonte: http://tinyurl.com/gljkdzg O OpenVAS é dividido em dois componentes principais: um scanner e um gerente. O scanner pode residir no alvo e se alimentar de descobertas de vulnerabilidade para o gerente. O gerente recolhe os dados obtidos através de vários scanners e algorítimos, e aplica a sua própria inteligência para criar um relatório detalhado.

28 Fonte: http://tinyurl.com/h83one2 No mundo da segurança, o OpenVAS é muito valorizado por ser muito estável e confiável para detectar as falhas de segurança mais recentes, e para fornecimento de relatórios e insumos para corrigi-los. Para saber mais assista aos vídeos http://tinyurl.com/z2cur7r http://tinyurl.com/jjpho5e http://tinyurl.com/jhob6a4 10.2.4. NMAP Este scanner é capaz de elaborar e executar análises em um nível granular de TCP. É consagrado na verificação da assinatura de SO e versão, com base nas respostas de rede. Fonte: http://tinyurl.com/zawhntq O Nmap é eficaz o suficiente para detectar dispositivos remotos, e na maioria dos casos identifica corretamente firewalls e roteadores, além de sua marca e modelo. Os administradores de rede podem usar o Nmap para verificar quais portas estão abertas, e também se essas portas podem ser exploradas ainda mais em ataques simulados. A saída é um texto claro e detalhado.

29 Para saber mais acesse o Guia de Referência do Nmap: http://tinyurl.com/zaxqvjj e assista aos vídeos: http://tinyurl.com/greuccc http://tinyurl.com/z3w44ff http://tinyurl.com/hpqopnf 10.2.5. AIRCRACK-NG A Infraestrutura de hoje em dia possui dispositivos wifi no centro de dados, bem como nas instalações das empresas para facilitar a mobilidade dos usuários. Apesar da segurança WPA-2 ser considerada adequada para os padrões 802.11 de uma WLAN, configurações incorretas e o uso de senhas simples, deixa essas redes vulneráveis a ataques. Aircrack-ng é uma suíte de utilitários que atua como um sniffer e decodificador de pacotes. Uma rede sem fio alvo tem seu tráfego de pacote submetido a captura de detalhes vitais sobre a criptografia da rede. Um decodificador é então utilizado como força bruta no arquivo capturado, para a tentativa de descobrir as senhas. O Aircrack-ng é capaz de trabalhar na maioria das distribuições Linux, mas a do Kali Linux é altamente preferido pelos profissionais de segurança. Fonte: http://tinyurl.com/zw7k5fq

30 Conheça, como descobrir a senha wifi com aircrack: http://tinyurl.com/h7qborb 10.2.6. KISMET O Kismet é uma ferramenta de detecção de redes e intrusos, sniffer e analisador de banda para redes Wi- Fi. É uma das ferramentas mais utilizadas que apresentam melhores resultados e gráficos quando você deseja analisar redes Wi-Fi 802.11b/a/g/n. Por fim, ela suporta uma grande variedade de placas de rede Wi-Fi além de rodar em praticamente todos os Sistemas Operacionais do mercado. Ele ainda suporta uma série de plugins, abrindo portas para integração com outras ferramentas desenvolvidas pelo mundo. Fonte: http://tinyurl.com/yjej8az Assista aos vídeos abaixo e aumente seu conhecimento sobre KISMET: http://tinyurl.com/zb7czn2 http://tinyurl.com/znugxme Aula 11 AUTENTICAÇÃO O processo de identificação de usuários, autenticação, autorização e auditoria é essencial para garantir a segurança de aplicações e serviços, de modo que somente usuários previamente cadastrados, identificados e autenticados podem ter acesso aos recursos computacionais que lhes foram autorizados pelo responsável

31 11.1. SISTEMA AAA O processo de controlar o acesso, garantindo que a origem dos dados é a de quem alega ser, é um dos objetivos da autenticação. Garantir o uso autorizado de recursos e o registro de todas as atividades dentro de um sistema são tarefas dos sistemas conhecidos por: Autenticação, Autorização e Auditoria (AAA). 11.1.1. AUTENTICAÇÃO A autenticação é um processo que tem por objetivo garantir que um usuário é realmente quem diz ser. Esse é um processo básico e fundamental quanto tratamos de segurança de sistemas e serviços, pois basta um usuário usurpar as credenciais de outro usuário que possui maiores privilégios para ser gerado um grave incidente de segurança. O processo de autenticação em geral se baseia em três princípios básicos para permitir ao usuário provar a sua autenticidade. Estes princípios são: ALGO QUE VOCÊ SABE Nesse princípio, o sistema solicita ao usuário que informe algo que somente aquele usuário sabe. O exemplo mais comum desse princípio são as senhas e suas variações, OTP (Senha descartável, em inglês: One-time password OTP, é uma senha que perde a validade após um processo de autenticação) e passphrases. Apesar de ser o mais barato de implementar, pois pode ser implementado inteiramente via software, em geral é o menos seguro, pois um atacante pode tentar adivinhar a senha de um usuário. Como o cérebro humano é limitado, os usuários tendem a escolher senhas fáceis de lembrar. ALGO QUE VOCÊ TEM Aqui o usuário deve apresentar algo para o sistema que lhe foi dado no momento em que se registrou para obter acesso ao sistema. Dessa forma, ao reapresentar o mesmo objeto, o usuário estaria comprovando que é realmente quem diz ser. Normalmente, são combinados com uma senha (chamada de PIN), de modo que não possa ser usado caso seja roubado. Nessa categoria, são muito comuns os smartcards, chips e tokens. São considerados mais seguros que o primeiro, pois para um usuário se passar por outro, deve obter o objeto que o identifica e a senha correspondente. ALGO QUE VOCÊ É Essas são consideradas as formas mais seguras de autenticação, pois envolvem uma característica intrínseca ao usuário. Em geral são chamadas de biometrias. Alguns exemplos: impressões digitais, formato da íris, voz, face etc. Apesar de consideradas seguras, devem ser utilizadas de forma cuidadosa, pois o seu uso indiscriminado pode criar uma falsa sensação de segurança. Um leitor de impressões digitais pode ser enganado com uma impressão digital falsa, caso não tenha um dispositivo que garanta que o dedo em questão é vivo. Ou o mesmo leitor, caso esteja controlando uma porta, pode ser arrancado do seu lugar e a porta aberta por uma mera junção de dois fios.

32 AUTORIZAÇÃO O usuário obtém acesso somente aos recursos previamente definidos pelo gestor do sistema. A autorização corresponde a um processo seguinte à autenticação, onde o usuário obtém acesso aos recursos de acordo com o nível de acesso que lhe foi designado por um administrador ou gestor. Dessa forma, uma vez corretamente identificado, o usuário pode ter acesso a determinados recursos. AUDITORIA A auditoria por fim corresponde ao processo de verificação contínua se os acessos concedidos estão corretos e se não há acessos indevidos. Normalmente temos um auditor que periodicamente verifica as trilhas de auditoria, que são registros feitos pelos sistemas de autenticação e autorização, contendo todos os acessos realizados pelos usuários do ambiente. Através de um processo consistente de AAA, podemos ter um ambiente com um nível de segurança adequado, sem comprometer a integridade, a confidencialidade e a disponibilidade dos sistemas. 11.2. SISTEMAS DE AUTENTICAÇÃO ÚNICA Com o uso cada vez mais intenso de sistemas informatizados para soluções comerciais, novos sistemas vão surgindo em implementações que automatizam os processos do negócio. A implementação de um mecanismo único de autenticação é desejável para simplificar a gerência de usuários e senhas dos clientes dos sistemas, assim como para simplificar e aumentar a eficiência do gerenciamento das contas e suas respectivas senhas pelo administrador. Nesse cenário, é importante que as soluções informatizadas possam integrar uma solução de autenticação única para todos os sistemas. Dessa forma, um usuário, uma vez autenticado, deverá ter acesso a todos os sistemas que tiver autorização para acessar. Existem várias soluções de implementação de SSO, como NTLM, uma solução proprietária da Microsoft que abriu a especificação para parceiros implementarem soluções integradas. Outros sistemas baseado em Kerberos são Smart Card e OTP Token. 11.2.1. OTP One Time Passwords (OTP) é um mecanismo que utiliza senhas descartáveis. Para cada acesso é gerada uma senha que logo em seguida perde o valor. Assim, se a senha de um usuário for capturada, não servirá para comprometer o sistema. Existem várias maneiras de gerar as senhas, como, por exemplo, o uso de calculadoras Java, que podem estar em sistemas embarcados como um PDA ou um celular. O problema dessas implementações é o fato de o usuário ter a necessidade de estar perto da calculadora para ter acesso ao sistema.

33 11.2.2. S/KEY Sistema de autenticação OTP desenvolvido para sistemas operacionais Unix e derivados, como o caso do Linux. A proposta do S/Key é obter um conjunto de senhas em que cada uma só pode ser utilizada uma vez. O processo de inicialização do S/Key funciona da seguinte forma: O usuário provê um segredo W, a base de todo o processo, que nunca pode ser comprometido. Uma função Hash é aplicada c vezes em cima de W, concatenando com um elemento randômico criado durante a inicialização. O usuário obtém n senhas correspondentes a cada passagem da função Hash. Dessa forma, o usuário utiliza a senha n para a primeira autenticação, a senha n-1 para a segunda e assim sucessivamente, até esgotar as senhas, quando o processo deverá ser reinicializado. Fonte: http://tinyurl.com/j39kuwa Considerando que a partir de n é inviável deduzir n-1 (envolve reverter uma função Hash), caso n seja comprometida, ela já não mais poderá ser usada, pois cada senha só é usada uma vez. Para facilitar a digitação por parte do usuário, os bytes de cada Hash são convertidos para palavras, utilizando uma tabela de conversão padronizada. Esta tecnologia consiste em fornecer uma senha de acesso diferente a cada determinado intervalo de tempo (1 minuto, 30 segundos, etc.), permitindo que o usuário se conecte naquele instante. Fonte: http://tinyurl.com/j3jqg35

34 As tecnologias de one-time password tornam sem efeito a ação de sniffers, já que a cada conexão uma nova senha deve ser informada, permitindo que seja utilizado um canal inseguro. Para a geração das senhas são utilizados tokens no formato de cartões, chaveiros ou aparelhos semelhantes a calculadoras. Assista aos vídeos e conheça mais sobre One Time Password (OTP): http://tinyurl.com/z7t5ppe http://tinyurl.com/zx9d4xf 11.2.3. SMART CARD O Smart Card, ou Cartão Inteligente, é um cartão de plástico, semelhante a um cartão de crédito, com um microchip embutido na superfície. O conceito de Smart Card foi patenteado pelo Dr. Kunitaka Arimura no Japão, em 1970. Embora existam muitos tipos, qualquer Smart Card pode ser classificado quanto à forma de conexão com a leitora: Por contato físico: entende-se a inserção do cartão na leitora, onde os contatos dos terminais do cartão com os da leitura permitem a troca de dados entre ambos. É importante salientar que a maioria dos Smart Cards possuem terminais para esse tipo de conexão. Sem contato físico: se refere aos cartões que não necessitam de Fonte: http://tinyurl.com/jjz7ejr contato físico com a leitora, o que indica que a conexão é feita através de ondas eletromagnéticas. A ausência do ato de inserção traz benefícios, como economia de tempo e preservação dos terminais do cartão. Um exemplo interessante deste tipo de cartão são os passaportes eletrônicos. Por serem muito mais baratos, os cartões por contato ainda são os mais utilizados, oferecendo um nível razoável de segurança e abrangendo uma ampla gama de aplicações. Os cartões por contato são também chamados de Cartões de Memória (Memory Cards). Os Smart Cards que não fazem uso de contato físico são tipicamente Cartões Microprocessados. Embora não seja do escopo dos cartões de identificação, a modalidade de transmissão sem contato permite que o cartão propriamente dito seja apenas um portador do chip, ou seja, a presença do chip em anéis, relógios, braceletes e tornozeleiras ainda não quebra o conceito de Smart Card. Os cartões inteligentes por contato físico podem ser utilizados com leitores conectados em um computador pessoal, a fim de autenticar um usuário. Softwares de navegação na internet também podem utilizar a tecnologia do Smart Card para complementar SSL (Secure Sockets Layer), utilizado para melhorar a segurança em transações na internet. Como o cartão inteligente possui arquitetura de hardware e software, ele interage com o sistema, permitindo ou negando acesso quando necessário. Ele pode ser programado, por exemplo para que após cinco tentativas de autenticação sem sucesso, o conteúdo da memória seja destruído, inutilizando-o.

35 Hoje em dia é muito comum Smart Cards nos nossos cartões de crédito, em chips de celulares GSM ou em cartões emitidos pelo governo, como o e-cpf e o e-cnpj, além Registro de Identificação Civil (RIC). Nesses casos, o cartão contém um certificado digital padrão ICP-Brasil. Em alguns desses cartões, existe um sistema complexo de proteção do material criptográfico contido dentro do cartão, que se apaga caso o cartão seja aberto ou haja erro na senha de acesso em um determinado número de vezes. Normalmente, as chaves privadas nunca saem de dentro do cartão, que possui um chip capaz de realizar operações criptográficas dentro do próprio cartão. Para conhecer mais sobre o que é o Smart Card, assista ao vídeo: http://tinyurl.com/jjptukd 11.3. PROTOCOLO KERBEROS Protocolo de autenticação de rede desenvolvido em 1983 pelo MIT (Massachusetts Institute of Technology), como parte de um projeto de segurança que visava produzir um ambiente de TI seguro e amplamente distribuído pelo campus da universidade. Na mitologia Grega, Kerberos era um cachorro que possuía três cabeças e era responsável por vigiar os portões de Hades, tendo como sua principal missão evitar a entrada e saída de pessoas ou de coisas indesejáveis. Fazendo uso de criptografia de chave privada, provê autenticação em redes abertas mediante uso de algoritmo de autenticação de três vias (TTP Trusted Third Party), proposto por Needham e Schroeder. Todos os equipamentos envolvidos devem confiar mutualmente no sistema de autenticação central provido pelo Kerberos. Esse conceito é semelhante a um cartório no mundo real, ou seja, a sociedade confiará na assinatura de um tabelião para afirmar que os envolvidos realmente se identificaram (autenticaram) durante a assinatura de um determinado contrato. Como o nome sugere, o Kerberos funciona, basicamente, como três componentes principais, um para cada função específica: Ticket: tipo de certificado/token que informa com segurança, para todos os equipamentos conectados ao sistema de autenticação, a identidade do usuário para quem o ticket foi concedido. Autenticador: uma credencial gerada pelo cliente com informações que são comparadas com as informações do ticket, para garantir que o cliente que está apresentando o ticket é o mesmo para o qual o ticket foi concedido. Centro de distribuição de chaves: para acessar uma aplicação, o usuário obtém temporariamente tickets válidos através do centro de distribuição de chaves que ratificam os tickets com o

36 autenticador. A aplicação examina o ticket e o autenticador quanto à validade e concede acesso caso sejam válidos. Explicando de uma forma mais simplificada, imagine um sistema de vendas de ingressos para um filme de cinema com classificação para maiores de 18 anos. Para comprar o ingresso, você deve ir então à bilheteria (centro de distribuição) para realizar o pagamento e provar que você possui mais de 18 anos. Ao realizar essas atividades com sucesso, a bilheteria vai lhe fornecer um ingresso (ticket) que você apresentará ao bilheteiro (autenticador), assim que tentar entrar na sala do filme. O bilheteiro vai verificar se o ticket é verdadeiro antes de lhe permitir entrar na sala de cinema. Fonte: http://tinyurl.com/jlua7u6 Para o processo de autenticação são utilizados três servidores: Servidor de Autenticação (Authentication Server AS): responsável por receber um pedido de autenticação de um usuário e verificar se a identidade desse usuário é autêntica. Sendo válida essa identidade, o AS fornece um ticket e uma chave de sessão, que vai permitir o contato com outro servidor, o TGS. Servidor de Concessão de Tickets (Ticket Granting Server TGS): responsável por fornecer tickets para serviços específicos requeridos pelo usuário. O contato com o TGS é feito após a autenticação pelo AS. O usuário tem seu ticket avaliado e, uma vez validado pelo TGS, recebe um novo ticket, agora para obter algum serviço disponível. Servidor de Administração (KADM): servidor responsável por controlar as chaves secretas (informações criptografadas). Antes de realizar o processo de autenticação, é preciso que o usuário cadastre seus dados através do KADM, para que possua um login e uma senha. Resumidamente, os seguintes passos são executados quando um usuário tentar acessar um determinado serviço em um Application Server. O usuário realiza uma autenticação em sua estação (utilizando usuário e senha, por exemplo). O Cliente Kerberos então executa uma função hash sobre a senha digitada e isso se torna a Chave Secreta do Cliente/Usuário (K1). O Cliente Kerberos envia uma mensagem em texto claro para o Authentication Server (AS) contendo o Identificador do Usuário (nessa fase, não é enviada a chave K1 e/ou a senha do usuário para o AS).

37 O AS gera a chave secreta (K1) utilizando a mesma função hash utilizada pelo usuário a partir da senha do usuário encontrada no servidor de banco de dados (por exemplo, o Active Directory no Windows Server). O AS envia de volta ao cliente duas mensagens: Mensagem A contendo a Chave de Sessão do TGS (K2) cifrada utilizando a chave K1 gerada no passo anterior. Mensagem B contendo o TGT (Ticket-Granting-Ticket), que inclui a identificação do cliente, endereço de rede do cliente, prazo de validade do ticket e a Chave de Sessão do cliente TGS (K2). Todo o conteúdo do ticket TGT é criptografado usando a Chave Secreta TGS, gerada pelo Servidor TGS e enviada de forma cifrada na Mensagem A. O cliente recebe mensagens A e B e tenta decifrá-las utilizando a chave K1 e, após, tenta recuperar a Chave TGS da Sessão (k2), que está cifrada na mensagem A. Caso não consiga, fica claro que o usuário não possui a chave secreta (k1) e, portanto, não deve ser autenticado. 11.3.1. ACESSO A SERVIÇOS EM UMA REDE Sempre que um usuário tentar acessar um serviço na rede, o cliente Kerberos enviará para o TGS o TGT que foi gerado pelo serviço de autenticação (KDS). O TGS vai gerar um ticket para o serviço em particular que será utilizado pelo cliente. Esse funcionamento é detalhado nos passos abaixo, que explicam o funcionamento do protocolo nessa situação: a. Ao tentar acessar um serviço em um servidor, o cliente Kerberos envia duas mensagens ao TGS. Mensagem C: composta pelo TGT informado na Mensagem B do item anterior e o identificador do serviço que está sendo requisitado. Mensagem D: autenticador, composto pelo identificador do cliente e de um período de validade cifrado com a Chave de Sessão TGS do cliente (K2). b. De posse das mensagens C e D, o servidor TGS tentará recuperar o TGT da Mensagem B a partir da mensagem C. Ele vai decifrar a mensagem B utilizando a Chave de Sessão TGS (K2) que ele gerou nos passos anteriores. Isso vai produzir uma Chave de Sessão TGS (k2), que foi informada pelo cliente a qual ele vai comparar com sua Chave de Sessão TG (K2) que ele possui associada ao cliente. Após isso, ele decifrará a mensagem D e, se tudo tiver acontecido de forma correta, ele enviará ao cliente: Mensagem E: Ticket Client-to-Server, que inclui o Identificador do Cliente, o endereço de rede do cliente, um período de validade para a Session Key entre o cliente e o servidor (K3), tudo cifrado, utilizando a chave secreta gerada para o serviço (k2). Mensagem F: Chave Secreta entre cliente e servidor (k3) cifrada utilizando a chave TGS gerada para o cliente. c. De posse das mensagens E e F geradas pelo TGS, o cliente encaminha essas informações para o servidor responsável pelo serviço em que o usuário está tentando acesso, enviando as mensagens: Mensagem E: gerada no passo anterior, contendo o Ticket Client-to-Server cifrado utilizando a chave Secreta do Serviço (K3).

38 Mensagem G: uma nova mensagem de autenticação, incluindo o identificador do cliente e um período de validade. Todas essas informações cifradas, utilizando a chave de sessão K3. d. O servidor do serviço decifra o ticket utilizando sua própria chave secreta e recupera a Chave de Sessão Cliente/Servidor (K3). Usando a chave de sessão K3, ele decifra a mensagem G e confirma a veracidade do processo de autenticação. Se tudo tiver acontecido corretamente, o servidor do serviço envia uma mensagem para o cliente, confirmando sua identidade e o período de validade informado pelo cliente na mensagem G, acrescido de 1. e. O cliente, ao receber essa mensagem do servidor, verifica a autenticidade da mensagem decifrando-a com a Chave de Sessão Cliente/Servidor (K3) e, também, se a hora está atualizada corretamente. Após isso, é iniciado então o acesso ao serviço solicitado. 11.3.2. BENEFÍCIOS DO KERBEROS Dentre os principais benefícios de se utilizar o Kerberos em redes de computadores, podemos destacar: Padrões baseados em autenticação robusta. Amplo suporte ao sistema operacional. Provê capacidade de Single Sign-On (SSO). Senhas nunca percorrem a rede. Senhas de difícil previsão. Tickets de autenticação roubados não podem ser reutilizados Para aprender mais sobre o Kerberos, assista aos vídeos: http://tinyurl.com/z3n7yx9 http://tinyurl.com/glauhgd http://tinyurl.com/jx78fqg 11.4. BIOMETRIA Este tipo de tecnologia utiliza a análise de características humanas, como impressões digitais, retina, rosto e de padrões de voz e de assinatura. A principal vantagem sobre outras tecnologias de autenticação é que o usuário é identificado por características únicas, pessoais e intransferíveis, dispensando o uso de senhas, cartões ou crachás.

39 É utilizada tanto para controle de acesso físico como para controle de acesso lógico. Na autenticação biométrica são realizadas duas fases: registro no sistema (coleta de dados) e reconhecimento da característica biométrica. Para isso é necessário primeiramente que todos os usuários sejam cadastrados através de um dispositivo de entrada de dados, geralmente um scanner, microfone, leitor com óptico ou outro meio eletrônico, para colher a representação digital (a amostra biométrica ou "live scan") que será usada na verificação do indivíduo. O cadastramento envolve o indivíduo que irá fornecer Fonte: http://tinyurl. /j5756sl uma amostra de sua característica biométrica, sendo que essa característica-chave será usada pelo sistema para gerar um modelo biométrico. A amostra é convertida para um algoritmo matemático que é então criptografado. Cada vez que o usuário requerer um acesso ao sistema, uma verificação / autenticação será realizada e a amostra da característica particular do indivíduo será comparada com o modelo biométrico armazenado no banco de dados. Quando a verificação da informação é positiva, o usuário terá acesso assegurado ao sistema, caso contrario, será bloqueado. Conheça mais assistindo os vídeos: http://tinyurl.com/jyo3d4r http://tinyurl.com/zjrgbxw Aula 12 CONTROLE DE ACESSO Em segurança da informação, o controle de acesso é composto dos processos de autenticação, autorização e auditoria (accounting). Dentro deste contexto, o controle de acesso pode ser como a habilidade de permitir ou negar a utilização de um objeto (uma entidade passiva, como um sistema ou arquivo) por um sujeito (uma entidade ativa, como um indivíduo ou um processo). A autenticação identifica quem acessa o sistema, a autorização determina o que um usuário autenticado pode fazer, e a auditoria diz o que o usuário fez. 12.1. CONTROLE DE ACESSO O controle de acesso limita as ações ou operações que o usuário de um sistema computacional pode executar, limitando o que ele pode fazer diretamente, como também os programas que podem ser executados em seu nome ou impedindo de executá-los. A figura abaixo mostra apresenta o esquema básico do controle de acesso:

40 Pode ser classificado quanto: à centralização do controle (Centralizado ou Descentralizado); ao controle pelo sistema (Mandatório ou Discricionário); ao mecanismo de controle (baseado em regras ou em perfis) 12.1.1. CONTROLE DE ACESSO CENTRALIZADO Nesse tipo de controle, uma entidade central (sistema ou usuário) toma as decisões sobre acesso aos recursos. Como vantagem, ele garante a padronização do acesso às informações, e impede a superposição de direitos. Como desvantagem, a falha no sistema central impede qualquer acesso às informações. 12.1.2. CONTROLE DE ACESSO DESCENTRALIZADO Nesse tipo, o controle é delegado a entidades mais próximas dos recursos, que podem gerenciar melhor os problemas com os recursos sob sua supervisão. Como vantagem, a falha em um sistema de controle de acesso não interfere no acesso aos demais sistemas, desde que não haja dependência entre eles. Entretanto, temos como desvantagem a perda da padronização do acesso às informações, e a possibilidade de superposição de direitos, que causam furos de segurança. 12.2. PROCESSOS DO CONTROLE DE ACESSO Na segurança da informação, os processos ou serviços que compõem o controle do acesso dos usuários são: Identificação e Autenticação: A identificação e autenticação fazem parte de um processo de dois passos que determina quem pode acessar determinado sistema. Na identificação, o usuário diz ao sistema quem ele é (normalmente por meio do login). Na autenticação, a identidade é verificada através de uma credencial (uma senha) fornecida pelo usuário. Autorização: Após o usuário ser autenticado, o processo de autorização determina o que ele pode fazer no sistema. Auditoria: A auditoria (accounting) faz a coleta da informação relacionada à utilização, pelos usuários, dos recursos de um sistema. Esta informação pode ser utilizada para gerenciamento, planejamento, cobrança, responsabilização do usuário, entre outras.

41 12.3. MECANISMOS DE SEGURANÇA Os mecanismos de segurança são responsáveis pela execução das políticas de segurança nos sistemas computacionais. O termo política de segurança pode ter significados diferentes dependendo do nível em que se aplica. Segundo Lendweir, em ambientes computacionais, política de segurança é entendida normalmente como um conjunto de regras que especificam como um sistema provê os seus serviços, mantendo as propriedades de confidencialidade, integridade e de disponibilidade. As políticas, cujos comportamentos são expressos através de modelos de segurança, são implementadas por mecanismos que exercem os controles necessários para manter as propriedades e objetivos de segurança. Os controles executados internamente em sistemas computacionais que gerenciam os acessos a recursos são identificados como Controles de Acesso. Controles usados na proteção das informações que são disponíveis através de dispositivos de entrada e saída (memórias secundárias, suportes de comunicação, etc.), envolvem o que é normalmente identificado como Controles Criptográficos. Outros controles ainda podem ser identificados em sistemas computacionais. Estes controles são chamados de Serviços de Autenticação, importantes na identificação de principais (sujeitos autorizados), e Controles de Inferência, que normalmente envolvem as semânticas das aplicações. Apresentaremos neste curso Controle de Acesso. 12.4. MODELOS DE SEGURANÇA Modelos de segurança correspondem a descrições formais do comportamento de um sistema atuando segundo regras de uma política de segurança. Estes modelos são representados na forma de um conjunto de entidades e relacionamentos. A definição de políticas de segurança é normalmente orientada por modelos de segurança, que fornecem na representação abstrata o funcionamento seguro do uso no sistema alvo de um conjunto de regras de segurança. Os modelos são divididos em três tipos básicos: Controles baseados em identidade ou discricionários (Discretionary Access Control: DAC).

42 Fonte: http://tinyurl.com/jt9pvcu. Controles baseados em regras gerais ou obrigatórios (Mandatory Access Control: MAC). Fonte: http://tinyurl.com/gphnbwv

43 Controles baseados em papéis (role). (Role Based Access Control RBAC). Fonte: http://tinyurl.com/gpbvn98 12.5. CONTROLE DE ACESSO DISCRICIONÁRIO (DAC) No controle de acesso discricionário (Discretionary Access Control ou DAC), a política de controle de acesso é determinada pelo proprietário (owner - Princípio: Ninguém melhor que o proprietário para dar direitos) do recurso (um arquivo, por exemplo). O proprietário do recurso decide quem tem permissão de acesso em determinado recurso e qual privilégio ele tem. O DAC utiliza como premissas: Todo objeto em um sistema deve ter um proprietário. Um objeto sem um proprietário é considerado não protegido. Direitos de acesso e permissões podem ser dados pelo proprietário do recurso a usuários individuais ou grupos de usuários. Os indivíduos podem pertencer a um ou mais grupos, podendo adquirir permissões cumulativas O controle de acesso discricionário pode ser implementado por listas de controle de acesso (ACL) relacionado à usuários individuais ou grupos baseados em perfis (roles). No controle de acesso discricionário, a concessão e a revogação dos direitos de acesso a um objeto são feitas pelo usuário que é dono desse objeto (à sua discrição). Isso fornece ao usuário uma grande flexibilidade na proteção de seus objetos, o que é uma vantagem deste modelo de controle de acesso. Entretanto, o controle de acesso discricionário não permite controlar a disseminação da informação. Modelos discricionários são considerados inadequados para diversas aplicações, uma vez que são relativamente fracos e demasiadamente flexíveis: basta um equívoco por parte de um usuário inocente (ou um ato deliberado de um usuário malicioso) e informações importantes podem ser indevidamente reveladas, alteradas ou destruídas.

44 Para saber mais sobre o Discretionary Access Control (DAC), assista aos vídeos: http://tinyurl.com/hkjps4a http://tinyurl.com/h9zgemr 12.6. CONTROLE DE ACESSO MANDATÓRIO (MAC) No controle de acesso mandatório (mandatory access control ou MAC), a política de acesso é determinada pelo sistema e não pelo proprietário do recurso. Este controle é utilizado em sistemas de múltiplos níveis com dados altamente sensíveis (por exemplo, informações governamentais e militares). Nesse tipo de controle, há a construção de um sistema que manipula múltiplos níveis de classificação entre sujeitos (nível de privilégios) e objetos (nível de sensibilidade da informação). No MAC, há uma divisão de tarefas entre: os administradores do sistemas, que definem os níveis de privilégio dos usuários e a política de acesso; os gestores das informações que estabelecem a rotulação das informações quanto ao seu nível de sensibilidade; O sistema cuida de aplicar as regras da política com base nos privilégios dos usuários e no rótulo das informações. O MAC é muito mais efetivo que o DAC, pelas seguintes razões: MAC não pode ser sobrescrito pelo proprietário do objeto, somente pelo administrador. Enquanto o ponto-chave do DAC é o fato de que os usuários são considerados donos do objeto e portanto responsáveis pelas suas permissões de acesso, o modelo mandatório prevê que usuários individuais não têm escolha em relação a que permissões de acesso eles possuem ou a que objetos podem acessar. Os usuários individuais não são considerados donos dos objetos, e não podem definir suas permissões, isso é realizado pelos administradores do sistema. Assim os usuários não têm o poder de conceder (acidentalmente ou intencionalmente) acesso a dados ou recursos para usuários não autorizados, de acordo com a política definida pelo sistema; MAC pode ser aplicado em outros agentes não protegidos pelo DAC além de usuários, como programas, diretórios, sockets, tcp sockets, unix stream sockets, sistemas de arquivos, entre outros; MAC é especificado pelo sistema. Ele não pode ser aplicado, modificado ou removido, exceto por uma operação privilegiada (através do kernel ou pelo usuário que obrigatoriamente possuir um papel específico); Sobre MAC, cada programa roda sobre uma sandbox que limita suas capacidades. Sandbox é um mecanismo utilizado para rodar programas de forma segura que provê um conjunto controlado de recursos, como memória, arquivos e rede. O Sandbox é um ferramenta eficaz e simples que isola a execução de programas e seus processos, tornando possível testar as suas operações em um ambiente seguro e controlado. Dentro deste ambiente virtual fechado, as atividades dos aplicativos serão executadas normalmente, no entanto estarão em uma área neutra, com operações limitadas a esse espaço que não afetarão o restante do computador.

45 Sistemas usando MAC podem ser implementados por meio das Listas de controle de acesso (ACLs) que definem os direitos e permissões que são dados a um sujeito sobre determinado objeto. As listas de controle de acesso disponibilizam um método flexível de adoção de controles de acesso discricionários. Atualmente existem algumas implementações do mecanismo MAC para o Linux, como: SELinux, AppArmor, GRSecurity, RBAC, e Smack. 12.7. CONTROLE DE ACESSO BASEADO EM PERFIS (RBAC) No controle de acesso baseado em perfil (ou papeis) (Role Based Access Control RBAC), o acesso às informações é baseado em função do cargo ou do grupo em que o usuário pertence. São definidos genéricos com os respectivos privilégios e a determinação do perfil de um usuário é feita de forma discricionária pelo gestor de um recurso. Geralmente, esse tipo de controle é aplicado no Controle de Acesso Discricionário DAC. Os modelos baseados em papéis regulam o acesso dos usuários à informação com base nas atividades que os usuários executam no sistema. Estes modelos necessitam a identificação de papéis no sistema, onde um papel pode ser definido como um conjunto de atividades e responsabilidades associadas a um determinado cargo ou função. Logo, ao invés de especificar um conjunto de acessos autorizados para cada usuário do sistema, as permissões são conferidas aos papéis. Por conseguinte, um usuário que exerce um papel pode realizar todos os acessos para os quais o papel está autorizado. Principais características do RBAC: Gerência de autorizações mais simples - a especificação de autorizações é dividida em duas partes, associação de direitos de acesso a papéis e associação de papéis a usuários. Isso simplifica bastante a gerência da segurança, facilitando tarefas como ajustar os direitos de acesso de um usuário em função de uma promoção ou transferência de setor na organização. Suporte a hierarquias de papéis - em muitas aplicações existe uma hierarquia natural de papéis baseada nas noções de generalização e especialização. Isto permite que permissões sejam herdadas e compartilhadas através da hierarquia. Suporte a privilégio mínimo - os papéis permitem que um usuário trabalhe com o mínimo privilégio exigido para uma determinada tarefa. Usuários autorizados a exercer papéis poderosos só precisam exercê-los quando forem absolutamente necessários, minimizando a possibilidade de danos por causa de erros inadvertidos. Suporte a separação de tarefas - os modelos baseados em papéis suportam separação de tarefas. Nestes modelos, a separação de tarefas é obtida através de restrições à autorização e/ou à ativação de papéis considerados mutuamente exclusivos. Delegação da administração de segurança - modelos baseados em papéis permitem que a administração da segurança seja descentralizada de maneira controlada. Isto significa que o administrador de segurança pode delegar parte de suas atribuições de acordo com a estrutura organizacional ou com a arquitetura do sistema computacional, permitindo, por exemplo, que administradores regionais gerenciem a segurança dos subsistemas locais.

46 O modelo RBAC é independente de política, diferente do que acontece com os modelos tradicionais de controle de acesso. A independência da política possibilita uma grande flexibilidade e facilidade do ajuste do controle de acesso à medida em que ocorram mudanças no ambiente. Apesar da independência de política, o RBAC garante três princípios de segurança: o princípio de privilégio mínimo, separação de tarefas (restrito aos papéis) e abstração de dados (não há restrições quanto à natureza das permissões, podendo ser abstratas, tais como débito crédito em um objeto conta). Para saber mais sobre o Role Based Access Control, assista ao vídeo: http://tinyurl.com/z4yad3a 12.7.1. CONTROLE DE ACESSO BASEADO EM REGRAS No controle de acesso baseado em regras, o acesso é definido pela lista de regras criadas pelo administrador do sistema, de acordo com a rotulação da informação e o nível de privilégio do usuário. Geralmente, esse tipo de controle é aplicado no Controle de Acesso Mandatório MAC. Existem outros modelos de controle de acesso, mais complexos mas que se são variáveis destes modelos. Você terminou o estudo desta unidade. Chegou o momento de verificar sua aprendizagem. Ficou com alguma dúvida? Retome a leitura. Quando se sentir preparado, acesse a Verificação de Aprendizagem da unidade no menu lateral das aulas ou na sala de aula da disciplina. Fique atento, essas questões valem nota! Você terá uma única tentativa antes de receber o feedback das suas respostas, com comentários das questões que você acertou e errou. Vamos lá?!

47 REFERÊNCIAS AMBITOJURIDICO. Autenticação segura ou vigilância eletrônica em massa? Disponível em < http://ambitojuridico.com.br/site/index.php/?n_link=revista_artigos_leitura&artigo_id=13076&revista_cad erno=9>. Acesso em 30 set 2016. BDTD. Aplicação de integração de banco de dados visando controle de acesso centralizado. 2011. Disponível em < http://bdtd.ibict.br/vufind/record/ufpr_e1bff9451674280dcc594b6bf1443297>. Acesso em 30 set 2016. CCNA. Lista de controle de acesso criadas facilmente: parte 1. 2008. Disponível em < http://blog.ccna.com.br/2008/07/28/lista- de- controle- de- acesso- criadas- facilmente- parte- 1/>. Acesso em 30 set 2016. COMER, Douglas E. Interligação em rede com TCP/IP: princípios, protocolos e arquitetura. Rio de Janeiro: Campus, 2006. CORRÊA, Vanderlei Antônio. Biometria: autenticação segura ou vigilância eletrônica em massa?. In: Âmbito Jurídico. 2013. Disponível em: < http://ambitojuridico.com.br/site/index.php/?n_link=revista_artigos_leitura&artigo_id=13076&revista_cad erno=9>. Acesso em 30 set 2016. DOCPLAYER. Controle de acesso lógico e físico. Disponível em < http://docplayer.com.br/2763166- Problema- controle- de- acesso- logico- e- fisico- controle- de- acesso- fisico- definicao- localizacao- do- cpd- localizacao- do- cpd.html>. Acesso em 30 set 2016. KISMETWIRELESS. Kismet. Disponível em <http://www.kismetwireless.net/>. Acesso em 30 set 2016. LINUXDESCOMPLICADO. Top 11 ferramentas de segurança de redes para linux. 2015. Disponível em < http://www.linuxdescomplicado.com.br/2015/06/11- ferramentas- de- seguranca- de- redes- para- linux.html>. Acesso em 30 set 2016. MADEIRA.ENG.BR. métodos de controle de acesso. 20112. Disponível em < http://www.madeira.eng.br/wiki/index.php?page=m%c3%a9todos+de+controle+de+acesso>. Acesso em 30 set 2016. MELO, Sandro. Exploração de Vulnerabilidade em Redes TCP/IP. Editora Alta Books. MORAES, Alexandre Fernandes. Segurança em redes: fundamentos. São Paulo: Érica, 2010. NAKAMURA, Emilio Tissato; GEUS, Paulo Licio. Segurança de redes em ambientes cooperativos. São Paulo: Novatec, 2010. NMAP.ORG. Guia de referência do nmap. Disponível em <https://nmap.org/man/pt_br/>. Acesso em 30 set 2016. OLIVEIRA, Wilson. Técnicas para hackers e soluções para segurança: versão 2. Editora Centroatlantico.pt Portugal 2003 OPENVAS. The world's most advanced open source vulnerability scanner and manager. Disponível em < http://www.openvas.org/>. Acesso em 30 set 2016. PORTALMASTER. O que é controle de acesso? 2015. Disponível em < http://portalmaster.com.br/blog/post/sobre- nos/o- que- e- controle- de- acesso>. Acesso em 30 set 2016.

48 PROJETODEREDES. Biometria na segurança de redes de computadores. 2014. Disponível em <http://www.projetoderedes.com.br/artigos/artigo_biometria_na_seguranca_das_redes.php>. Acesso em 30 set 2016. SEJALIVRE.ORG. As 10 principais ferramentas open source de segurança. 2012. Disponível em < http://sejalivre.org/as- 10- principais- ferramentas- open- source- de- seguranca/>. Acesso em 30 set 2016. SLIDESHARE. Controle de acesso. 2011. Disponível em < http://pt.slideshare.net/cassioaramos/contr- acesso>. Acesso em 30 set 2016. UFPR. A nova geração de modelos de controle de acesso em sistemas computacionais. Disponível em < http://wiki.inf.ufpr.br/maziero/lib/exe/fetch.php?media=ceseg:2006- sbseg- mc4.pdf>. Acesso em 30 set 2016. UPTODOWN. Aircrack- ng. 2015. Disponível em <https://aircrack- ng.br.uptodown.com/windows>. Acesso em 30 set 2016. VIVAOLINUX. Intrusão simples com metasploit. 2010. Disponível em < https://www.vivaolinux.com.br/artigo/intrusao- simples- com- Metasploit>. Acesso em 30 set 2016. WALTERCUNHA. Segurança da informação: autenticação. 2009. Disponível em < http://waltercunha.com/blog/index.php/2009/08/19/seguranca- da- informacao- autenticacao/>. Acesso em 30 set 2016. WELRBRAGA. Técnicas de controle de acesso de usuários. 2010. Disponível em < http://blog.welrbraga.eti.br/?p=642>. Acesso em 30 set 2016. WIKIPEDIA. Controle de acesso. Disponível em < https://pt.wikipedia.org/wiki/controle_de_acesso>. Acesso em 30 set 2016.