Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

DESENVOLVIMENTO DE FERRAMENTA PARA INTEGRAÇÃO E CONTROLE DE ACESSO PARA FIREWALL, Esquemas de Rede de Área Local

O uso crescente da rede mundial de computadores nos últimos anos trouxe um enorme leque de serviços e facilidades, tanto para usuários como pra empresas e organizações. Empresas de grande porte acabam por usar a internet como uma ferramenta para transmitir dados comerciais e sigilosos entre suas filiais. Neste sentido a segurança dos dados trafegados e a integridade da rede se torna um fator crucial nesse cenário. Normalmente redes de grande porte, possuem um firewall responsável pela segurança da comunicação, e esse dispositivo tem sua gerência centralizada em uma equipe de administradores, tornando assim centralizado o poder de ação mediante a um incidente de segurança. Este trabalho visa criar uma solução que permite a ação de administradores de segmento de uma forma contida na configuração do firewall, adequando as configurações do mesmo às necessidades do setor ao qual esse administradores local pertence.

Tipologia: Esquemas

2016

Compartilhado em 25/10/2023

angelo-tembe
angelo-tembe 🇲🇿

9 documentos

1 / 45

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE FEDERAL DE SANTA MARIA
COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA
CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES
JONATHAN ORTIZ PREUSS
DESENVOLVIMENTO DE FERRAMENTA PARA
INTEGRAÇÃO E CONTROLE DE ACESSO PARA
FIREWALL
Santa Maria, RS
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d

Pré-visualização parcial do texto

Baixe DESENVOLVIMENTO DE FERRAMENTA PARA INTEGRAÇÃO E CONTROLE DE ACESSO PARA FIREWALL e outras Esquemas em PDF para Rede de Área Local, somente na Docsity!

UNIVERSIDADE FEDERAL DE SANTA MARIA

COLÉGIO TÉCNICO INDUSTRIAL DE SANTA MARIA

CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES

JONATHAN ORTIZ PREUSS

DESENVOLVIMENTO DE FERRAMENTA PARA

INTEGRAÇÃO E CONTROLE DE ACESSO PARA

FIREWALL

Santa Maria, RS

CTISM/UFSM,RS

ORTIZ PREUSS, Jonthan

Tecnólogo

ORTIZ PREUSS, JONATHAN

DESENVOLVIMENTO DE FERRAMENTA PARA INTEGRA-

ÇÃO E CONTROLE DE ACESSO PARA FIREWALL / por JO- NATHAN ORTIZ PREUSS. –. 43 f.: il.; 30 cm. Orientador: Renato Preigschadt de Azevedo Co-orientador: Bolivar Menezes da Silva Trabalho de Conclusão de Curso - Universidade Federal de Santa Maria, Colégio Técnico Industrial de Santa Maria, Curso Superior de Tecnologia em Redes de Computadores, RS,.

  1. Firewall. 2. Segurança. 3. Redes. 4. Desenvolvimento. I. Preigs- chadt de Azevedo, Renato. II. Menezes da Silva, Bolivar. III. Título.

©c Todos os direitos autorais reservados a JONATHAN ORTIZ PREUSS. A reprodução de partes ou do todo deste trabalho só poderá ser feita mediante a citação da fonte. E-mail: autor@email.com

JONATHAN ORTIZ PREUSS

DESENVOLVIMENTO DE FERRAMENTA PARA INTEGRAÇÃO E CONTROLE DE

ACESSO PARA FIREWALL

Trabalho de Conclusão de Curso apresentado ao Curso Superior de Tecnologia em Redes de Computadores da Universidade Federal de Santa Maria (UFSM, RS), como requisito par- cial para a obtenção do grau de Tecnólogo em Redes de Computadores

Aprovado em de de :

Renato Preigschadt de Azevedo, Me. (UFSM) (Presidente/Orientador)

Tarcisio Ceolin Junior, Me (UFSM)

Rafael Teodósio Pereira, Phd (UMINHO)

Santa Maria, RS

AGRADECIMENTOS

A realização desse trabalho não seria possível sem o apoio dos professores Renato P. Azevedo e Bolivar Menezes da Silva.

“Domine seu medo ou vire refém dele.” (AUTOR DESCONHECIDO)

ABSTRACT

DEVELOPMENT OF TOOL FOR INTEGRATION AND ACCESS CONTROL FOR

FIREWALL

AUTHOR: JONATHAN ORTIZ PREUSS

ADVISOR: RENATO PREIGSCHADT DE AZEVEDO

