Buscar

Estudo comparativo entre dois firewall

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 47 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

FACULDADE ESTÁCIO PARAÍBA
CURSO DE GRADUAÇÃO EM REDES DE COMPUTADORES
UM ESTUDO COMPARATIVO ENTRE DOIS FIREWALLS PARA SERVIDORES LINUX
JOÃO PESSOA- PB 
2014
MOISÉS DE BRITO SILVA
UM ESTUDO COMPARATIVO ENTRE DOIS FIREWALLS PARA SERVIDORES LINUX
Trabalho de Conclusão de Curso apresentado à Coordenação do Curso Superior de Tecnologia em Redes de Computadores como requisito para obtenção do grau de Tecnólogo em Redes de Computadores.
Orientador: Prof. Esp. Silvio Lucas
JOÃO PESSOA- PB 
2014
MOISÉS DE BRITO SILVA
UM ESTUDO COMPARATIVO ENTRE DOIS FIREWALLS PARA SERVIDORES LINUX
Trabalho de Conclusão de Curso apresentado à Coordenação do Curso Superior de Tecnologia em Redes de Computadores como requisito para obtenção do grau de Tecnólogo em Redes de Computadores.
Orientador: Prof. Esp. Silvio Lucas
João Pessoa - PB, ____ de Dezembro de 2014.
BANCA EXAMINADORA
Prof. Silvio Lucas
Orientador
Prof. Renato Abreu
Avaliador
Prof.ª Vivianne Braga
Avaliadora
AGRADECIMENTOS
Agradeço, primeiramente, a Deus, por me dá a capacidade de construir este trabalho;
À minha família, aos meus pais e à irmã, pela paciência que tiveram comigo durante a elaboração deste trabalho;
À faculdade Estácio, pela oportunidade e condições que me foram ofertadas, adquirindo conhecimento de qualidade;
Ao professor Silvio, que tanto nos ajudou e nos incentivou para concluir este curso;
Aos amigos, em geral, que de forma direta ou indireta contribuíram com este projeto.
SILVA, Moisés de Brito. UM ESTUDO COMPARATIVO ENTRE DOIS FIREWALLS PARA SERVIDORES LINUX. p.(46.) Faculdade Estácio Paraíba, João Pessoa, Paraíba.
 RESUMO 
Este trabalho busca mostrar as diferenças entre duas ferramentas que compõem um sistema de segurança de redes em uma empresa. Sendo elas o ConfigServer & Firewall (CSF) e a outra Advanced Policy Firewall (APF), ambas possuem muita coisa em comum, mas iremos mostrar algumas diferenças existentes que podem ser decisivas na hora da escolha de uma das ferramentas. Definimos alguns quesitos para analisar as ferramentas, sendo um deles a eficácia da ferramenta, nesse quesito vimos que o modo que uma se comporta no momento de um ataque é diferente da outra. Outro ponto que analisamos foi a facilidade de gerenciamento, vimos que são semelhantes, mas uma tem mais opções que a outra, tornando o gerenciamento mais prático para o administrador. É de suma importância salientar que apenas o uso de uma das ferramentas como proteção do servidor, não é suficiente, sendo necessária a utilização de outros componentes de segurança, para que de fato se preserve a confidencialidade, integridade e disponibilidade da informação.
Palavras-chave: firewall, segurança, iptables, proteção
ABSTRACT
This work aims to show the differences between two tools that make up a network security system in a company. Being them the ConfigServer & Firewall (CSF) and the other Advanced Policy Firewall (APF), both have a lot in common, but we will show some differences that can be decisive when choosing one of the tools. We define some of the tools to examine questions, one being the effectiveness of the tool in this regard that the saw so that a behaves when an attack is different from another. Another point we reviewed was the ease of management, we have seen that are similar, but one has more options than the other, making the most practical management for the administrator. It is extremely important to note that only the use of one of the tools and server protection is not enough, requiring the use of other security components, so that in fact to preserve the confidentiality, integrity and availability of information.
LISTA DE ILUSTRAÇÕES
Figura 1 - Total de incidentes reportados ao CERT por ano	14
Figura 2 - Handshake em três vias do TCP e SYN flooding.	18
Figura 3 - Firewall separando a rede interna da rede externa.	22
Figura 4 - Arquitetura Dual homed Host	26
Figura 5 - Arquitetura Screened Host	27
Figura 6 - Arquitetura Screened subnet	28
Figura 7 - Cenário da rede de testes	30
Figura 8: Lista de servidores virtuais compatíveis	34
Figura 9: Instalado o APF	34
Figura 10: Instalando o CSF	34
Figura 11: Exemplo de Log do CSF	37
Figura 12: Exemplo de Log do CSF, arquivo messages	38
Figura 13: Exemplo de Log do APF	38
Figura 14: 1ª Simulação de ataque SYNFLOOD no CSF	40
Figura 15: Bloqueio do ataque realizado pelo CSF	40
Figura 16: 1ª Simulação de ataque SYNFLOOD no APF	41
Figura 17: Bloqueio realizado pelo APF	41
Figura 18: 2ª simulação de ataque SYNFLOOD ao CSF	41
Figura 19: Bloqueio do 2º ataque no CSF	42
Figura 20: 2ª simulação de ataque SYNFLOOD no APF	42
Figura 21: DROP realizado pelo APF no ataque	42
Figura 22: Primeiro resultado da varredura de portas no CSF	43
Figura 23: Primeiro resultado da varredura de portas no APF	43
Figura 24: Log do bloqueio Port scan CSF	44
Figura 25: Log do bloqueio Por scan do APF	44
LISTA DE QUADROS
Quadro 1: Configuração das máquinas virtuais	30
Quadro 2: Lista de sistemas operacionais compatíveis	33
Quadro 3: Lista de parâmetros de configuração do CSF	35
Quadro 4: Lista de parâmetros de configuração do APF	36
Quadro 5: Lista de comandos do CSF	36
Quadro 6: Lista de comandos do APF	37
Quadro 7: Parâmetros de configuração da proteção contra port scan	42
LISTA DE ABREVIATURAS E SIGLAS
CSF		- Configserver Security & Firewall 
APF 		- Advanced Policy Firewall
CERT 	- Centro de Estudos, Resposta e Tratamento de Incidentes de Segurança no Brasil 
TI 		- Tecnologia da Informação
IP		- Internet Protocol 
DoS		- Denial-Of-Service
DDoS		- Distributed Denial-Of-Service
TCP		- Transmission Control Protocol
SQL		- Structured Query Language
XSS		- Cross-Site Scripting
HTML		- Hypertext Markup Language
DOM		- Document Object Model
VPN		- Virtual Private Network
UDP		- User Datagram Protocol
ICMP		- Internet Control Message Protocol
FTP		- File Transfer Protocol
DMZ		- Demilitarized Zone
VM		- Virtual Machine
IDS		- Intrusion Detection System
SSH		- Secure Shell
RAB		- Reactive Address Blocking
SUMÁRIO
1.	INTRODUÇÃO	11
1.1 JUSTIFICATIVA	11
1.2 OBJETIVOS	12
1.2.1 Geral	12
1.2.2 Específicos	12
2.	REFERÊNCIAL TEÓRICO	13
2.1 SEGURANÇA EM REDES DE COMPUTADORES	13
2.1.1 Conceitos de segurança	13
2.1.2 Segurança das redes nos dias atuais	14
2.1.3 Principais tipos de ataques contra as redes	15
2.1.4 Mecanismos de defesa	20
2.2 FIREWALL	21
2.2.1 Definição e Função	21
2.2.2 Tipos de Firewall	22
2.2.3 Arquitetura de Firewall	26
3.	METODOLOGIA	29
4.	ANÁLISE DOS RESULTADOS	31
4.1 SOBRE AS FERRAMENTAS	31
4.1.1 Configserver Security & Firewall (CSF)	31
4.1.2 Advanced Policy Firewall (APF)	32
4.2 IMPLEMENTAÇÃO DAS FERRAMENTAS	33
4.3 GERENCIAMENTO DAS FERRAMENTAS	36
4.4 REGISTROS EM LOGS	37
4.5 SUPORTE A FERRAMENTA	38
4.6 EFICÁCIA DAS FERRAMENTAS	39
4.6.1 Simulação de Ataque SYNFLOOD	39
4.6.2 Teste de varredura de portas (Port Scan)	42
5.	CONCLUSÃO	45
6.	REFERÊNCIAS	46
INTRODUÇÃO
Nos últimos anos, observa-se o grande crescimento do uso da internet, sendo um fator importante para este crescimento o uso das redes sociais que surgiram, além disso, o número de blogs e sites também tem aumentado, empresas tem buscado divulgar seus produtos e até mesmo comercializar, na internet.
Um dos setores que está lucrando bastante com tal crescimento são empresas de hospedagem de sites. Várias novas empresas têm surgido e as que já estão no mercado, aumentam o seu parque tecnológico. Mas, adquirir um novo servidor e instalar os softwares necessários para hospedar um site e vender esses serviços para clientes exige um cuidado maior, pois é necessário se preocupar com a segurança desses servidores, afinal, informações de clientes estarão em jogo e a perda dessesdados poderá acarretar sérios prejuízos para ambos os lados.
Desse modo, as empresas buscam obter a segurança de informações nos computadores pessoais de seus funcionários e de suas empresas, mas isso não é tarefa fácil porque sempre surgem novas vulnerabilidades e diferentes formas de ataques são descobertas. 
Assim, pessoas de diferentes setores profissionais como analistas, governos, empresários, precisam manter um servidor seguro, buscando constantemente atualizações dos mecanismos de segurança de seu parque tecnológico. 
1.1 Justificativa 
Diante do desafio das empresas protegerem seus servidores de diferentes tipos de ataques é que, atualmente, vem sendo desenvolvidas diversas ferramentas de defesa, sendo que umas complementam outras, além daquelas que já implantaram um mecanismo de defesa completo. 
A motivação de desenvolver esse projeto, foi pelo fato de existir algumas ferramentas de firewall que de forma simples, implementa segurança no servidor, tornando a vida do administrador da rede local mais fácil, isso considerando uma empresa que possui um grande parque tecnológico, onde há vários servidores a serem gerenciados, a exemplo disso, citamos as empresas de hospedagem de sites, pois possuem dezenas de servidores, contendo diversos sites hospedados. Diante disso, é necessário conhecer as ferramentas que mais irão se adequar a politica de segurança da empresa.
Neste trabalho foi realizado um estudo comparativo entre dois firewalls, o ConfigServer Security e Firewall (CSF) e o Advanced Policy Firewall (APF), partes importantes em um sistema de segurança da informação, observando-se os pontos que elas têm em comum e os pontos que diferem uma da outra.
1.2 Objetivos
1.2.1 Geral
Realizar um estudo comparativo entre a ferramenta CSF (ConfigServer Security & Firewall) e a ferramenta APF (Advanced Policy Firewall), componentes principais de um sistema de segurança da informação.
1.2.2 Específicos 
Apresentar conceitos de segurança da informação; 
Descrever a ferramenta Firewall, mostrando suas arquiteturas e seus tipos;
Mostrar as principais diferenças e comportamento das ferramentas CSF e APF.
2 REFERÊNCIAL TEÓRICO
2.1 Segurança em redes de computadores
2.1.1 Conceitos de segurança
Vive-se em um período no qual o uso da internet cresceu bastante. Pessoas a utilizam das mais diversas maneiras como, por exemplo, para resolver problemas cotidianos, para conhecer novas pessoas, no auxilio do ambiente de trabalho, etc. A internet, junto com outras tecnologias, trouxe mais mobilidade e flexibilidade para as empresas e para as pessoas de uma forma geral.
Na época de criação das redes de computadores, não havia tanta preocupação com a proteção das informações. De uma forma geral, sabe-se que a troca de informações neste período era pouca, mas com o passar do tempo, a preocupação com a segurança das informações trocadas nas redes tornou-se mais que uma necessidade. É necessário que essas informações trafeguem de forma confiável (íntegra) e que os meios utilizados para o armazenamento e encaminhamento de informações estejam sempre disponíveis.
Para Oliveira (apud BEAL, 2005), o processo de proteção da informação das ameaças a sua integridade, disponibilidade e confidencialidade, caracteriza-se como Segurança Informação.
Para que essa troca de informações ocorra de forma segura, Kurose (2010, p. 20, grifo nosso) relata algumas propriedades desejáveis:
Confidencialidade. Somente o remetente e o destinatário devem poder entender o conteúdo da mensagem transmitida. Autenticação do ponto final. O remetente e o destinatário precisam confirmar a identidade da outra parte envolvida na comunicação – confirmar que a outra parte realmente é que alega ser. Integridade de mensagem. Mesmo que o remetente e o destinatário consigam se autenticar reciprocamente, eles também querem assegurar que o conteúdo de sua comunicação não seja alterado, por acidente ou por má intenção, durante a transmissão.
A disponibilidade também é algo essencial, trata-se de manter os serviços sempre acessíveis ao usuário, seja qual for o momento.
A proteção da informação também envolve outros aspectos que devem ser considerados, como aspectos humanos, jurídicos, de negócios e processuais. Todos esses citados, definem a estratégia de segurança de uma empresa. Nakamura (2007, p. 44) destaca a importância da segurança de redes nas organizações:
[...] a segurança de redes, que pode prover grande parte da manutenção da disponibilidade, integridade e confidencialidade das informações, significa, na realidade, muito mais do que a proteção contra hackers, maus funcionários ou vírus. A segurança significa permitir que as organizações busquem seus lucros, os quais são conseguidos por meio de novas oportunidades de negócios, que são resultados da flexibilidade, facilidade e disponibilidade dos recursos de informática. Para tanto a segurança significa a capacidade de prevenção, monitoração e resposta a um eventual incidente. Portanto, a segurança deve ser considerada não apenas uma proteção, mas o elemento habilitador dos negócios da organização.
	Nos próximos tópicos serão tratados os diversos tipos de ataques existentes, que comprometem a segurança da informação. O CERT.br, grupo que é responsável por tratar incidentes de segurança em computadores conectados a internet brasileira, mostra um aumento no número de incidentes ocorridos no ano de 2012, com 466.029 incidentes reportados, como mostra a seguir (Figura 1): 
