Introdução ao firewall
Mesmo as pessoas menos familiarizadas com a tecnologia sabem
que a internet não é um "território" livre de perigos. É por esta
razão que é importante conhecer e utilizar ferramentas de proteção para
computadores e redes. Este texto trata de uma das opções de segurança mais
importantes dos ambientes computacionais: o firewall.
(ALECRIM, 2013)
Firewall
Assim como a metáfora por trás do nome Parede de Fogo sugere, firewall é uma barreira de proteção que
ajuda a bloquear o acesso de conteúdo malicioso, mas sem impedir que os dados
que precisam transitar continuem fluindo. Em inglês, “firewall” é o nome
daquelas portas antichamas usadas nas passagens para as escadarias em prédios.
Na informática, os firewalls são aplicativos ou equipamentos
que ficam entre um link de comunicação e um computador, checando e filtrando
todo o fluxo de dados. Esse tipo de solução serve tanto para aplicações
empresariais quanto para domiciliar, protegendo não só a integridade dos dados
na rede mas também a confidencialidade deles.
(MACHADO, 2012)
Modo simplificado sobre Firewall
Para compreender melhor, você pode imaginar um firewall como
sendo uma portaria de um condomínio: para entrar, é necessário obedecer a
determinadas condições, como se identificar, ser esperado por um morador e não
portar qualquer objeto que possa trazer riscos à segurança; para sair, não se
pode levar nada que pertença aos condôminos sem a devida autorização.
Neste sentido, um firewall pode impedir uma série de ações
maliciosas: um malware que utiliza determinada porta para se instalar em um
computador sem o usuário saber, um programa que envia dados sigilosos para a
internet, uma tentativa de acesso à rede a partir de computadores externos não
autorizados, entre outros.
Firewalls mais avançados podem ir além, direcionando
determinado tipo de tráfego para sistemas de segurança internos mais
específicos ou oferecendo um reforço extra em procedimentos de autenticação de
usuários, por exemplo.
(ALECRIM, 2013)
Firewall em forma de softwares
Aplicações com a função de firewall já são parte integrante
de qualquer sistema operacional moderno, garantindo a segurança do seu PC desde
o momento em que ele é ligado pela primeira vez. Os firewalls trabalham usando
regras de segurança, fazendo com que pacotes de dados que estejam dentro das
regras sejam aprovados, enquanto todos os outros nunca chegam ao destino final.
Uma barreira de contenção contra conexões não autorizadas.
Além do firewall presente em cada máquina, é bastante comum
empresas usarem computadores específicos que agem como um “guardião” de uma
rede, filtrando todo o trânsito de dados entre os PCs locais e um ambiente mais
hostil, como a internet. Usando essa segunda opção, é possível até aplicar
regras exclusivas como: “Máquina X pode enviar arquivos por FTP à vontade,
todas as outras estão limitadas apenas a downloads”.
Vale lembrar que, em ambos os casos, todas essas regras
podem ser personalizadas à vontade, permitindo que o protocolo de segurança
seja modificado de acordo com as suas necessidades.
Outra medida muito usada são os filtros por portas e
aplicativos. Com eles, o firewall pode determinar, exatamente, quais programas
do seu computador podem ter acesso ao link de internet ou não.
As portas de comunicação também podem ser controladas da
mesma forma, permitindo que as portas mais “visadas” pelos malware sejam
bloqueadas terminantemente.
Firewall como hardware
Os firewalls em forma de hardware são equipamentos
específicos para este fim e são mais comumente usados em aplicações
empresariais. A vantagem de usar equipamentos desse tipo é que o hardware é
dedicado em vez de compartilhar recursos com outros aplicativos. Dessa forma, o
firewall pode ser capaz de tratar mais requisições e aplicar os filtros de
maneira mais ágil.
Boa parte dos roteadores de rede domiciliar disponíveis hoje
também conta com algum tipo de aplicação de firewall. Uma das mais básicas é o
controle sobre os computadores que estejam habilitados a se conectar na rede,
impedindo que as “sanguessugas” de plantão usem a sua Wi-Fi sem permissão.
(MACHADO, 2012)
A vantagem de um firewall de hardware é que o equipamento,
por ser desenvolvido especificamente para este fim, é preparado para lidar com
grandes volumes de dados e não está sujeito a vulnerabilidades que eventualmente
podem ser encontrados em um servidor convencional (por conta de uma falha em
outro software, por exemplo).
(ALECRIM, 2013)
Tipos de firewall
O trabalho de um firewall pode ser realizado de várias
formas. O que define uma metodologia ou outra são fatores como critérios do
desenvolvedor, necessidades específicas do que será protegido, características
do sistema operacional que o mantém, estrutura da rede e assim por diante. É
por isso que podemos encontrar mais de um tipo de firewall. A seguir, os mais
conhecidos.
As primeiras soluções de firewall surgiram na década de 1980
baseando-se em filtragem de pacotes de dados (packet filtering), uma
metodologia mais simples e, por isso, mais limitada, embora ofereça um nível de
segurança significativo.
Para compreender, é importante saber que cada pacote possui
um cabeçalho com diversas informações a seu respeito, como endereço IP de
origem, endereço IP do destino, tipo de serviço, tamanho, entre outros. O
Firewall então analisa estas informações de acordo com as regras estabelecidas
para liberar ou não o pacote (seja para sair ou para entrar na máquina/rede),
podendo também executar alguma tarefa relacionada, como registrar o acesso (ou
tentativa de) em um arquivo de log.
A transmissão dos dados é feita com base no padrão TCP/IP
(Transmission Control Protocol/Internet Protocol), que é organizado em camadas,
como explica este texto sobre endereços IP. A filtragem normalmente se limita
às camadas de rede e de transporte: a primeira é onde ocorre o endereçamento
dos equipamentos que fazem parte da rede e processos de roteamento, por
exemplo; a segunda é onde estão os protocolos que permitem o tráfego de dados,
como o TCP e o UDP (User Datagram Protocol).
Com base nisso, um firewall de filtragem pode ter, por
exemplo, uma regra que permita todo o tráfego da rede local que utilize a porta
UDP 123, assim como ter uma política que bloqueia qualquer acesso da rede local
por meio da porta TCP 25.
Filtragens estática e dinâmica
É possível encontrar dois tipos de firewall de filtragem de
pacotes. O primeiro utiliza o que é conhecido como filtros estáticos, enquanto
que o segundo é um pouco mais evoluído, utilizando filtros dinâmicos.
Na filtragem estática, os dados são bloqueados ou liberados
meramente com base nas regras, não importando a ligação que cada pacote tem com
outro. A princípio, esta abordagem não é um problema, mas determinados serviços
ou aplicativos podem depender de respostas ou requisições específicas para
iniciar e manter a transmissão. É possível então que os filtros contenham
regras que permitem o tráfego destes serviços, mas ao mesmo tempo bloqueiem as
respostas/requisições necessárias, impedindo a execução da tarefa.
Esta situação é capaz de ocasionar um sério enfraquecimento
da segurança, uma vez que um administrador poderia se ver obrigado a criar
regras menos rígidas para evitar que os serviços sejam impedidos de trabalhar,
aumentando os riscos de o firewall não filtrar pacotes que deveriam ser, de
fato, bloqueados.
A filtragem dinâmica surgiu para superar as limitações dos
filtros estáticos. Nesta categoria, os filtros consideram o contexto em que os
pacotes estão inseridos para "criar" regras que se adaptam ao
cenário, permitindo que determinados pacotes trafeguem, mas somente quando
necessário e durante o período correspondente. Desta forma, as chances de
respostas de serviços serem barradas, por exemplo, cai consideravelmente.
Firewall de aplicação ou proxy de serviços (proxy services)
O firewall de aplicação, também conhecido como proxy de
serviços (proxy services) ou apenas proxy é uma solução de segurança que atua
como intermediário entre um computador ou uma rede interna e outra rede,
externa - normalmente, a internet. Geralmente instalados em servidores potentes
por precisarem lidar com um grande número de solicitações, firewalls deste tipo
são opções interessantes de segurança porque não permitem a comunicação direta
entre origem e destino.
Perceba que em vez de a rede interna se comunicar
diretamente com a internet, há um equipamento entre ambos que cria duas
conexões: entre a rede e o proxy; e entre o proxy e a internet.
Perceba que todo o fluxo de dados necessita passar pelo
proxy. Desta forma, é possível, por exemplo, estabelecer regras que impeçam o
acesso de determinados endereços externos, assim como que proíbam a comunicação
entre computadores internos e determinados serviços remotos.
Este controle amplo também possibilita o uso do proxy para
tarefas complementares: o equipamento pode registrar o tráfego de dados em um
arquivo de log; conteúdo muito utilizado pode ser guardado em uma espécie de
cache (uma página Web muito acessada fica guardada temporariamente no proxy,
fazendo com que não seja necessário requisitá-la no endereço original a todo
instante, por exemplo); determinados recursos podem ser liberados apenas
mediante autenticação do usuário; entre outros.
A implementação de um proxy não é tarefa fácil, haja visto a
enorme quantidade de serviços e protocolos existentes na internet, fazendo com
que, dependendo das circunstâncias, este tipo de firewall não consiga ou exija
muito trabalho de configuração para bloquear ou autorizar determinados acessos.
Proxy transparente
No que diz respeito a limitações, é conveniente mencionar
uma solução chamada de proxy transparente. O proxy "tradicional", não
raramente, exige que determinadas configurações sejam feitas nas ferramentas
que utilizam a rede (por exemplo, um navegador de internet) para que a
comunicação aconteça sem erros. O problema é, dependendo da aplicação, este
trabalho de ajuste pode ser inviável ou custoso.
O proxy transparente surge como uma alternativa para estes
casos porque as máquinas que fazem parte da rede não precisam saber de sua
existência, dispensando qualquer configuração específica. Todo acesso é feito
normalmente do cliente para a rede externa e vice-versa, mas o proxy
transparente consegue interceptá-lo e responder adequadamente, como se a comunicação,
de fato, fosse direta.
É válido ressaltar que o proxy transparente também tem lá
suas desvantagens, por exemplo: um proxy "normal" é capaz de barrar
uma atividade maliciosa, como um malware enviando dados de uma máquina para a
internet; o proxy transparente, por sua vez, pode não bloquear este tráfego.
Não é difícil entender: para conseguir se comunicar externamente, o malware
teria que ser configurado para usar o proxy "normal" e isso
geralmente não acontece; no proxy transparente não há esta limitação, portanto,
o acesso aconteceria normalmente.
Inspeção de estados (stateful inspection)
Tido por alguns especialistas no assunto como uma evolução dos
filtros dinâmicos, os firewalls de inspeção de estado (stateful inspection)
trabalham fazendo uma espécie de comparação entre o que está acontecendo e o
que é esperado para acontecer.
Para tanto, firewalls de inspeção analisam todo o tráfego de
dados para encontrar estados, isto é, padrões aceitáveis por suas regras e que,
a princípio, serão usados para manter a comunicação. Estas informações são
então mantidas pelo firewall e usadas como parâmetro para o tráfego
subsequente.
Para entender melhor, suponha que um aplicativo iniciou um
acesso para transferência de arquivos entre um cliente e um servidor. Os
pacotes de dados iniciais informam quais portas TCP serão usadas para esta
tarefas. Se de repente o tráfego começar a fluir por uma porta não mencionada,
o firewall pode então detectar esta ocorrência como uma anormalidade e efetuar
o bloqueio.
Arquitetura dos firewalls
Você certamente percebeu que, a julgar pela variedade de
tipos, os firewalls podem ser implementados de várias formas para atender às
mais diversas necessidades. Este aspecto leva a outra característica importante
do assunto: a arquitetura de um firewall.
Quando falamos de arquitetura, nos referimos à forma como o
firewall é projetado e implementado. Há, basicamente, três tipos de arquitetura.
Arquitetura Dual-Homed Host
Nesta modalidade, há um computador chamado dual-homed host
que fica entre uma rede interna e a rede externa - normalmente, a internet. O
nome se deve ao fato de este host possuir ao menos duas interfaces de rede, uma
para cada "lado".
Perceba que não há outro caminho de comunicação, portanto,
todo o tráfego passa por este firewall, não havendo acesso da rede interna para
a rede externa (e vice-versa) diretamente. A principal vantagem desta abordagem
é que há grande controle do tráfego. A desvantagem mais expressiva, por sua
vez, é que qualquer problema com o dual-homed - uma invasão, por exemplo - pode
pôr em risco a segurança da rede ou mesmo paralisar o tráfego. Por esta razão,
o seu uso pode não ser adequado em redes cujo acesso à internet é essencial.
Este tipo de
arquitetura é bastante utilizado para firewalls do tipo proxy.
Screened Host
Na arquitetura Screened Host, em vez de haver uma única
máquina servindo de intermediadora entre a rede interna e a rede externa, há
duas: uma que faz o papel de roteador (screening router) e outra chamada de
bastion host.
O bastion host atua entre o roteador e a rede interna, não
permitindo comunicação direta entre ambos os lados. Perceba então que se trata
de uma camada extra de segurança: a comunicação ocorre no sentido rede interna
- bastion host - screening router - rede externa e vice-versa.
O roteador normalmente trabalha efetuando filtragem de
pacotes, sendo os filtros configurados para redirecionar o tráfego ao bastion
host. Este, por sua vez, pode decidir se determinadas conexões devem ser
permitidas ou não, mesmo que tenham passado pelos filtros do roteador.
Sendo o ponto crítico da estrutura, o bastion host precisa
ser bem protegido, do contrário, colocará em risco a segurança da rede interna
ou ainda poderá torná-la inacessível.
Screened Subnet
A arquitetura Screened Subnet também conta com a figura do
bastion host, mas este fica dentro de uma área isolada de nome interessante: a
DMZ, sigla para Demilitarized Zone - Zona Desmilitarizada.
A DMZ, por sua vez, fica entre a rede interna e a rede
externa. Acontece que, entre a rede interna e a DMZ há um roteador que
normalmente trabalha com filtros de pacotes. Além disso, entre a DMZ e a rede
externa há outro roteador do tipo.
Note que esta arquitetura se mostra bastante segura, uma vez
que, caso o invasor passe pela primeiro roteador, terá ainda que lidar com a
zona desmilitarizada. Esta inclusive pode ser configurada de diversas formas,
com a implementação de proxies ou com a adição de mais bastion hosts para lidar
com requisições específicas, por exemplo.
O nível segurança e a flexibilidade de configuração fazem da
Screened Subnet uma arquitetura normalmente mais complexa e, consequentemente,
mais cara.
Firewalls pessoais
O tópico sobre arquiteturas mostra as opções de configuração
de firewalls em redes. Mas, como você provavelmente sabe, há firewalls mais
simples destinados a proteger o seu computador, seja ele um desktop, um laptop,
um tablet, enfim. São os firewalls pessoais (ou domésticos), que DEVEM ser
utilizados por qualquer pessoa.
Felizmente, sistemas operacionais atuais para uso doméstico
ou em escritório costumam conter firewall interno por padrão, como é o caso de
distribuições Linux, do Windows 8 ou do Mac OS X. Além disso, é comum
desenvolvedores de antivírus oferecerem outras opções de proteção junto ao
software, entre elas, um firewall.
Mas, para quem procura uma solução mais eficiente e que
permita vários tipos de ajustes, é possível encontrar inúmeras opções, muitas
delas gratuitas. Usuários de Windows, por exemplo, podem contar com o
ZoneAlarm, com o Comodo, entre outros.
Independente de qual seja o seu sistema operacional, vale a
pena pesquisar por uma opção que possa atender às suas necessidades.
Limitações dos firewalls
Lendo este texto, você já deve ter observado que os
firewalls têm lá suas limitações, sendo que estas variam conforme o tipo de
solução e a arquitetura utilizada. De fato, firewalls são recursos de segurança
bastante importantes, mas não são perfeitos em todos os sentidos.
Resumindo este aspecto, podemos mencionar as seguintes limitações:
Um firewall pode oferecer
a segurança desejada, mas comprometer o desempenho da rede (ou mesmo de um
computador). Esta situação pode gerar mais gastos para uma ampliação de
infraestrutura capaz de superar o problema;
A verificação de
políticas tem que ser revista periodicamente para não prejudicar o
funcionamento de novos serviços;
Novos serviços ou
protocolos podem não ser devidamente tratados por proxies já implementados;
Um firewall pode
não ser capaz de impedir uma atividade maliciosa que se origina e se destina à
rede interna;
Um firewall pode
não ser capaz de identificar uma atividade maliciosa que acontece por descuido
do usuário - quando este acessa um site falso de um banco ao clicar em um link
de uma mensagem de e-mail, por exemplo;
Firewalls precisam
ser "vigiados". Malwares ou atacantes experientes podem tentar
descobrir ou explorar brechas de segurança em soluções do tipo;
Um firewall não
pode interceptar uma conexão que não passa por ele. Se, por exemplo, um usuário
acessar a internet em seu computador a partir de uma conexão 3G (justamente
para burlar as restrições da rede, talvez), o firewall não conseguirá
interferir.
Finalizando
Como você pôde observar, firewalls são soluções importantes
de segurança - não é por menos que surgiram na década de 1980 e são amplamente
utilizados até os dias de hoje. Mas, tal como evidencia o tópico sobre
limitações, um firewall não é capaz de proteger totalmente uma rede ou um
computador, razão pela deve ser utilizado em conjunto com outros recursos, como
antivírus, sistemas de detecção de intrusos, VPN (Virtual Private Network) e
assim por diante.
O pensamento que se deve ter é o de que o firewall é parte
da segurança, não a segurança em si, da mesma forma que acontece em um prédio,
por exemplo: muros, portões, câmeras de vigilância e alarmes fazem a segurança
de maneira conjunta, havendo menos eficiência se apenas um ou outro item for
utilizado.
(ALECRIM, 2013)
Referências
ALECRIM, E. O que é
firewall? - Conceito, tipos e arquiteturas. Disponível em:
<http://www.infowester.com/firewall.php>. Acesso em: 2 dez. 2016.
MACHADO, J. O que é firewall? Disponível em:
<https://www.tecmundo.com.br/firewall/182-o-que-e-firewall-.htm>. Acesso
em: 2 dez. 2016.
Comentários
Postar um comentário