Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1



Documentos relacionados
Projeto e Instalação de Servidores Servidores Linux Aula 6 Firewall e Proxy

Compartilhamento da internet, firewall

Oficina de ferramentas de Gerência para Redes em Linux


Instalação e Configuração Iptables ( Firewall)

Elaboração de Script de Firewall de Fácil administração

Segurança com Iptables

Prof. Samuel Henrique Bucke Brito

Segurança de Redes de Computadores

Firewall Iptables. Professor: João Paulo de Brito Gonçalves. Campus - Cachoeiro Curso Técnico de Informática

Iptables. Adailton Saraiva Sérgio Nery Simões

IPTABLES. Helder Nunes

NAT com firewall - simples, rápido e funcional

Obs: Endereços de Rede. Firewall em Linux Kernel 2.4 em diante. Obs: Padrões em Intranet. Instalando Interface de Rede.

III WTR do POP-BA III Workshop de Tecnologias de Redes Ponto de Presença da RNP na Bahia Instrutor: Ibirisol Fontes Monitor: Jundaí Abdon.

Entendendo como funciona o NAT

01 - Entendendo um Firewall. Prof. Armando Martins de Souza armandomartins.souza@gmail.com

Segurança de redes com Linux. Everson Scherrer Borges Willen Borges de Deus

Autor: Armando Martins de Souza <armandomartins.souza at gmail.com> Data: 12/04/2010

Firewall Iptables - Impasses

Segurança em Sistemas de Informação

PROJETO DE IMPLEMENTAÇÃO DE UM SERVIDOR FIREWALL LIVRE UTILIZANDO IPTABLES

ADMINISTRAÇÃO DE REDES I LINUX. Firewall. Frederico Madeira LPIC 1, CCNA fred@madeira.eng.br

Curso de extensão em Administração de sistemas GNU/Linux: redes e serviços

Firewall. Tutorial Firewall em Linux Acadêmicos: Felipe Zottis e Cleber Pivetta

Uso do iptables como ferramenta de firewall.

Aula 08. Firewall. Prof. Roitier Campos Gonçalves

Firewalls, um pouco sobre...

Segurança de Redes. Firewall. Filipe Raulino

Tipos de Firewalls. porta de origem/destino, endereço de origem/destino, estado da conexão, e outros parâmetros do pacote.

Orientador de Curso: Rodrigo Caetano Filgueira

Firewall - IPTABLES. Conceitos e Prática. Tópicos em Sistemas de Computação Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity.

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Firewalls em Linux. Tutorial Básico. André Luiz Rodrigues Ferreira

Professor Claudio Silva

Firewalls. Prática de Laboratório. Maxwell Anderson INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA

Administração de Sistemas Operacionais

comando parâmetro alternativo parâmetro REGRA função iptables -t tabela -N --new chain cria uma nova chain. iptables -t tabela -E --rename-chain

Firewall. Professor: João Paulo de Brito Gonçalves Disciplina: Serviços de Redes. Campus Cachoeiro Curso Técnico em Informática

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

Sistemas Distribuídos