COADVISOR: BOLIVAR MENEZES DA SILVA

The increasing use of the World Wide Web in recent years brought a huge range of services and facilities for the users, for companies and organizations. The big companies end up using the internet as a tool to transmit commercial and sensitive data between its subsidiaries. The security of the transmitted data and the network integrity becomes a crucial factor in this sce- nario. Usually big networks have a firewall responsible for the security of communication, this device is managed by a single administrator, making centralized the power to act in a security incident. This work aims to create a solution that allows the action of segment administrators in a way contained in the configuration of the firewall, adapting and adjusting your configuration according with needs of the sector to which these local administrators belongs.

Keywords: Firewall. Security. Network. Development.

LISTA DE FIGURAS

LISTA DE ABREVIATURAS E SIGLAS

ICMP Internet Control Message Protocol SSL Secure Sockets Layer ER Entidade relacionamento CTISM Colégio Técnico Industrial de Santa Maria CT Centro de Tecnologia UFSM Universidade Federal de Santa Maria CIDR Classless Inter-Domain Routing IP Internet Protocol XML eXtensible Markup Language HTTP Hyper Text Transfer Protocol TCP Transmission Control Protocol VPN Virtual Private Network CDN Content Delivery Network DDoS Distributed Denial of Service NAT Network address translation SSL Secure Socket Layer SQL Structured Query Language

SUMÁRIO

  • Figura 2.1 – Sintaxe de regra iptables.
  • Figura 3.1 – Arquitetura da aplicação Chumbo.
  • Figura 3.2 – Protocolo de mensagens para aplicação Chumbo.
  • Figura 3.3 – Modelo ER da base de dados da ferramenta.
  • Figura 3.4 – Diagrama de estado de transição do servidor.
  • Figura 3.5 – Código de socket na aplicação servidor.
  • Figura 3.6 – Fluxograma de autenticação de usuário no servidor.
  • Figura 3.7 – Fluxograma de autenticação de usuário no servidor.
  • Figura 3.8 – Fluxograma de consulta de regras de usuário no servidor.
  • Figura 3.9 – Fluxograma de exclusão de regras de usuário no servidor.
  • Figura 3.10 – Diagrama de estado de transição do cliente..
  • Figura 3.11 – Código de socket na aplicação cliente..
  • Figura 3.12 – Fluxograma de autenticação de usuário no sistema.
  • Figura 3.13 – Fluxograma de interação de usuário e CLI.
  • Figura 3.14 – Fluxograma para submissão de uma regra ao firewall.
  • Figura 3.15 – Fluxograma para consulta de regra ao firewall.
  • Figura 3.16 – Fluxograma para exclusão de regra ao firewall.
  • Figura 4.1 – Topologia de cenário para testes
  • Figura 4.2 – Tabela contendo dados de autenticação de usuários.
  • Figura 4.3 – Tabela de contexto de usuários
  • Figura 4.4 – Captura de pacotes ICMP com destino ao endereço 200.18.3.1.
  • Figura 4.5 – Captura de pacotes ICMP com destino ao endereço 200.18.2.1.
  • Figura 4.6 – Tela de autenticação de dois usuários simultâneos.
  • Figura 4.7 – Tela de conexão de dois usuários simultâneos no servidor.
  • Figura 4.8 – Tela de interface CLI.
  • Figura 4.9 – Tela de submissão de uma regra elaborada errada..
  • Figura 4.10 – Tela de submissão de uma regra fora do contexto do usuário.
    • usuário Figura 4.11 – Tela de submissão de uma regra com elemento proibido no contexto do
  • Figura 4.12 – Tela de submissão de uma regra bem sucedida.
  • Figura 4.13 – Tela de captura de pacotes ICMP após submissão de regra.
  • 1 INTRODUÇÃO
  • 1.1 OBJETIVOS
  • 1.1.1 Objetivo Geral
  • 1.1.2 Objetivos Específicos
  • 1.2 JUSTIFICATIVA.
  • 2 REVISÃO BIBLIOGRÁFICA
  • 2.1 FIREWALL
  • 2.1.1 Netfilter
  • 2.1.2 Iptables
  • 2.1.2.1 Regra Iptables
  • 2.2 SOCKET
  • 2.3 CRIPTOGRAFIA
  • 2.3.1 Criptografia Simétrica
  • 2.3.2 Criptografia Assimétrica
  • 2.4 TRABALHOS RELACIONADOS
  • 3 DESENVOLVIMENTO
  • 3.1 DESCRIÇÃO DO FUNCIONAMENTO DA APLICAÇÃO
  • 3.2 DEFINIÇÃO DO PROTOCOLO DAS MENSAGENS
  • 3.2.1 Especificação do serviço
  • 3.2.2 Restrições do ambiente
  • 3.2.3 Vocabulário de mensagens
  • 3.2.4 Estrutura de uma regra de firewall
  • 3.3 DEFINIÇÃO DO AMBIENTE DE CONTROLE DE ACESSO
  • 3.3.1 Estrutura do banco de dados
  • 3.4 FERRAMENTAS E LINGUAGENS DE PROGRAMAÇÃO
  • 3.4.1 Criando ambiente de controle para usuário
  • 3.5 IMPLEMENTAÇÃO DO SERVIDOR
  • 3.5.1 Autenticação de Usuário
  • 3.5.2 Aplicação de regras
  • 3.5.3 Consulta de Regras
  • 3.5.4 Exclusão de Regras
  • 3.6 IMPLEMENTAÇÃO DO CLIENTE
  • 3.6.1 Socket e autenticação
  • 3.6.2 Implementação de CLI
  • 3.6.3 Aplicação de regras
  • 3.6.4 Consulta de regras
  • 3.6.5 Exclusão de regras
  • 4 TESTES E RESULTADOS
  • 5 CONSIDERAÇÕES FINAIS
  • REFERÊNCIAS