Figura 1 - Total de incidentes reportados ao CERT por ano
Fonte: CERT.br[1: Imagem retirada de dite. Disponível em: http://www.cert.br/stats/incidentes/. Acessado em Out. 2014.]
2.1.2 Segurança das redes nos dias atuais
	A segurança da informação vem evoluindo conforme às necessidade geradas pelas novas tecnologias. Estas têm sido criadas de forma rápida, pois até alguns anos atrás ter um desktop era um sonho de todos, não havia redes sociais, e só quem realmente tinha um computador era pessoas que possuíam condições financeiras, mas o tempo passou e as tecnologias evoluíram, os seus preços tornaram-se mais acessíveis, a internet se expandiu, redes sociais surgiram, cada vez mais pessoas conectadas na rede, através de diversos meios.
	Com todas essas evoluções, as pessoas têm deixado o desktop de lado e usado meios que oferecessem mais mobilidade, como por exemplo, smartphones, tablets. Usam esses dispositivos para os mais diversos fins, acessar webmail, redes sociais, realizar transações, etc. Muitos ainda não têm a preocupação com a segurança das informações que são trocadas a cada instante.
	Com o avanço da tecnologia, novas formas de ataques surgiram, as visões de muitos atacantes mudaram, antes era apenas para destruir um sistema, hoje é a de roubar dados, seja de pessoas comuns ou de empresas. O que o atraem para essas novas tecnologias é a quantidade de informações que são trocadas, muitas pessoas resolvem tudo usando o smartphone ou o tablets.
	Bem verdade é que o ser humano só passa a se preocupar com a segurança quando ocorre algum incidente, empresas investem mais em segurança apenas quando tem seus dados acessados indevidamente ou perdidos, causando para si um enorme prejuízo.
	É necessário que empresas e usuários comuns, tratem a segurança da informação como algo essencial, tem que pensar o valor que aquela informação possui para si ou para a empresa, e também ter a consciência do impacto que trará, caso ocorra algum incidente com aquela informação. Quando isso ocorrer, para os negócios trará lucros, pois haverá uma confiança maior por parte dos clientes.
	Algumas atitudes simples podem fazer a diferença e trazer mais proteção para quem usa dispositivos móveis, como por exemplo, utilizar um antivírus, assim como nos computadores desktops, atacantes também usam meios para infectar o aparelho. Um outro problema está na redes wifi, se conectar em redes públicas a qual você não conhece é um enorme perigo, principalmente para empresas que usam os aparelhos como ferramentade trabalho, para isso, existem as redes 3G e atualmente o 4G. 
2.1.3 Principais tipos de ataques contra as redes
Antes de se falar sobre os principais tipos de ataques as redes de computadores, é necessário compreender alguns conceitos de vulnerabilidades, ameaças, impacto e o risco.
Sêmola (2001, p.1,grifo do autor) descreve os conceitos de vulnerabilidade, ameaça e impacto:[2: Disponível em: http://www.semola.com.br/disco/Coluna_IDGNow_31.pdf. Acesso em 25/11/2014]
Ameaça atitude ou dispositivo com potencialidade para explorar e provocar danos à segurança da informação, atingindo seus conceitos: Confidencialidade, Integridade e Disponibilidade. Vulnerabilidade Evidência ou fragilidade que eleva o grau de exposição dos ativos que sustentam o negócio (infraestrutura física, tecnologia, aplicações, pessoas e a própria informação), aumentando a probabilidade de sucesso pela investida de uma ameaça. Impacto Resultado da ação bem sucedida de uma ameaça ao explorar as vulnerabilidades de um ativo, atingindo assim um ou mais conceitos da segurança da informação.
		Um atacante utiliza de diversas técnicas ou meios para conseguir obter uma informação, tornar um sistema indisponível. A seguir, serão descritas algumas das principais técnicas utilizadas.
Engenharia social – Nessa técnica, o atacante busca conquistar a confiança da vitima ou se passar por alguém ou algo que ela confia, para obter informações importantes capazes de comprometer a segurança da informação da empresa. Esse tipo de ataque pode ser feito de diversas formas, como por exemplo, uma ligação telefônica, um envio de e-mail se passando por um técnico responsável de um determinado setor, um administrador, um diretor, ou seja, explora a confiança que existe entre essas pessoas. Devido a isso, essa técnica tem sido muito utilizada e bem sucedida. É necessário a tomada de medidas para assegurar a autenticidade, seja por meio de senhas, assinatura, por exemplo. (NAKAMURA, 2007, p.85)
Informações Livres - Hoje em dia é fácil encontrar informações na internet sobre uma empresa. Funcionários muitas vezes disponibilizam todas as informações do cargo que ocupa no seu trabalho, em redes sociais, muitas vezes deixando um prato cheio para um atacante. Outro problema que vemos está no fato de muitos analistas ou técnicos de TI, solicitarem ajuda em fóruns de TI sobre um problema qualquer da rede, por exemplo, anexam imagens onde está sendo informados os nomes de servidores, o IP do servidor, e muitas outras informações. 	De uma forma geral, essa técnica, utilizada por muitos atacantes, tem como objetivo buscar informações importantes sobre uma empresa, que são deixadas na internet por funcionários ou usuários. (NAKAMURA, 2007, p.88)
Packet Sniffing – É uma técnica que consegue capturar dados ou informações valiosas de pacotes que estão trafegando na rede. Há diversos softwares que realizam essa tarefa, como o tcpdump, wireshark. Com a interceptação, é possível capturar informações importantes de uma rede, por exemplo, senhas, e-mails, são facilmente capturados quando não são tomadas medidas de segurança na rede. O uso de criptografia é uma solução para esse problema, dados criptografados dificilmente conseguem ser capturados pelos sniffers. (NAKAMURA, 200, p.88)
Port scanning – Técnica que consiste em realizar verificações nos serviços disponíveis em um servidor, é exibidas às portas dos serviços que se encontram abertas e as que se encontram fechadas. Essa técnica é utilizada tanto pelo administrador de rede, para que possa proteger mais o seu servidor, como também por atacantes, em busca de uma vulnerabilidade, uma “brecha” para invadir um servidor ou torna-lo indisponível. O programa mais conhecido para realizar essa tarefa é o nmap, é utilizado para realizar auditorias em firewall, é capaz de mostrar se o sistema possui falhas que possam ser exploradas. O nmap utiliza de diversas técnicas de scanning, como, por exemplo, o TCP connect, TCP SYN, entre outras. (NAKAMURA, 2007, p.91)
IP spoofing – Nessa técnica, o atacante falsifica o seu IP real, se passando por outro, cujo objetivo é a de não ser encontrado. (Nakamura, 2007, p.103). Através de uma ferramenta, o atacante altera o cabeçalho dos pacotes, adicionando IPs falsos, explorando assim a relação de confiança entre as máquinas. Essa técnica é utilizada nos ataques DDoS, pois torna mais difícil a detecção da origem do ataque. Para prevenir, pode-se utilizar um filtro de entrada na interface externa da rede, realizando assim bloqueios de tentativas de conexões externas, cujo IP seria o mesmo da rede interna. (NAKAMURA, 2007)
SYN Flooding – Uma conexão TCP é feito em três tempos, também chamado de three ways handshake, como mostra na Figura 2, onde um cliente envia o pedido de conexão ao servidor (SYN), o servidor ao receber esse pedido envia uma confirmação de que recebeu o pedido (SYN/ACK), o cliente recebe a confirmação do servidor e retorna com uma outra confirmação (ACK+1), estabelecendo assim a conexão. O ataque SYN Flooding explora esse mecanismo, enviando vários pedidos de conexão (SYN), fazendo com que o servidor não consiga responder a todos os pedidos, tornando os serviços indisponíveis. Para evitar ataques desse tipo, é necessário realizar uma comparação das taxas de conexão e o número de conexões abertas. (NAKAMURA, 2007).
Figura 2 - Handshake em três vias do TCP e SYN flooding.
Fonte: Nakamura, 2007, p.105
Ataques coordenados ou DDoS - 	É um tipo de ataque bastante utilizado nos últimos anos, vimos nas redes sociais, em telejornais, notícias que informam sobre grandes empresas, governos que tiveram os seus sites fora do ar. Muitas das vezes ocorre por motivos de protestos, por exemplo.
Esse ataque consiste no fato de um hacker utilizar diversos computadores, espalhados pelo mundo que, de alguma forma foram contaminados, tornando-se computadores zombies, para acessarem ao mesmo tempo um determinado site ou sistema, devido a grande quantidade de requisições, o servidor não consegue responder a todos, tornando o serviço indisponível. A vítima diante dessa situação, muitas das vezes não sabe o que fazer, ficando praticamente indefesa, onde na maioria das vezes não consegue descobrir a origem dos ataques.[3: NAKAMURA, 2007,p.116]
O funcionamento desse ataque é simples, um atacante define os computadores mestres, que por sua vez tem o controle sobre milhares de computadores infectados, são esses que realizam o ataque a vítima. [4: Idem ]
Evitar esse tipo de ataque não é uma tarefa fácil, ainda não existe uma solução definitiva para prevenir esse tipo de ataque, o que pode ser feito é configurar bem o sistema de segurança dos servidores, utilizar ferramentas que consiga realizar filtragens.[5: Id,2007, p.119]
SQL Injection – De certa forma é um ataque simples que pode trazer grandes prejuízos. Funciona com a execução de comandos SQL em formulários de sites como sistemas de login, que devido a falhas das aplicações, concede acesso ao atacante. A combinação utilizada para conseguir o acesso é:[6: Informações desse texto retirado de site. Disponível em: <http://www.devmedia.com.br/sql-injection-em-ambientes-web/9733>. Acesso em 08/11/2014.]
Login: “nesse campo digita-se qualquer coisa”
Senha: ' OR '1'='1
	Esses parâmetros na senha informam ao banco de dados que não importa o que foi digitado no login e na senha, sempre será verdadeiro, permitindo o acesso do atacante ao banco de dados. O que ocorre por trás é o seguinte:[7: Idem ][8: Idem ]
Sistema de autenticação:
SELECT * FROM tabela_usuarios WHERE login = 'campo_login' AND senha = 'campo_senha'
Ao inserir os parâmetros citados acima:
SELECT * FROM tabela_usuarios WHERE login = ‘qualquer valor' AND senha =’ ' OR '1'='1'	
A forma de prevenir-se contra esse tipo de ataque é configurar corretamente o servidor de banco de dados, adicionando parâmetros que dê mais segurança no momento da autenticação do usuário.
Cross-Site Scripting (XSS) – Um tipo de ataque que tem sido muito praticado. Consisteem inserir script malicioso em páginas web, quando um usuário mal informado clica no link, o script é executado. É uma ameaça que explora vulnerabilidades de aplicações web, o navegador executa o script por achar que é confiável, com isso é possível acessar os cookies e tokens de sessão. Existem alguns tipos de XSS como o persistente (stored), que armazena o código malicioso no servidor web como um banco de dados, por exemplo, há também o refletido (não persistente) e os baseados em DOM, nesse último, explora vulnerabilidades contidas na interpretação de código HTML pelo navegador do usuário. (OWASP, 2014).[9: Informações retiradas de site. Disponível em:< https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)>. Acesso em 08/11/2014]
Buffer overflow – Esse tipo de ataque explora bugs de implementação, nos quais o controle de buffer não é feito adequadamente. Com isso, o atacante é capaz de enviar mais dados do que é o buffer suporta. Os dados podem ser perdidos ou excluídos e, quando isso ocorre, o atacante pode reescrever no espaço interno da pilha do programa, para fazer com que comandos arbitrários sejam executados. (NAKAMURA, 2007). 
2.1.4 Mecanismos de defesa 
	Viu-se anteriormente à quantidade de formas de ataques que um sistema está sujeito a sofrer. Não se pode imaginar o momento que um servidor sofrerá ataque e caso não tome as medidas corretas de prevenção, quando isso ocorrer terá grandes prejuízos.
	Da mesma forma que há uma diversidade de tipos de ataques, para cada um sempre tem uma solução de correção ou prevenção. Um sistema de segurança não é feito por uma única ferramenta, é necessário um conjunto de ferramentas que trabalhem juntas, a fim de proteger a informação.
	Os mecanismos de defesa incluem a construção de uma política de segurança, onde serão definidas as permissões de acesso, os procedimentos a serem realizados para executar determinada tarefa, os direitos e deveres de cada usuário da empresa, entre outras informações importantes. É algo que não pode ser dispensado em sistema de segurança.
	O uso de bons antivírus nos computadores dos funcionários é algo muito importante, necessário que a empresa invista em bons softwares, pois será um dos primeiros pontos que um atacante irá explorar, enviando vírus e outras pragas virtuais, em busca de informações. Necessário assim mantê-lo sempre atualizado e ativo.
	No que se refere a servidores, é imprescindível a utilização de firewall, mas é necessário que, o administrador ou o analista de segurança, configure corretamente esse sistema, pois será por ele que todo o trafego da rede irá passar. Na próxima seção será descrito mais detalhadamente o funcionamento e os tipos de firewall existentes.
	Para garantir a confidencialidade e integridade das informações que a todo tempo são trocadas, pelos mais diversos meios que a empresa utiliza, é necessário o investimento em criptografia, autenticação, utilização de VPN, que são outros mecanismos de defesa disponíveis. 
2.2 Firewall
2.2.1 Definição e Função
É notável o crescimento do uso da internet nos últimos anos, seja por meio de computadores ou dispositivos móveis, cada vez mais empresas, governos têm buscado disponibilizar documentações, produtos e serviços na web, isso tem levado a uma preocupação quanto à segurança dessas informações e também dos usuários que procuram essas informações. Com isso, há sempre a necessidade de melhorar os mecanismos de defesas existentes, criando novas formas de defesa. O firewall tem sido um dos componentes desse sistema de segurança, que evoluíram, é um dos itens de segurança indispensável para uma rede, mas não é o componente que irá fornecer total segurança a rede, aos servidores ou as aplicações. (NAKAMURA, 2007)
Há várias definições para firewall. Segundo Chapman (2000, p. 68, tradução nossa). “firewall é um componente ou conjunto de componentes que restringe o acesso entre uma rede protegida e a internet, ou entre outros conjuntos de redes.”
	Pode-se definir firewall (Figura 3) como um ou conjunto de componentes e funcionalidades, que controla, autentica, registra em logs todo o tráfego que passa entre duas redes, dessa forma, protegendo uma rede confiável, rede local, de uma rede não confiável, a internet. (NAKAMURA, 2007). Utiliza-se de diversos meios como filtros, que serão abordados mais a frente, para realizar tais tarefas.
	De forma objetiva, a função do firewall é proteger a rede interna dos perigos da internet ou rede externa, impede que esses perigos se espalhem na rede local. O firewall controla a entrada e saída de pacotes da rede, realizando as autenticações e certificando de que esse tráfego não oferece risco, registrando toda essa movimentação em logs, o que pode ser realizado auditorias posteriormente.
	Mas, para que um firewall funcione bem, é necessário que o administrador o configure corretamente, de acordo com o que necessita a sua rede, um dos métodos utilizados é a de fechar todas as portas, bloquear tudo e liberar o tráfego apenas do que é necessário. Tal forma pode ser ideal para algumas redes, mas para outras não e é importante que o administrador da rede tenha esse conhecimento. 
Figura 3 - Firewall separando a rede interna da rede externa.
Fonte: ZWICKY, 2000, p.20
2.2.2 Tipos de Firewall
	Nos últimos anos, as redes de computadores tem se tornado cada vez mais complexas, novas funcionalidades são adicionadas e essas funcionalidades exigem proteção. Sendo assim, apesar de ser uma tecnologia antiga, o firewall tem passado por processos de evolução, sendo incorporadas a ele novas funções. (NAKAMURA, 2007).
	Nesta seção, iremos falar sobre as principais tecnologias de firewall, sendo elas: filtros de pacotes, filtros de pacotes baseado em estado, proxy, firewall individual ou pessoal.
2.2.3 Filtro de Pacotes
	A tecnologia de filtro de pacotes tem como função analisar o cabeçalho dos pacotes que trafegam entre a rede externa e a rede interna, possui o poder de decisão de proibir ou permitir que esse pacote trafegue. De acordo com Chapman (2000, p. 69, tradução nossa), as informações que são verificadas são:
Endereço de origem e de destino;
Protocolo (TCP, UDP, ICMP);
Porta de origem e de destino;
Flags binárias do TCP (SYN, SYN-ACK e ACK);
Tamanho do pacote
O tipo de mensagem ICMP.
Pelo fato do UDP não ser orientado a conexão, a filtragem de conexões desse protocolo são diferentes do TCP, que analisam o sentindo da conexão de acordo com as flags, sendo assim o UDP analisa apenas a porta de origem e porta de destino. O ICMP também é diferente, como o UDP, não há flags de sentido, são analisados o tipo ICMP, código ICMP e o Checksum.[10: NAKAMURA, 2007, p.229]
Filtro de pacotes funciona na camada de rede e de transporte, isso torna a sua implantação simples e flexível, além de ser barato. Mas falando de segurança, o filtro de pacote não garante uma boa segurança, pois os pacotes podem ser falsificados intencionalmente, burlando as regras de filtragem.[11: Ibid., p. 230]
Além dessa desvantagem, o filtro de pacotes possui outros pontos negativos, como limitação com relação a logs, compatibilidade com alguns serviços como FTP, X11, RPC e H.323, a implementação para esses serviços torna-se complexa, pelo fato de usarem portas dinâmica. A fragmentação de pacotes é um outro problema para esse tipo de firewall, pois podem passar pelas regras, onde é validado apenas o primeiro pacote, o restante passam sem serem verificados, gerando uma vulnerabilidade que pode ser explorada.[12: Ibid., p. 230]
Além das desvantagens já citadas acima, a tecnologia de filtro de pacotes pode não ser recomendado para ambientes complexos, isso porque dificulta o seu gerenciamento, outro ponto negativo dessa tecnologia é a sua vulnerabilidade a ataques como o IP spoofing.[13: Ibid., p. 231]
Essa tecnologia possui algumas vantagens também, como baixo overhead, é barato, simples, flexível, além de ser transparente para o usuário.[14: Ibid., p. 230]
2.2.4 Filtro de pacotes baseado em estadosFiltros de pacotes baseado em estado é uma evolução da tecnologia filtro de pacotes. Filtros baseado em estado, além de analisar o cabeçalho do pacote, toma as decisões baseado em uma tabela, tabela essa que possui informações sobre os estados de todas as conexões. A mesma é ganha uma nova regra quando o pacote inicial é aceito, os outros que vier logo após, passam por filtragens utilizando a tabela com as regras. (NAKAMURA, 2007)
	O funcionamento dessa tecnologia é simples de se entender, assim como no filtro de pacotes, quando é iniciada uma conexão TCP com um pacote SYN, esse pacote é analisado de acordo com as regras de firewall, sendo aceito, o pacote é adicionado na tabela de estados do firewall, essa conexão e os demais pacotes que fazem parte dessa mesma conexão, serão aceitos sem ser necessária a checagem, caso o pacote não seja aceito pelas regras de firewall, esse pacote será descartado e a conexão rejeitada. Pelo fato de ser analisado pelas regras de firewall apenas o pacote SYN e os demais serem analisados pela tabela de estados de conexões, o desempenho melhora, todo o processo torna-se mais rápido, isso ocorre pelo fato de que na tabela de estados, as regras são menores e utilizam o hash para realizar a comparação dos demais pacotes. (NAKAMURA, 2007, p.233).
	O tratamento da chegada de pacotes ACK ocorre da seguinte forma; assim que o pacote chega, primeiramente é verificado na tabela de estados, existindo uma sessão aberta é aceito, caso contrário, será analisado pelas regras de filtragens e consequentemente a sessão poderá ser estabelecida ou negada de acordo com as regras estabelecidas.
Nakamura (2007, p.236, grifo nosso) em seu livro descreve algumas vantagens e desvantagens do filtro de pacotes baseado em estado:
As vantagens do filtro de pacotes baseado em estado são:
Aberturas apenas temporárias no perímetro da rede.
Baixo overhead/alto desempenho da rede.
Aceita quase todos os tipos de serviços.
As desvantagens do filtro de pacotes baseado em estado são:
Permite a conexão direta para hosts internos a partir de redes externas.
Não oferece autenticação do usuário, a não ser via gateway de aplicação (application gateway). 
2.2.5 Proxy
	Uma definição de proxy foi dada por Chapman (2000, p.73, tradução nossa), segundo ele serviços proxy são aplicações ou programas servidores especializados, que levam os pedidos dos usuários por serviços de Internet (tais como FTP e Telnet) e encaminhá-los para os serviços reais.
	Na pilha TCP/IP, o proxy pode atuar tanto na camada de aplicação, conhecido como application level gateway, como também na camada de sessão ou transporte (circuit level gateway). A diferença entre eles é que circuit level gateway não realiza a verificação dos serviços, funciona como relay entre o cliente e servidor. Já em application level gateway o payload dos pacotes é filtrado. (NAKAMURA, 2007, p.237)
	De uma forma geral, o proxy funciona realizando autenticação de clientes que se conectam nele, após essa autenticação o proxy envia a requisição do cliente para os servidor, que por sua vez, tem a resposta passando também pelo proxy. Com isso, são iniciadas duas conexões, sendo uma entre o cliente e o proxy e outra entre o proxy e o servidor, dando mais segurança tanto para o cliente, como também para o servidor. (NAKAMURA, 2007, p.237)
	Vimos algumas vantagens do proxy, mas há algumas desvantagens também, o application level gateway é mais lento que o filtro de pacotes, o proxy não trata pacotes ICMP, não aceita todos os serviços, necessário que clientes internos saiba que ele existe, a alternativa para esse último é a utilização de proxy transparente.
2.2.6 Firewalls individuais ou pessoais
	Esse tipo de firewall trata-se de software instalados em computadores pessoas, conhecidos também como host cliente, com o crescimento das redes, das tecnologias utilizadas, se faz necessário que o cliente também se preocupe com a segurança. Muitos utilizam o notebook pessoal para acessar a VPN da empresa de casa, por exemplo. 
	Nakamura (2007, p.241), relata que um hacker poderia, por exemplo, atacar um host cliente e utilizá-lo como ponte entre a internet e a rede interna da organização.
	Sabemos que essa preocupação com a segurança por parte de muitos usuários, a partir de seu computador pessoal, não é tanta, e apenas se torna mais efetiva quando ocorre algo, como por exemplo, tiver os dados perdidos de alguma forma.
	Nakamura (2007, p.242), ainda continua descrevendo em seu livro que um firewall individual, ou firewall pessoal, é uma das alternativas para a proteção das conexões de hosts individuais e a característica desse tipo de firewall é que ele atua não na borda da rede da organização, mas no próprio equipamento do usuário. 
	Os sistemas operacionais atuais já vêm com o firewall habilitado, com regras básicas configuradas, mas é possível instalar uma ferramenta especifica, na qual pode-se ter um controle maior das regras configuradas, sendo diversa a quantidade de soluções para isso.
2.2.7 Arquitetura de Firewall
	Como vimos, um firewall possui várias funcionalidades e tecnologias. Em uma organização, o administrador irá implantar a tecnologia mais adequada para o que a empresa necessita. Da mesma forma são as arquiteturas de firewall que, em conjunto com essas tecnologias e funcionalidades, são compostas as arquiteturas do firewall, que será feita de acordo com a necessidade da empresa.
	Há três arquiteturas de firewall bastante conhecidas, são elas: a Dual-homed host, screened host e screened subnet. Essas arquiteturas irão dizer como o firewall será projetado e como serão implantados em uma rede de computadores. (ALECRIM, 2013). [15: Informações retiradas de site. Disponível em: http://www.infowester.com/firewall.php. Acesso em: 10/11/2014]
2.2.8 Dual-homed host
	Basicamente é a arquitetura que possui um host entre duas redes, a rede interna e a rede externa (internet) (Figura 4). Dessa forma, já podemos perceber a funcionalidade desse equipamento, que é a proteção da rede interna segura, de uma rede externa não segura. Esse host normalmente é um firewall que possui duas placas de rede, sendo uma para cada rede.[16: NAKAMURA, 2007, p.246]
O firewall localizado entre essas duas redes, é a porta para a comunicação da rede interna com a internet, ou seja, é necessário que equipamentos da rede interna estejam conectados ao host dual-homed, essa comunicação é feita por meio de proxies ou conexão em duas etapas. O fato de ter apenas um equipamento como responsável pela comunicação entre as redes, o risco de haver uma indisponibilidade se torna alta, caso esse equipamento apresente falhas.[17: Ibid.][18: Ibid.]
Figura 4 - Arquitetura Dual homed Host
Fonte: ZWICKY, 2000, p.82
2.2.9 Screened host
	
Nesse modo, há um filtro de pacotes entre as redes e um bastion host na rede interna. No filtro de pacotes são adicionadas regras para permitirem o trafego à rede interna, passando apenas pelo bastion host da mesma, e usuários da rede internet apenas acessam a internet por meio deste. (NAKAMURA 2007). 
Figura 5: Arquitetura Screened Host
Fonte: ZWICKY, 2000, p.84
	Nesta arquitetura, Nakamura (2007) destaca alguns de segurança, pelo fato do bastion host ficar na rede interna. caso ele seja comprometido o invasor já estará na rede interna. Outro problema que o mesmo autor destaca é que o filtro de pacotes e o bastion host formam um único ponto de falha, caso ocorra algum ataque o acesso à internet da organização será comprometida.
2.2.10 Screened subnet
	Nessa arquitetura pode-se dizer que há uma evolução em relação a segurança. Em screened host, o bastion host fica junto da rede interna, o que poderia comprometer a segurança da empresa, já na arquitetura screened subnet é adicionado uma DMZ. DMZ é um local seguro, localizado entre duas redes é protegido por filtros de pacotes. O bastion host fica nessa DMZ, o que da mais proteção em caso de invasão. [19: NAKAMURA, 2007,p.248]
	A DMZ possui dois filtros, o filtro externoe interno, o primeiro permite tráfego a DMZ, o filtro interno permite apenas a passagem de requisições e repostas dos serviços autorizados para a rede interna.[20: Ibid.]
	A Figura 6 a seguir mostra como é a arquitetura screened subnet, observando-se que há dois filtros de pacotes e o bastion host está localizado na DMZ:
Figura 6: Arquitetura Screened subnet
Fonte: ZWICKY, 2000, p.85
3 Metodologia
A metodologia utilizada para realizar o comparativo entre as ferramentas ConfigServer Security e Firewall (CSF) e Advanced Policy Firewall (APF) foram várias. Inicialmente buscou-se todas as informações possíveis nas documentações disponibilizadas pelos desenvolvedores, como por exemplo, instalação, configuração, características, etc.
	Com essas informações, montou-se um cenário com máquinas virtuais, utilizando para isso o Virtual Box 4.3.18, e instalado em um notebook que possui as seguintes configurações:
Fabricante: DELL
Sistema Operacional: Windows 8.1 64 bits
Memória RAM: 8 GB
Disco Rígido: 1 TB
Processador: Intel Core i5-4210U 1.70 GHz 
No Virtual Box, criou-se duas máquina virtual (VM) padrão, sendo uma com o sistema operacional Debian e a outra com o sistema Operacional Windows 7, ambos 64 bits, simulando um cenário de servidor web e cliente. Para a realização de testes, criamos também outra máquina virtual Debian, sendo essa se, qualquer serviço instalado. Em seguida, utilizou-se o recurso de clonagem, que possui o virtual box, para clonar as demais máquinas. Dessa forma foram criadas mais duas máquinas virtuais servidoras web com o sistema operacional Debian, totalizando 3 VMs servidores e uma VM cliente. 
Os serviços básicos instalados são os mesmos entre as 3 VMs servidoras web, diferenciando-se apenas na ferramenta de segurança instalada, onde uma possui o CSF, outra possui o APF e a terceira sem ferramentas instaladas. Já na VM cliente, possui apenas um navegador instalado.
Em relação à rede, foram configurados os servidores com duas placas de rede, sendo uma configurada em modo bridge para que pudesse realizar a comunicação com a internet e a outra placa de rede como host-only, para que se pudesse realizar todos os testes possíveis de forma isolada da máquina física, já que a característica de uma das ferramentas é o bloqueio do IP. No cliente foi configurada apenas uma placa de rede, sendo ela host-only, a partir dela é que será realizado alguns testes.
Utilizou-se também outra ferramenta para análise de vulnerabilidades, chamada OpenVAS. Baixou-se uma máquina virtual de demonstração, com todas as ferramentas já instaladas e prontas para serem utilizadas. Realizou-se uma única alteração, que foi configurar a placa de rede com host-only, para ficasse integrado a nossa rede virtual. O acesso a essa ferramenta dar-se-á por meio de um navegador web de uma máquina cliente.
Abaixo, a Figura 7 e o quadro 1 mostram como ficou o cenário de rede e configurações:
Figura 7 - Cenário da rede de testes
Fonte: do autor[21: A Figura 7 foi criada utilizando o software Cisco Packet Tracer]
Quadro 1: Configuração das máquinas virtuais
		
	VM 1
	VM 2
	VM 3
	VM 4
	VM 5
	VM 6
	Nome
	Webserver
	WebserverCSF
	WebserverAPF
	Cliente
	OpenVAS
	Cliente Linux
	SO / Versão
	Debian 7.7.0 x64
	Debian 7.7.0 x64
	Debian 7.7.0 x64
	Windows 7 64 bits
	
	Debian 7.7.0 x64
	CPU
	1/4 - i5 4210U
	1/4 - i5 4210U
	1/4 - i5 4210U
	1/4 - i5 4210U
	2/4 - i5 4210U
	1/4 - i5 4210U
	RAM
	1 GB
	1 GB
	1 GB
	2 GB
	1,5 GB
	1 GB
	HD
	8 GB
	8 GB
	8 GB
	25 GB
	8 GB
	8 GB
	Placas de Rede
	2
	2
	2
	1
	1
	1
	Serviços instalados
	Apache
proFTPD
PHP
MySQl
SSH
	Apache
proFTPD
PHP
MySQl
SSH
CSF
	Apache
proFTPD
PHP
MySQl
SSH
APF
	Chrome
	
	Hping3
SSH
Fonte: do autor
4 Análise dos resultados
Diante de tantas ferramentas de seguranças que estão disponíveis, em que todas têm uma coisa em comum que é a de proteger a informação contra acesso não autorizado, é necessário que sejam realizados testes para escolher a que mais se adequa ao seu projeto de segurança da rede da empresa.
	Como já dito neste trabalho, o objetivo do mesmo é a de mostrar a diferença entre duas ferramentas de firewall, o CSF e o APF. Com o cenário já pronto para a realização dos testes, definiu-se alguns critérios para identificar tais diferenças, são eles:
Principais proteções oferecidas;
Facilidade da instalação e configuração;
Facilidade no gerenciamento;
Registro de Logs;
Suporte oferecido pelos desenvolvedores;
Eficácia da ferramenta
4.1 Sobre as ferramentas
	Antes de serem realizados os testes propriamente ditos, será exposto um pouco sobre cada ferramenta, o que é, como funciona basicamente e seu desenvolvedor. 
4.1.1 Configserver Security & Firewall (CSF) 
É um firewall baseado em IPtables, desenvolvido pela ConfigServer services, para sistemas Linux. Sua principal utilidade é em servidores web, pois integra-se facilmente com o popular Cpanel/WHM, que são gerenciadores de servidor web. 
O CSF possui um conjunto de scripts que facilitam a implementação de segurança e o gerenciamento do servidor, sendo esse o seu objetivo principal a qual foi desenvolvido, trazer uma maior facilidade para o administrador da rede.
De uma forma geral, o CSF trabalha bloqueando tudo e liberando apenas o que é necessário, além de possuir um sistema de detecção de intrusão (IDS), checagem de falhas de login e gerenciamento do serviço de e-mail do servidor.
As principais características do CSF são:[22: Informações retiradas de site. Disponivel em: http://configserver.com/cp/csf.html, acessado em 19/11/2014]
Verificação de falhas de autenticação no SSH, e-mail, ftp;
Notificação de Login SSH;
Possibilidade de limitar o envio de e-mails por hora, para evitar spam;
Possui interface gráfica, usada no Cpanel/WHM;
Integração com Cpanel/WHM 
Bloqueia tráfego da lista de bloqueios Dshield e Spamhaus
Possui IDS (Sistema de detecção de intrusão)
Proteção SYNFLOOD
Proteção contra Ping da morte
Bloqueio de varredura de portas, Port Scan
Bloqueio temporário e permanente
Comandos fáceis de executar e facilidade na configuração.
Arquivo de configuração comentado
Registro em logs;
Entre outras.
4.1.2 Advanced Policy Firewall (APF)
	Firewall também baseado em iptables e bem semelhante ao CSF, possui uma serie de scripts que realizam o trabalho de configuração e gerenciamento. Foi desenvolvido pela R-fx Networks. Possui o mesmo objetivo de facilitar a vida do usuário, com informações claras sem seus arquivos de configuração.
	Trabalha em cima do iptables, que por si só é uma ótima ferramenta de segurança, quando bem configurado. O APF possui ainda a capacidade de se inscrever e utilizar listas de endereços, publicadas por empresas de segurança, que são conhecidos por serem origem de ataques, um exemplo disso é o SPAMHAUS.
	Quanto às características do APF, as principais são elas:[23: Disponivel em: https://www.rfxn.com/projects/advanced-policy-firewall/. Acessado em 19/11/2014]
Arquivo de configuração bem comentado
Facilidade na configuração;
Bloqueia tráfego usando a lista da dshield.org e spamhaus
Proteção contra varreduras de portas;
Bloqueios de IPs
Filtragem de rede baseada em aplicativo
Interfaces de entrada e saída de rede pode ser configurado de forma independente
Possibilidade de usar o BFD como complemento, este identifica ataques de força bruta;
Possibilidade de o administrador criar as suas próprias regras, usando qualquer um dos arquivos de politica;
Possui RAB (Reactive Address Blocking), recurso de prevenção de intrusão;
Entre outras características.
4.2 Implementação das Ferramentas
	Um fator importante na escolha de uma ferramenta de segurança como um firewall é saber do processo de instalação, configuração e antes de tudo isso, a compatibilidade com o sistema operacional e outros sistemas. São esses três pontos que analisamos nas ferramentas CSF e APF.
	Em compatibilidade, ambas as ferramentas possuem compatibilidade comdiversos sistemas operacionais e também com sistemas de servidores virtuais. (Quadro 2):
Quadro 2: Lista de sistemas operacionais compatíveis
	Sistemas Operacionais compatíveis
	
	CSF
	APF
	RedHat Enterprise v3 to v7
	Sim
	Sim
	CentOS v3 to v6
	Sim
	Sim
	CloudLinux v5 to v6
	Sim
	Não informado
	Fedora v1 to v20
	Sim
	Sim
	openSUSE v10, v11, v12
	Sim
	Sim
	Debian v3.1 - v7
	Sim
	Sim
	Ubuntu v6.06 LTS to v13.10
	Sim
	Sim
	Slackware v12.2
	Sim
	Sim
	TurboLinux Server 9+
	Não informado
	Sim
	TurboLinux Fuji (Desktop)
	Não Informado
	Sim
Fonte: do autor
Sobre a compatibilidade com servidores virtuais, apenas o CSF informação, como mostra na figura 8 a seguir:
Figura 8: Lista de servidores virtuais compatíveis
Fonte: ConfigServer, 20??[24: Figura 8 retirada de site. Disponível em: http://configserver.com/cp/csf.html. Acessado em: 20/11/2014]
	
Referente à instalação, as ferramentas assemelham-se muito, para ambas são realizados os mesmos procedimentos, que de uma forma fácil e rápida, consegue-se realizar a instalação no servidor. As figuras 9 e 10 abaixo mostram o procedimento de instalação do CSF e do APF:
Figura 9: Instalado o APF
Fonte: do autor
Figura 10: Instalando o CSF
Fonte: do autor
	Feito isso, o firewall já está instalado, necessário apenas, a partir desse momento, realizar a configuração dos mesmos. Os arquivos de configuração ficam no diretório /etc/csf/ e do APF /etc/apf . Neste local, apenas é necessário realizar a configuração no arquivo principal de cada um, no caso do CSF o arquivo chama-se “csf.conf”, já o do APF chama-se “conf.apf”. Para realizar a configuração, usa-se qualquer editor de texto de sua preferência, como por exemplo o nano, pico ou o vim. Eis um exemplo do comando para acessar o arquivo de configuração do CSF:
#cd /etc/csf
#vim csf.conf
Para o APF, o procedimento é o mesmo:
#cd /etc/apf
#vim conf.apf
	Ao acessar esse arquivo, pode-se ver que tanto o CSF como o APF comentam cada parâmetro existente, um ponto forte para as ferramentas, pois, apenas lendo esses comentários, qualquer administrador conseguirá realizar a configuração, sem o menor problema.
	Outro ponto forte é a existência do parâmetro para a realização de testes, o qual pode ser feito em 5 minutos. No CSF, essa opção chama-se TESTING=“0”, já no APF essa opção chama-se DEVEL_MODE="0". Usa-se os valores “0” para desativar e o valor “1” para ativar o modo teste.
	A seguir, os quadros 3 e 4 mostram as principais opções existentes nesse arquivo de configuração e sua descrição: 
Quadro 3: Lista de parâmetros de configuração do CSF
	Arquivo de configuração do CSF
	Parâmetros
	Descrição
	TESTING=“0”
	Quando ativado, deixa o CSF em modo de teste por um tempo de 5 minutos, após realizadas as configurações desejadas, desative-o inserindo "0"
	TCP_IN, TCP_OUT, UDP_IN, UDP_OUT
	Gerencia as portas que estarão abertas.
	ETH_DEVICE, ETH_DEVICE_SKIP
	Nesse parâmetro pode-se definir em quais interfaces deseja-se que as regras sejam aplicadas ou não, por padrão as regras são aplicadas em todas as interfaces.
	DENY_IP_LIMIT = “100”, DENY_TEMP_IP_LIMIT = "100"
	Define o valor máximo de IPs Bloqueados
	LF_DAEMON = "1"
LF_CSF = "1“
	Habilita o LFD e verifica se o mesmo está ativo a cada 300 segundos.
	SMTP_BLOCK = "0“
SMTP_PORTS = "25"
SMTP_ALLOWUSER = "“
SMTP_ALLOWGROUP = "mail,mailman“
	Parâmetros que bloqueia o envio de e-mail e define a porte do SMTP e define os usuários que poderão ou não enviar e-mails.
	LF_PERMBLOCK = "1"
LF_PERMBLOCK_INTERVAL = "86400"
LF_PERMBLOCK_COUNT = "4"
	Parâmetros de configuração do bloqueio temporário, ativa e informa o tempo que permanecerá bloqueado e a quantidade de vezes que irá bloquear.
	MESSENGER = "1“ 
	Parâmetro de configuração para notificar o atacante de que ele foi bloqueado.
	SYNFLOOD = "1“ , SYNFLOOD_RATE = “90/s“
SYNFLOOD_BURST = "150”
PORTFLOOD = "80;tcp;20;5“
	Configuração da proteção contra ataques do tipo SYNFLOOD, define a quantidade de conexões permitidas e a porta.
	PS_LIMIT = "10“
PS_INTERVAL = "300“ #Else, 0 = Disabled
PS_PORTS = "0:65535,ICMP“
PS_PERMANENT = “1“, 
PS_BLOCK_TIME = "3600“, 
PS_EMAIL_ALERT = "1“
	Configurações de proteção contra varredura de portas e define a quantidade de portas que poderá ser verificada, as portas protegidas, ativa os bloqueios permanentes e alertas.
	LF_SSHD = "5“, LF_SSHD_PERM = "1“ #Else TEMP. LF_SMTPAUTH, LF_POP3D, LF_IMAPD, LF_HTACCESS, LF_MODSEC, LF_BIND, LF_SUHOSIN
	Configurações de verificação de falhas de login e define o limite máximo de erros.
Fonte: do autor[25: Informações retiradas do arquivo de configuração da ferramenta]
Quadro 4: Lista de parâmetros de configuração do APF
	Arquivo de configuração do APF
	Parâmetros
	Descrição
	IG_TCP_PORTS="22,80,443", IG_UDP_PORTS=""
EGF=”1″, EG_TCP_CPORTS, EG_UDP_CPORTS
	Define as portas que estarão abertas
	RAB="1"
RAB_PSCAN_LEVEL="2"
RAB_TIMER="43200"
	Parâmetros que ativa a principal proteção do APF contra ataques e varreduras de portas, pode-se definir o tempo que permanece bloqueado.
	DEVEL_MODE="0"
	Ativa e desativa o modo de testes, enquanto realiza os ajustes na configuração recomenda-se deixa-lo ativado "1", após concluído desative-o "0".
	DLIST=SPAMHAUS="1"
DLIST_PHP="1"
DLIST_DSHIELD="1"
	Ativa a lista de endereços publicados por organizações, como sendo origens de ataques já conhecidos.
Fonte: do autor[26: Idem.]
4.3 Gerenciamento das ferramentas
	Na escolha de um firewall para o sistema de segurança, um fato importante deve ser levado em conta, que é a facilidade de gerenciamento. Um sistema complexo de ser gerenciado muitas vezes torna a tomada de decisão ou correção do problema, demorado, o que pode trazer um maior prejuízo para a empresa.
	Como já dito nesse trabalho, o objetivo das ferramentas CSF e APF é a de facilitar a vida do administrator e ajuda-lo na hora de corrigir um determinado problema.
	Para isso, os desenvolvedores criaram comandos simples para serem executados quando houver necessidade de reiniciar o firewall, visualizar regras, bloquear e desbloquear IPs principalmente. Abaixo, os quadros 5 e 6 mostram os principais comandos do CSF e do APF:
Quadro 5: Lista de comandos do CSF
	Comando
	Descrição
	#csf -e
	Ativa o CSF e LFD
	#csf -x
	Desativa o CSF e LFD
	#csf -r
	Reinicia o CSF e LFD
	#csf –g [IP]
	Verifica a situação de um determinado IP
	#csf –dr [IP]
	Libera um IP bloqueado permanente
	#csf –tr [IP]
	Libera um IP bloqueado temporariamente
	#csf -u
	Verifica por atualizações
	#csf -h
	Mostra todas as opções possíveis do CSF
Fonte: do autor
Quadro 6: Lista de comandos do APF
	Comandos
	Descrição
	#apf –s 
	Inicia o firewall APF
	#apf -r
	Reinicia o Firewall APF
	#apf -f
	Para o APF
	#apf –l
	Lista as regras
	#apf -t
	Verifica o status do firewall
	#apf –a [IP]
	Libera um IP
	#apf –d [IP]
	Bloqueia um determinado IP
	#apf –u [IP]
	Remove um IP da lista de bloqueios
	#apf -h
	Mostra todas as opções
Fonte: do autor
4.4 REGISTROS em Logs
	Nesse critério, analisou-se os arquivos de logs que as ferramentas criam e verificamos principalmente o que é registrado. O registro em logs é de suma importância de uma ferramenta, pois é nele que estará tudo o que aconteceu no servidor, uma tentativa de invasão, um bloqueio, etc. É através desses logs que são realizadas auditorias de segurança, para que se for o caso, sejam tomadas as medidas necessárias caso algum problema tenha ocorrido.
	Nesse ponto, ambas as ferramentas possuem seus logs, os logs do CSF concentra-se no arquivo “lfd.log”, localizado em /var/log. Um ponto forte para o CSF é que ele registra no seu log os bloqueios que são realizados pela ferramenta, quando não aparece nesse arquivo principal de log, encontramos facilmente os registros de outros bloqueios, como o ataque SYNFLOOD, no arquivo “messages”. Eis umexemplo do arquivo de log principal do CSF, o lfd.log (Figura 11):
Figura 11: Exemplo de Log do CSF
Fonte: do autor
	No arquivo “messages”, localizamos outros bloqueios realizados pela ferramenta, numa tentativa de parar o ataque SYNFLOOD, veja na figura 12:
Figura 12: Exemplo de Log do CSF, arquivo messages
Fonte: do autor
	Quanto ao APF, é criado o arquivo “apf_log” em /var/log, mas ao contrário do CSF, durante um teste de ataque que realizamos, não encontramos registros nesse arquivo quanto a correção que o Firewall estaria realizando, sendo necessário a verificação de logs do próprio sistema. Um ponto fraco para o APF, pois o ideal é que registrasse em seus logs tudo o que estivesse acontecendo no servidor. 
	Verificou-se o arquivo de configuração do APF em busca de algum parâmetro para que houvesse a possibilidade de exibir os registros e apesar de existir essa opção, não identificamos alterações no arquivo. Um exemplo do conteúdo do log principal do APF, segue-se abaixo (Figura 13):
Figura 13: Exemplo de Log do APF
Fonte: do autor
4.5 Suporte a ferramenta
	Para escolher uma ferramenta de segurança, é necessário analisar também quanto ao suporte do produto, para que em caso de algum tipo de problema que o administrador não consiga resolver, possa entrar em contato com o desenvolvedor a fim de encontrar uma solução, ou até mesmo para sugerir melhorias, incrementar com algum outro serviço.
Nesse quesito, viu-se que o CSF possui alguns meios de comunicação, entre os desenvolvedores e usuários da ferramenta. Os desenvolvedores do CSF mantém disponível um fórum, onde é possível a troca de ideias, realizar sugestões, reportar problemas ou bugs que forem encontrados. Para que possa interagir no fórum, basta realizar o cadastro com as informações básicas que são solicitadas, após isso, é liberado o acesso.
Quanto à ferramenta APF não se encontrou algo parecido como o fórum do CSF, o site do desenvolvedor apenas mantém um blog com noticias sobre os produtos que ela possui. O link de sugestões de ideias, documentações, no período em que se acessou não estava disponível. Isso é um ponto fraco para essa ferramenta, pois em caso de dúvidas ou problemas que usuário da ferramenta tiver, apenas terá a documentação padrão, ao contrário do CSF que há um local para a troca de ideias, sendo praticamente obrigado a realizar buscas em fóruns de pessoas que usam a ferramenta, para tentar solucionar um determinado problema.
Em relação ao suporte, à instalação e à configuração da ferramenta, ambas as ferramentas têm documentações disponíveis em que é mostrado cada item de configuração da ferramenta e também a documentação com o passo a passo para a instalação. Além disso, o CSF possui mais informações em seu arquivo de configuração, o csf.conf.
4.6 Eficácia das ferramentas 
	A realização de testes de ferramentas de segurança quando se está a escolher uma para realizar a proteção do seu servidor é algo essencial. De uma forma geral, são testadas suas principais características ou proteções que ela diz fornecer, e éanalisados o comportamento de cada uma em um determinado problema.
	Com isso, utilizou-se nos testes máquinas virtuais clientes para simular ataques e realizar varreduras nas portas dos serviços. Fez-se uma simulação de ataque SYNFLOOD para analisar como cada ferramenta iria se comportar e também realizou-se uma varredura com uma ferramenta especifica.
	Nos testes também se utilizou a ferramenta HPING para simular um ataque SYNFLOOD. Esse ataque partia de um maquina virtual cliente usando sistema operacional Debian. Para fazer a varredura de portas, utilizou-se a ferramenta OpenVAS, instalado também em uma máquina virtual, com sistema operacional Debian, não foi realizada a instalação dessa ferramenta, pois o site do desenvolvedor já disponibiliza um máquina virtual pronta pra ser usada. 	A seguir, será apresentado como cada teste foi feito e descrever o comportamento das ferramentas para esses testes realizados.
4.6.1 Simulação de Ataque SYNFLOOD
	Para realizar esse ataque instalou-se em uma máquina virtual cliente, com sistema operacional Debian, a ferramenta hping3, a instalação é simples, segue abaixo:
#apt-get install hping3
	Após a instalação, realizou-se a simulação de dois tipos de ataque, sendo um com um único IP de origem e o outro com o parâmetro para modificar o IP de origem. Neste caso em estudo, o IP das máquinas virtuais com o CSF e APF instalados são respectivamente: 192.168.56.102 (CSF) e 192.168.56.103 (APF), e o computador de origem dos ataques tem com IP 192.168.56.106. Os comandos para simular os ataques ficaram assim (SILVER MOON, 02/2011):[27: Disponível em: http://www.binarytides.com/tcp-syn-flood-dos-attack-with-hping/. Acesso em: 20/11/2014]
#hping3 --faster –S –p 80 [IP de destino] –rand-source
--faster : informa que deve ser enviado 100 pacotes por segundo
-S: indica que os pacotes contém a flag SYN
-p: indica a porta que será atacada
--rand-source: indica que o IP de origem do ataque será sempre diferente
	Com essa syntax, primeiro realizou-se o ataque no servidor com o CSF instalado, primeiro sem o parâmetro para alterar o IP de origem do ataque (figura 14):
Figura 14: 1ª Simulação de ataque SYNFLOOD no CSF
Fonte: do autor
	Para essa forma de ataque o CSF conseguiu bloquear facilmente o IP de origem, parando o ataque, a página web não ficou fora ar. Ao analisar o log do sistema (/var/log/kern.log), encontrou-se o resultado (Figura 15).
Figura 15: Bloqueio do ataque realizado pelo CSF
Fonte: do autor
	Esse mesmo ataque, realizou-se no APF, também sem alterar o IP de origem do ataque (Figura 16).:
Figura 16: 1ª Simulação de ataque SYNFLOOD no APF
Fonte: do autor
	Ao analisar o mesmo log do sistema (/var/log/kern.log), viu-se que foi realizado um bloqueio temporário do IP do atacante, o bloqueio foi realizado pelo RAB (Reactive Address Blocking, esse sistema bloqueia qualquer tentativa de invasão, como mostra a figura 17 a seguir:
Figura 17: Bloqueio realizado pelo APF
Fonte: do autor
	Com isso, observou-se que ambas as ferramentas conseguiram bloquear facilmente esse tipo de ataque, sem causar prejuízos para o servidor.
	Agora, foi realizado o mesmo ataque, com a diferença que o IP de origem será trocado utilizando o parâmetro --rand-source. A figura 18 abaixo mostra o ataque acontecendo no CSF.
Figura 18: 2ª simulação de ataque SYNFLOOD ao CSF
Fonte: do autor
	O comportamento do CSF a esse tipo de ataque foi o mesmo, tentou realizar o bloqueio dos IPS, porém como o ataque ocorre de uma forma muito rápida, não obteve sucesso, com isso a página ficou fora do ar enquanto o ataque estava ocorrendo (Figura 19):
Figura 19: Bloqueio do 2º ataque no CSF
Fonte: do autor
	No APF o comportamento foi diferente e mais eficiente, o sistema realizou um DROP, que nada mais é que descartar o pedido de conexão e não enviar resposta para o atacante, dessa forma, a página não ficou fora do ar e não trouxe prejuízos para o servidor (figuras 20 e 21):
Figura 20: 2ª simulação de ataque SYNFLOOD no APF
Fonte: do autor
Figura 21: DROP realizado pelo APF no ataque
Fonte: do autor
4.6.2 Teste de varredura de portas (Port Scan)
	As ferramentas APF e CSF possuem proteção contra o escaneamento de portas, e ambas as ferramentas ao detectarem um scanner no servidor no mesmo momento bloqueiam o IP. Essas configurações estão disponíveis no arquivo de configuração, no caso do CSF o local é “/etc/csf/csf.conf”, já no APF é em “/etc/apf/conf.apf”. O quadro 7 mostra os parâmetros configuráveis, lembrando que no arquivo de configuração há comentários explicando cada opção:
Quadro 7: Parâmetros de configuração da proteção contra port scan
	CSF
	APF
	PS_INTERVAL, PS_LIMIT, PS_PORTS, PS_DIVERSITY, PS_PERMANENT, PS_BLOCK_TIME, PS_EMAIL_ALERT
	RAB_PSCAN_LEVEL (0,1,2.3)
Fonte: do autor
	Para fazer uma verificação da situação das portas, teve-se que fazer a liberação nas ferramentas, em seguida, ativou-se as opções e realizou-se novostestes para analisar o comportamento das ferramentas. Eis os resultados obtidos no CSF (Figura 22) e logo a seguir, no APF (Figura 23), com as opções de bloqueios desativados:
Figura 22: Primeiro resultado da varredura de portas no CSF
Fonte: do autor[28: Imagens criadas pela ferramenta OpenVAS]
Figura 23: Primeiro resultado da varredura de portas no APF
Fonte: do autor[29: Idem.]
	Nesses resultados obtidos, viu-se que não há vulnerabilidades criticas nos servidores, sendo necessário apenas fazer pequenas correções, caso seja realmente necessário. 
	Tentou-se realizar uma nova varredura, mas, dessa vez, com os recursos de proteção ativados e o resultado que se obteve foi que ambas as ferramentas bloquearam o IP da máquina de origem, não permitindo assim a realização da varredura de portas no servidor. As figuras 24 e 25, a seguir, mostram o bloqueio realizado:
Figura 24: Log do bloqueio Port scan CSF
Fonte: do autor
Figura 25: Log do bloqueio Por scan do APF
Fonte: do autor
Conclusão
A escolha de uma ferramenta de segurança adequada para o seu servidor ou para a sua rede local, não é tarefa fácil. Viu-se que é necessária uma série de análises para determinar qual a ferramenta que irá se adequar melhor ao seu projeto.
Analisou-se, assim, as ferramentas mais conhecidas que trabalham com Iptables e geralmente usadas em servidores web, são elas o CSF e o APF. Ferramentas que são bastante semelhantes, mas que apresentam algumas diferenças importantes que podem determinar a escolha de uma e não da outra. Pode-se citar alguns exemplos, no CSF é possível verificar a situação de um IP apenas usando um comando simples, procedimento esse que não é possível no APF, a não ser que, realize modificações nos scripts da ferramenta, já que ela é de código aberto.
Outro ponto que se pode citar é que o CSF possui interface gráfica que é utilizada ao sistema cPanel/WHM, uma mão na roda para que procura praticidade ou que não tem experiências na utilização de comandos via shell. O APF não possui essa interface, o que poderá tornar o trabalho do administrador mais complexo, nas condições citadas acima.
Mas, no que se refere à forma que defender o servidor em um ataque, viu-se que o APF se saiu bem melhor, onde não deixou que a página ficasse fora do ar. Por mais que o CSF estivesse bloqueando os IPs, não conseguiu deixar a página web disponível.
Analisando esses fatos, conclui-se que não há um melhor do que o outro cabe o administrador analisar os serviços que são disponibilizados e ver qual ferramenta garantirá proteção para aquele serviço, deverá analisar também a facilidade de gerenciamento, por exemplo, em uma empresa de hospedagem de site onde há vários servidores com páginas hospedadas de diversos clientes, possuindo serviços com e-mail, o APF não seria o mais recomendado, pelo fato de não ter recursos de proteção para serviços de e-mail, como verificação de erros de login, limitação de envio de e-mails por hora para evitar a prática de spam, recursos estes existentes no CSF.
O APF seria mais recomendado para empresas que possuem o seu próprio servidor web local, não há tanta preocupação com o serviço de e-mail, as proteções oferecidas pela ferramenta já irá atender de forma tranquila a necessidade.
6 Referências 
KUROSE, James. F.; ROSS, Keith. W. Redes de Computadores e a Internet: uma abordagem top down. Tradução Opportunity translations; revisão técnica Wagner Zucchi. 5ª ed. --São Paulo: Addison Wesley, 2010.
NAKAMURA, Emilio Tissato; Geus, Paulo Lício de Segurança de Redes em Ambientes Cooperativos. São Paulo: Novatec Editora, 2007
ConfigServer Services. ConfigServer Security & Firewall. Disponível em: <http://configserver.com/cp/csf.html>. Acesso em: 01 set. 2014
R-fx Networks. Advanced Policy Firewall. Disponível em: <https://www.rfxn.com/projects/advanced-policy-firewall/>. Acesso em: 01 set. 2014
OLIVEIRA, Welington Paulino; Rigo , Julian Mayer. Redes de Computadores I: Estudo da Gestão de Segurança da Informação com Base no Framework ITIL V2. Disponível em: < http://www.teleco.com.br/tutoriais/tutorialitil/default.asp>. Acesso em 31/10/2014 
Devmedia. SQL Injection em ambientes Web. Disponível em: <http://www.devmedia.com.br/sql-injection-em-ambientes-web/9733>. Acesso em 08/11/2014
OWASP. Cross-site Scripting (XSS). Disponível em: <https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)>. Acessado em 08/11/2014
ZWICKY, Elizabeth D. et al. Building Internet Firewalls. O'Reilly Media; Second Edition edition, July 6, 2000
ALECRIM, Emerson. O que é firewall? - Conceito, tipos e arquiteturas. Infowester, 2013. Disponível em: <http://www.infowester.com/firewall.php>. Acesso em: 10/11/2014
SÊMOLA, Marcos. Equacionando a gestão de riscos. Disponível em: <http://www.semola.com.br/disco/Coluna_IDGNow_31.pdf> . Acesso em: 25/11/2014

Continue navegando