IP significa Internet Protocol. A Internet é uma rede, e assim como ocorre em qualquer tipo de rede, os seus nós (computadores, impressoras, etc.

LABORATÓRIO V. NAT E FIREWALL Documento versão 0.1. Aluno: Paulo Henrique Moreira Gurgel #

MÓDULO 8 Modelo de Referência TCP/IP

Prática NAT/Proxy. Edgard Jamhour. Esses exercícios devem ser executados através do servidor de máquinas virtuais: espec.ppgia.pucpr.

Projeto e Instalação de Servidores Estrutura da Internet e do TCP/IP

Características de Firewalls

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

Arquitetura de Rede de Computadores

Tema do Minicurso: Firewall IPTABLES. Carga horária 3h

Hackers. Seus dados podem ser inúteis, mas seu computador em si pode ainda ser um recurso valioso.

Linux Network Servers

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

Pós Graduação Tecnologia da Informação UNESP Firewall

Firewall IPTables e Exemplo de Implementação no Ambiente Corporativo.

Segurança em Sistemas de Informação

Fundamentos dos protocolos internet

Redes de Computadores. Protocolos de comunicação: TCP, UDP

UNIVERSIDADE FEDERAL DE PELOTAS

Capítulo 4 TCP/IP FIREWALLS.

CCNA 2 Conceitos Básicos de Roteadores e Roteamento

Tutorial configurando o dhcp no ubuntu ou debian.

Configuração do Servidor Gateway Firewall e DHCP

AS VERSÕES DESCRIÇÃO DAS FUNÇÕES

REDES DE COMPUTADORES

A Camada de Transporte

Administração de Servidores de Rede. Prof. André Gomes

Execícios de Revisão Redes de Computadores Edgard Jamhour. Proxy, NAT Filtros de Pacotes

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

FIREWALL COM IPTABLES. by João Eriberto Mota Filho 3. TABELAS. Tabela Filter ESQUEMA DA TABELA FILTER

Trabalho 3 Firewalls


APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

Firewalls. Firewalls

Netfilter e Iptables

Controlando o tráfego de saída no firewall Netdeep

Aula pratica 4 Testar Conexões TCP/IP em Redes Industrias Usando os comandos Ping e Net View (1.a Parte)

Firewalls - IPTables. Carlos Gustavo A. da Rocha. ASSR

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Proxyarp O Shorewall não exige qualquer configuração

Firewall e Proxy. Relatório do Trabalho Prático nº 2. Segurança em Sistemas de Comunicação

TCP é um protocolo de TRANSMISSÃO, responsável pela confiabilidade da entrega da informação.

Curso Firewall. Sobre o Curso de Firewall. Conteúdo do Curso

Gestão da Segurança da Informação Professor: Maurício AULA 04 Tipos de Ataques

GUIA RÁPIDO. DARUMA Viva de um novo jeito

Configurando um servidor DHCP

Administração do Windows Server 2003

3. Explique o motivo pelo qual os protocolos UDP e TCP acrescentam a informação das portas (TSAP) de origem e de destino em seu cabeçalho.

Endereçamento Privado Proxy e NAT. 2008, Edgard Jamhour

Exercícios de Revisão Redes de Computadores Edgard Jamhour. Segundo Bimestre

REDES DE COMPUTADORES

Wireshark Lab: TCP. Versão KUROSE, J.F & ROSS, K. W. Todos os direitos reservados 2011 BATISTA, O. M. N. Tradução e adaptação para Wireshark.

Compartilhamento de internet usando recursos do Windows XP

Acesso Remoto Placas de captura

Aula prática. Objetivo IPCONFIG. Prof. Leandro Pykosz Informa a configuração atual de rede da máquina;

Arquitetura de Rede de Computadores

Introdução a Firewalls no Linux (Netfilter/Iptables)

Transcrição:

Segurança na Web Capítulo 6: Firewall Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW Page 1

Introdução Qual a função básica de um firewall? Page 2

Introdução Qual a função básica de um firewall? Bloquear acesso a portas que não estão em uso ou que não devem receber conexões por parte da internet Page 3

Quem precisa de um firewall? Se você planeja conectar-se a internet, precisa de um firewall... Page 4

Por que eu preciso de um firewall? Para proteger seu computador e sua rede, se for o caso... Existem atualmente inúmeras formas de ataque a um computador ou serviço específico Motivos para invadir seu computador ou sua rede não faltam... Page 5

Tenho qualquer coisa que valha a pena proteger? Existe sempre algo que seja necessário proteger em algum grau, exemplo: Responsabilidade vertical Dados perdidos Comprometer dados confidenciais Queda da rede Page 6

O que faz um firewall? Um firewall examina o tráfego enquanto ele entra em uma das suas interfaces e aplica regras ao tráfego... Essencialmente: permitindo ou impedindo o tráfego baseado nestas regras Page 7

Ex.: um firewall em operação... Tráfego restrito Tráfego permitido Bloqueado Permitido O tráfego é bloqueado porque ele não atingiu o critério especificado Para a internet Apenas o tráfego da internet que atinge um critério especificado tem permissão para passar Acesso a recursos especificos Bloqueado Permitido Tráfego desconhecido Tráfego especificado permitido Page 8

Visão geral operacional do firewall Regras comuns e características dos firewalls: Bloquear tráfego de rede recebido baseado na origem ou destino Bloquear tráfego de rede enviado baseado na origem ou destino Bloquear tráfego de rede baseado no conteúdo Tornar disponíveis os recursos internos Page 9

Visão geral operacional do firewall Regras comuns e características dos firewalls (cont.): Permitir conexões à rede interna Relatar tráfego de rede a atividades do firewall Page 10

Revisão sobre TCP/IP Por que TCP/IP? Para formular boas regras de firewall, é necessário ter uma boa noção de: endereços, portas e protocolos de rede Page 11

Revisão sobre TCP/IP Todos os dados transmitidos através da internet são agrupados em pacotes TCP que podem conter até 1460 bytes de dados Além dos dados, cada pacote inclui 40 bytes adicionais contendo: endereço IP de origem, endereço IP de destino, porta de origem, porta de destino, códigos de verificação, número do pacote, etc... Page 12

Revisão sobre TCP/IP No total tem-se: 20 bytes para os headers do protocolo TCP 20 bytes para os headers do protocolo IP totalizando assim, 40 bytes de headers por pacote. Dessa forma temos 1460 bytes de dados em um pacote de 1500 bytes, por exemplo. Page 13

Pacote TCP/IP Header IP Header TCP Conteúdo Headers IP e TCP (40 bytes) Dados (até 1460 bytes) Page 14

Pacote TCP/IP Pode-se dizer que o IP (header IP) se encarrega do endereçamento e da entrega dos pacotes enquanto o TCP (header TCP) se encarrega da verificação de erros, numeração de portas e outras funções. Page 15

Pacote TCP/IP Um arquivo de 15 KB, por exemplo, como seria transmitido na rede? Page 16

Pacote TCP/IP Um arquivo de 15 KB, por exemplo, como seria transmitido na rede? Seria dividido em 11 pacotes Os 10 primeiros contendo 1460 bytes cada um e o último contendo os 760 bytes finais. Page 17

Pacote TCP/IP É graças aos códigos de verificação e numeração de pacotes que arquivos grandes podem ser transmitidos de forma íntegra. Caso sejam corrompidos ou perdidos, basta retransmitir os pacotes extraviados ou danificados, quantas vezes for necessário. Page 18

Pacote TCP/IP Importante: O protocolo TCP/IP permite o uso de pacotes com até 64 KB Porém o tamanho mais usado é de 1500 bytes, padrão para frames Ethernet. Page 19

Portas TCP Existem 65.536 portas TCP, numeradas de 0 a 65.535 Cada porta porde ser usada por um programa ou serviço diferente, de forma que: em teoria poderiamos ter até 65536 serviços diferentes ativos, com um único endereço IP válido. Page 20

Portas TCP As portas TCP mais usadas vão de 0 à 1023, que são reservados a serviços mais conhecidos e utilizados A porta 0 é reservada, por isso não entra na lista. Page 21

Portas TCP e UDP Além das 65.536 portas TCP, temos o mesmo número de portas UDP. TCP = confiabilidade e confirmação UDP = velocidade e simplicidade Page 22

Exemplo de transmissão TCP Mensagem de texto de 300 bytes via TCP Estação: SYN (solicita a abertura da conexão) Servidor: SYN (confirma o recebim. e avisa que a porta está dispon.) Servidor: ACK (inicia conexão) Estação: ACK (confirma) Estação: DATA (é enviado o pacote com a mensagem de texto) Servidor: OK (a confirm., depois de verificar a integrid. do pacote) Estação: FYN (solicita o fechamento da conexão) Servidor: FYN (confirma) Estação: FYN (confirma que recebeu a confirmação) Page 23

Exemplo de transmissão UDP Streaming de vídeo e áudio via web situação onde o que vale é a velocidade e não a confiabilidade. Outra situação comum são os servidores de DNS ao acessar um site, a solicitação do endereço IP referente ao domínio do site e a resposta do servidor são enviadas via UDP, para ganhar tempo Page 24

TCP e UDP Ao configurar um firewall é necessário atenção quanto aos protocolos TCP e UDP DNS e SAMBA por exemplo, utilizam tanto os protocolos TCP como UDP. Page 25

Portas mais usadas para serviços de internet 22 = SSH 21 = FTP 25 = SMTP 53 TCP e 53 UDP = DNS 80 = HTTP 110 = POP3 143 = IMAP 443 = HTTPS 1194 UDP = OpenVPN 5901 = VNC Page 26

TCP, UDP e ICMP Além do TCP e UDP temos ICMP (Internet Control Message Protocol) um protocolo de controle. Uso do protocolo ICMP: ping (echo request) usado para verificar se determinada máquina está online e medir a latência da conexão. Page 27

TCP, UDP e ICMP Outra função importante do ICMP é o controle do TTL (time to live) de cada pacote TCP ou UDP. O que acontece com um pacote caso ele não chegue até o destino? Page 28

TCP, UDP e ICMP O que acontece com um pacote caso ele não chegue até o destino? Existem duas possibilidades. A primeira é um roteador próximo perceber que a máquina está fora do ar e destruir o pacote A segunda é utilizar a TTL com valores que variam de 64 a 128 hops Page 29

Entendendo as regras do firewall (Iptables) Escrever regras do firewall é como que aprender um novo dialeto... Imagine que ao escrever uma nova regra, você está explicando uma ideia, tente ser claro para que seja entendido... Page 30

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -A INPUT: especifica que a regra se aplica a pacotes de entrada, ou seja, pacotes recebidos pelo servidor, em qualquer interface -A OUTPUT: a regra se aplica a pacotes de saída, transmitidos pelo próprio servidor. Page 31

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -A FORWARD: este parâmetro é usado para compartilhar a conexão com a internet, permitindo que os micros da rede local acessem através do servidor. Os pacotes dos outros micros, encaminhados pelo servidor, são tratados como FORWARD, diferente dos pacotes transmitidos pelo próprio servidor, que são tratados como OUTPUT. Page 32

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -p tcp: especifica que a regra se aplica a pacotes TCP -p udp: especifica que a regra se aplica a pacotes UDP Ex.: iptables A INPUT p udp --dport 53 j ACCEPT Importante: é necessário sempre especificar o protocolo, caso contrário, ERRO! Page 33

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: Caso seja preciso bloquear os três protocolos para um determinado endereço, pode-se usar: iptables A INPUT p ALL s 88.191.79.206 j DROP Page 34

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: É comum bloquear as portas 0 a 1023 UDP, autorizando apenas as portas que devem ficar abertas como: iptables A INPUT p udp --dport 53 j ACCEPT iptables A INPUT p udp --dport 0:1023 j DROP Page 35

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -p icmp: bloquear o pedido de pings Ex.: iptables A INPUT p icmp --icmp-type echorequest j DROP Page 36

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -i eth0: a opção -i permite definir a interface onde os pacotes devem ser recebidos ou enviados. Exemplos: iptables A INPUT p tcp j REJECT iptables A INPUT i eth2 p tcp j REJECT iptables A INPUT i eth0 p tcp --dport 22 j ACCEPT Page 37

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -dport ou --destination-port: especifica uma porta. O uso mais comum para esta opção é para abrir portas de entrada e depois aplicar uma regra que feche as demais. Page 38

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -d (destiny): destinado ao endereço IP ou domínio citado. Bastante utilizado para bloquear o acesso a determinados sites a partir dos micros da rede local. Ex.: iptables A FORWARD d dominio.com j REJECT Page 39

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -m mac --mac-source 00:11:D8:76:59:2E: esta é a regra que permite especificar endereços MAC dentro das regras do Iptables. Ex.: iptables A INPUT --dport 22 m mac --macsource 00:11:D8:76:59:2E j ACCEPT Page 40

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: --syn: cria uma regra válida apenas para novas conexões, não impedindo que o outro micro responda a conexões iniciadas pelo servidor, como em: Ex.: iptables A INPUT p tcp --syn j DROP Page 41

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -j: é usado no final de cada regra, especificando uma ação, que pode ser: -j ACCEPT: aceita o pacote. Ele é encaminhado ao destino sem passar pelas demais regras. -j REJECT: rejeita educadamente o pacote, enviando um pacote de resposta ao emissor. Ex.: connect to host 192.168.1.1 port 22: Connection refused Page 42

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: -j DROP: o DROP é mais enfático. O pacote é simplesmente descartado, sem aviso. O emissor fica um longo tempo esperando, até que eventualmente recebe um erro de time-out. -j LOG: permite logar conexões. É interessante usar estas regras principalmente em regras muito visadas, como a SSH. Page 43

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: (continuação) -j LOG: para ativar o log, é necessário duplicar a regra que abre a porta, usando a opção -j LOG na primeira e -j ACCEPT na segunda, como em: iptables A INPUT p tcp --dport 22 j LOG iptables A INPUT p tcp --dport 22 j ACCEPT Page 44

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: (continuação) -j LOG: as mensagens são gravados no arquivo /var/log/messages. é possível ver as mensagens com o comando dmesg Page 45

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: Importante: alterar a ordem das regras altera o resultado. Ex.: iptables A INPUT p tcp j REJECT iptables A INPUT p tcp --dport 22 j REJECT Qual o problema nas regras acima? Page 46

Entendendo as regras do firewall (Iptables) Parâmetros do Iptables: Exemplo 2: iptables A INPUT p tcp --dport 22 j ACCEPT iptables A INPUT p tcp --dport 22 j LOG Qual o problema nas regras acima? Page 47

Escrevendo um script de firewall (Iptables) Simplesmente acessar a internet como cliente, sem rodar nenhum servidor, nem compartilhar a conexão com outros micros Solução para proteção inicial: #!/bin/sh iptables A INPUT i lo j ACCEPT iptables A INPUT p tcp --syn j DROP Page 48

Escrevendo um script de firewall (Iptables) A ideia aqui é que o micro possa acessar a internet sem ficar vulnerável a acessos externos. Estes dois comandos fazem isso da forma mais simples possível. iptables A INPUT i lo j ACCEPT iptables A INPUT p tcp --syn j DROP Page 49

Escrevendo um script de firewall (Iptables) Para desativar o firewall e voltar a aceitar conexões, use o comando iptables F, que limpa as regras do Iptables: # iptables -F Page 50

Exemplo de script de firewall completo (Iptables) # Abre para a faixa de endereços da rede local: iptables A INPUT s 192.168.1.0/255.255.255.0 j ACCEPT # Faz a mesma coisa, só que especificando a interface: iptables A INPUT i eth0 j ACCEPT # Abre uma porta: iptables A INPUT p tcp --dport 22 -j ACCEPT # Ignora pings: iptables A INPUT p icmp-type echo-request -j DROP Page 51

Exemplo de script de firewall completo (Iptables) (Continuação) # Protege contra IP spoofing: echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter # Descarta pacotes mal formados, protegendo contra ataques #diversos: iptables A INPUT m state --state INVALID j DROP # Abre para a interface de loopback: iptables A INPUT i lo j ACCEPT # Impede a abertura de novas conexões, bloqueando acesso #externo ao servidor, com exceção das regras anteriores: iptables A INPUT p tcp --syn j DROP Page 52

Exemplo de script de firewall completo (Iptables) Após incluir todas as regras do firewall, é necessário salvar e dar permissão de execução. Ex.: # cd /etc/init.d/ # chmod +x firewall Page 53

Exemplo de script de firewall completo (Iptables) Comandos importantes iptables F: limpa a tabela principal do Iptables iptables t nat F: limpa a tabela nat, que é usada por regras que compartilham a conexão e fazem forwarding de portas iptables L: este comando lista a configuração atual sem alterar nada iptables t nat L: este comando lista a configuração de forwarding e compartilhamento Page 54

Forwarding de Portas Ao compartilhar uma conexão via NAT, apenas o servidor recebe conexões vindas da internet. Os micros da rede local acessam através do servidor e recebem apenas pacotes de resposta. Entretanto existem casos em que você realmente deseja que alguns dos hosts fique diretamente acessível a internet Page 55

Forwarding de Portas Exemplo: Um servidor web, escutando na porta 80 do micro 192.168.1.3 da rede local, fique disponível na internet. A única forma de fazer isso é o servidor passar a bola para este micro A limitação é que continua existindo uma única porta 80, uma única porta 22, etc... Page 56

Forwarding de Portas Exemplo de Forwarding: # Redireciona uma única porta para um micro da rede local echo 1 > /proc/sys/net/ipv4/ip_forward iptables t nat A PREROUTING p tcp i eth1 --dport 22 j DNAT --to 192.168.1.10 iptables t nat A POSTROUTING d 192.168.1.10 j SNAT --to 192.168.1.1 Page 57

Forwarding de Portas É possível ainda indicar uma lista de portas (usando a opção m multiport), como em: # Redireciona um conjunto de portas echo 1 > /proc/sys/net/ipv4/ip_forward iptables t nat A PREROUTING p tcp i eth1 m multiport --dport 21,22,80 j DNAT --to-dest 192.168.1.10 iptables t nat A POSTROUTING d 192.168.1.10 j SNAT --to 192.168.1.1 Page 58

Exercícios Construa um firewall básico para uso em um servidor web, contendo as seguintes regras: Abrir para a interface de loopback Bloqueie um determinado IP (hosts específicos) Abra as portas referentes aos seguintes serviços usados: SSH, DNS, HTTP, HTTPS Bloqueie as conexões nas demais portas Garanta que o firewall permitira pacotes de conexões já iniciadas Bloqueie as portas UDP de 0 a 1023 Crie este script na forma de um arquivo executável Adicione este arquivo na inicialização do Linux Page 59

Exercícios (2) Você deve detectar possíveis rootkits em seu servidor. Para isso faça os seguintes passos: Instale o software chkrootkit Execute o software Armazene os resultados em um arquivo teste Faça a análise dos resultados e explique o que o software encontrou. Page 60