14

verificar suas competências;

  • Coletar, analisar e publicar os resultados obtidos;

1.2 JUSTIFICATIVA

Empresas e entidades de pequeno a grande porte, que possuem filiais ou instalações ge- ograficamente distribuídas, frequentemente deparam-se como a necessidade de interligar sua infraestrutura de redes para o compartilhamento de recursos ou dados corporativos, para esse cenário normalmente é adotado o uso de VPNs (Virtual Private Networks). A utilização desse serviço fornece uma solução de tunelamento através da internet, com um baixo custo e um certo nível de segurança. Nessa conjuntura também é comum que, cada filial possua um fi- rewall e administradores próprios para a gerência da rede local e a matriz possua um firewall de borda. Habitualmente, esses administradores de redes não possuem acesso ou privilégio sufici- ente para operar dispositivos de firewall que estejam fora dos seus domínios administrativos. A implementação do projeto proposto tornará possível que administradores, que tenham sub-redes internas gerenciadas por diferentes administradores de segmentos possam fornecer um acesso, de forma controlada, para que esses administradores locais tenham acesso somente a suas refe- rentes sub-redes. Nesse contexto esses administradores de segmentos serão capazes de aplicar no firewall de borda, modificações que impactarão somente nas suas sub-redes. Logo, diante de um comportamento anômalo na rede, torna-se possível que diferentes administradores possam reagir de forma a tomar medidas corretivas visando o aumento de confiabilidade, segurança e integridade de uma rede.

15

2 REVISÃO BIBLIOGRÁFICA

Esse capítulo apresenta conceitos e definições referentes a temas abordados ao longo do desenvolvimento da aplicação proposta, como conceitos de firewall, sockets e criptografia, Softwares de firewall e trabalhos relacionados a proposta dessa monografia.

2.1 FIREWALL

Firewall é um componente ou conjunto de componentes que restringe o acesso entre uma rede protegida e a Internet ou entre conjuntos de redes (ELIZABETH D. ZWICKY, 2000). O dispositivo atuante como firewall é responsável por analisar o tráfego de entrada e saída em uma rede e é baseado em uma série de políticas de controle de acesso o que permite ou não um determinado tráfego. Para fins de registro histórico do acionamento dessas políticas é possível armazenar o resultado da execução das mesmas em um arquivo de log^1. Existem três principais tipos de firewall: filtro de pacotes tradicionais, filtros de estado e gateway de aplicação (JAMES F. KUROSE, 2016).

  • Filtro de pacotes tradicionais: baseado em regras estabelecidas pelo administrador da rede, esse firewall analisa e descarta ou não os pacotes que entram e saem da mesma, nor- malmente usados para bloquear pacotes provenientes de endereços e serviços específicos.
  • Filtros de estado: O filtro de estado opera em dois estágios, o tratamento inicial dos paco- tes é semelhante ao tratamento realizado por um filtro de pacotes. Utilizando um conjunto de regras estipuladas pelo administrador da rede, o firewall irá analisar se um determinado pacote pode ou não trafegar na rede. Caso o tráfego seja permitido o firewall irá manter e vistoriar uma tabela com informações sobre o estado da conexão desse tráfego. Segundo (STEPHEN NORTHCUTT LENNY ZELTSER, 2005) o protocolo TCP, por ser orientado a conexão, é um bom exemplo para demonstrar o funcionamento de uma tabela de esta- dos. Baseado nas flags de que sinalizam a comunicação do TCP, ao iniciar uma conexão o dispositivo insere na tabela de estado um registro referente a conexão em questão. O registro na tabela de estados contém: protocolo da comunicação, endereço de origem e destino, porta de origem e destino, estado da conexão e uma relação das portas de origem e destino inversas para demonstrar o tráfego de resposta. (^1) Log é o arquivo aonde são armazenados os registros dos eventos de um sistema.

