Escolar Documentos
Profissional Documentos
Cultura Documentos
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
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.
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.
• 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.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.
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.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.
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.
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 (é
Copyright © 2016 Centro Universitário IESB. Todos os direitos reservados.
SEGURANÇA DE REDES DE COMPUTADORES| UIA 2 | 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.
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.
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.
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:
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.
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.
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.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:
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:
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.
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.
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.
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 # “memória” para o escorregamento de frequência do micro
3 # pode ser necessário criar esse arquivo manualmente com
4 # o comando touch ntp.drift
5 driftfile /etc/ntp.drift
6 # estatísticas do ntp que permitem verificar o histórico
7 # de funcionamento e gerar gráficos
8 statsdir /var/log/ntpstats/
9 statistics loopstats peerstats clockstats
10 filegen loopstats file loopstats type day enable
11 filegen peerstats file peerstats type day enable
12 filegen clockstats file clockstats type day enable
13 # servidores públicos do projeto ntp.br
14 server a.ntp.br iburst
15 server b.ntp.br iburst
16 server c.ntp.br iburst
17 # outros servidores
18 # server outro-servidor.dominio.br iburst
19 # configurações de restrição de acesso
20 restrict default kod notrap nomodify nopeer
21 =====================================
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.1. NAGIOS
Ω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.
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.
10.1.2. ZABBIX
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
(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
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.
10.1.4. NTOP
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.
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.
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.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.
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.
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.
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
Fonte: http://tinyurl.com/gljkdzg
o OpenVAS sejam muito semelhantes,
existe uma diferença distinta entre eles.
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.
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.
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.
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
Fonte:
abertas, e também se essas portas podem ser exploradas ainda mais em ataques
http://tinyurl.com/zawhntq simulados. A saída é um texto claro e detalhado.
Copyright © 2016 Centro Universitário IESB. Todos os direitos reservados.
SEGURANÇA DE REDES DE COMPUTADORES| UIA 2 | 29
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
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
Aula 11 | AUTENTICAÇÃO
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:
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.
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.
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.
Fonte: http://tinyurl.com/j39kuwa
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
Embora existam muitos tipos, qualquer Smart Card pode ser classificado quanto à forma de
conexão com a leitora:
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.
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.
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.
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
Fonte: http://tinyurl.com/jlua7u6
• 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).
• 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).
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.
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.
Fonte: http://tinyurl.com/jt9pvcu.
Fonte: http://tinyurl.com/gphnbwv
Fonte: http://tinyurl.com/gpbvn98
• 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.
• 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.
Copyright © 2016 Centro Universitário IESB. Todos os direitos reservados.
SEGURANÇA DE REDES DE COMPUTADORES| UIA 2 | 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.
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:
• 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.
Para saber mais sobre o Role Based Access Control, assista ao vídeo:
http://tinyurl.com/z4yad3a
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á?!
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.
Copyright © 2016 Centro Universitário IESB. Todos os direitos reservados.
SEGURANÇA DE REDES DE COMPUTADORES| UIA 2 | 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.