17

política padrão da chain é aplicada (AYUSO, 1999).

2.1.2 Iptables

Iptables foi criado por Rusty e é uma interface de comando que possibilita criar regras para as tabelas do Netfilter. Essas regras são responsáveis pela forma como o fluxo serão tra- tados, por exemplo: realizar operações como filtragem de pacote. Uma regra do Iptables é composta por parâmetros que determinam as características dos pacotes que estão em confor- midade com a regra que está sendo estabelecida (AYUSO, 2006). Uma regra pode ser escrita seguindo a sintaxe exibida na figura 2.1;

Figura 2.1: Sintaxe de regra iptables.

Fonte: acervo pessoal.

2.1.2.1 Regra Iptables

Uma regra Iptables é composta basicamente por cinco partes como demonstrada na figura 2.1. No item A é definida em qual tabela a regra será inserida, no exemplo a regra será inserida na tabela FILTER. O item B define uma ação que se quer executar: " -A"para adicionar uma regra ao final da chain, " -I"para adicionar uma regra no inicio da chain, ou se seguido de um numero pode-se definir a posição em que a regra sera inserida na chain, " -D"para remover uma regra em uma chain. Após definir a ação, o item C define em qual chain a regra será adicionada, no exemplo a regra será adicionada na chain INPUT. O item D estará definindo características que o pacote deve possuir para ser tratado pela mesma, a quarta e ùltima parte define a ação a ser executada com o pacote que possuir as características da definidas na rega. A regra Iptables da figura 2.1 está definindo que a regra será inserida na tabela filter, na chain INPUT, filtrará pacotes TCP que se comunicam pela porta 22 que estão sendo recebido pelo dispositivo, pela ação definida na última parte da regra esses pacotes serão descartados.

18

2.2 SOCKET

Uma conexão de socket fornece um canal ponto a ponto de comunicação de via dupla, onde é possível que processos do sistema operacional possam trocar informações com outros processos que estejam em um mesmo host ou em hosts diferentes através de uma rede (BE- SAW, 1987). O Socket teve origem na Universidade de Berkeley, Califórnia, como sendo a API (Application Programming Interface) de desenvolvimento do protocolo TCP/IP para o am- biente UNIX (COMER,1993). A API de socket fornece um grupo de operações chamadas de primitivas, que facilitam o uso de funções fornecidas pela camada de transporte. Em (AN- DREW S. TANENBAUM, 2010), no tópico 6.1.3 Berkeley Sockets, o socket e suas primitivas são abordados com maiores detalhes.

2.3 CRIPTOGRAFIA

Criptografia é o termo utilizado para técnicas e métodos de uma forma codificada ou cifrada. Segundo (ANDREW S. TANENBAUM, 2010), a escrita de uma mensagem de forma cifrada é conversão de caractere a caractere sem considerar a estrutura linguística da mensagem. Já a escrita de uma mensagem por código, consiste em substituir uma palavra inteira por um símbolo ou por outra palavra.

2.3.1 Criptografia Simétrica

Nesse modelo de criptografia os algoritmos de cifra utilizam um conjunto de caracteres referido como chave para codificar uma mensagem legível em um código ilegível, o algoritmo que irá descodificar essa mensagem utilizará a mesma chave, utilizada para cifrar a mensagem, para transformar o código ilegível em uma mensagem legível novamente. Dessa forma é ne- cessário que os interlocutores envolvidos em uma comunicação cifrada possuam a chave para cifrar e decodificar as mensagens. Em caso das mensagens serem interceptadas, mesmo tendo conhecimento do algoritimo utilizado para codificar as mensagens, sem a chave correta não será possível ter acesso ao conteúdo legível (OLIVEIRA, 2012).