UTILIZE A PESQUISA!

IPSec VPN

IPSec não é o mecanismo de encriptação ou autenticação, mas sim o que vem gerenciar estes. Em poucas palavras, é um framework (um conjunto de diversas ferramentas, compondo um sistema) de padrões abertos que visa a garantir uma comunicação segura em redes IP. Baseado em padrões desenvolvidos pela IETF (Internet Engineering Task Force, organização que desenvolve os padrões da Internet), o IPSec busca garantir confidencialidade, integridade e autenticidade nas comunicações de dados em uma rede IP pública.

Encriptação e autenticação podem ser implementadas tanto na camada de rede, quanto na de enlace ou aplicação. Antes do IPSec, as redes adotavam soluções parciais, que resolviam apenas parte dos problemas. Por exemplo, a utilização de SSL (Secure Sockets Layer, que simulam túneis seguros entre aplicativos) fornece encriptação no nível de aplicação, muito usado em navegadores de Internet, por exemplo, para acesso à serviços bancários. Uma das deficiências da encriptação no nível de aplicação é que ela protege somente os dados enviados pela aplicação que a está usando, mas não de todas as outras. Cada sistema ou aplicativo deve estar adaptado a SSL, para que uma segurança geral possa ser garantida. Atualmente, a maior parte dos aplicativos não utiliza SSL.

Já em instituições militares, o que vem sendo usado há anos é a encriptação no nível do enlace de dados. Neste esquema, todas as comunicações estarão protegidas por dispositivos de encriptação colocados em cada fim do enlace. Apesar de oferecer excelente cobertura, este tipo de encriptação necessita de um par de dispositivos de encriptação a cada enlace, o que pode ser inviável; também não é adequado para a Internet, já que apenas os enlaces dentro de um sistema autônomo estarão ao alcance das empresas/instituições.

O IPSec implementa encriptação e autenticação na camada de rede, fornecendo uma solução de segurança fim-a-fim, ao contrário da anterior (enlace), que é ponto-a-ponto. O IPSec pode ser implementado nos roteadores ou no sistema operacional dos terminais, assim os aplicativos não precisam de alterações para poder utilizar comunicações seguras. Como os pacotes encriptados têm o mesmo formato de pacotes IP comuns, eles podem ser roteados sem problemas em qualquer rede IP, e sem qualquer alteração nos equipamentos de rede intermediários. Os únicos dispositivos de rede que precisam ser alterados são os do início e fim das comunicações IPSec, reduzindo assim os custos de implementação e gerenciamento.

A figura abaixo mostra onde a encriptação atua nas diferentes camadas:


Encriptação na camada de enlace, na de rede e na aplicação.

Fonte: http://www.gta.ufrj.br/~rezende/cursos/eel879/trabalhos/vpn/ipsec.html#mozTocId786656

Shorewall

Shorewall (mais apropriadamente como Shoreline Firewall) é uma ferramenta de firewall Linux de código aberto, que se baseia no Netfilter (iptables / ipchains) sistema embutido no kernel do Linux, possibilita uma configuração mais organizada e rápida do seu firewall, tornando mais fácil para gerenciar sistemas de configuração mais complexa.

Usando uma analogia compreensível para programadores: Shorewall é iptables, o C é a linguagem assembly. Ele fornece um nível maior de abstração para descrever regras de uso de arquivos de texto.

Abaixo temos o link para o tutorial passo a passo de como instalar e configurar o Shorewall no Debian: http://www.megaupload.com/?d=OYQZ7PI8

Sniffer

Sniffers ou farejadores são softwares muito úteis. Tão grande é a utilidade deles, que até os sistemas de IDS (como o Snort) são feitos com base em sniffers. Um sniffer é um programa que consegue capturar todo o tráfego que passa em um segmento de uma rede. Para tornar mais fácil o entendimento, observe a imagem abaixo:

Quando ligamos computador no HUB, e enviamos informação de um computador para o outro, na realidade esses dados vão para todas as portas do HUB, e conseqüentemente para todas as máquinas. Acontece que só a máquina na qual a informação foi destinada enviará para o sistema operacional.

Se um sniffer estivesse rodando nos outros computadores, mesmo sem esses sistemas enviarem a informação que trafega ali para o sistema operacional, o farejador intercederá na camada de rede, capturando os dados e mostrando-os para o usuário, de forma pouco amigável. Geralmente os dados são organizados por tipos de protocolo (TCP, UDP, FTP, ICMP, etc...) e cada pacote mostrado pode ter seu conteúdo lido.

Criptografia Convencional

Princípios da Criptografia Convencional

A criptografia convencional possui cinco elementos:
• o texto plano;
• o algoritmo de criptografia;
• a chave secreta;
• o texto cifrado (codificado);
• o algoritmo de decriptografia.

Observação: A segurança da criptografia depende do segredo da chave, e não do algoritmo que, geralmente, é de domínio público.

A criptografia pode ser classificada de acordo com:
• o tipo de operação utilizada para transformar o texto plano em texto cifrado;
• o número de chaves utilizadas:
- simétrica: utiliza uma única chave;
- assimétrica: utiliza duas chaves ou criptografia de chave pública;
• a forma como o texto plano é processado.

Tempo médio necessário para decriptografia utilizando a força bruta:

Tempo de Inatividade

Pesso desculpas aos usuários do Ponto de Redes, mas vou ter que ficar um tempo sem postar artigos por falta de tempo para fazer os mesmos.
Em breve voltarei a postar novos artigos.
Obrigado pela compreenção.

Configurando Snort e Guardian

Instalando o Snort no Debian



Snort é um "farejador" que analisa todo o tráfego da rede, porém não toma nenhuma atitude. Neste tutorial você verá como integrar o Snort com o Guardian. O Guardian, por sua vez, toma a ação de atualizar o iptables com os alertas gerados pelo Snort, ou seja, ele interpreta o log do Snort e atualiza a regra do iptables.

Antes de iniciar, vamos colocar os seguintes mirrors em nosso sources.list:


Código: Selecionar todos
deb http://ftp.us.debian.org/debian lenny main contrib non-free
deb http://de.debian.org/debian squeeze main

Agora vamos atualizar a lista de pacotes:

# apt-get update

Criar diretório IDS na raiz:

# mkdir /IDS

Criar diretório para instalação do http:

# mkdir /www

Copiar todos os pacotes para /IDS:

# cp snort-xxx.tar.gz /IDS
# cp http-xxx.tar.gz /IDS

Descompactar em /IDS e fazer a compilação:

# tar -zxvf http-xxx.tar.gz
# cd http-xxx

Obs.: Verifique se o pacote build-essential está instalado, pois utilizaremos o compilador GCC e esse pacote já vem o GCC e outros softwares. Caso não esteja devidamente instalado, utilize:

# apt-get -y install build-essential
# ./configure --prefix=/www
# make && make install

Verifique se o iptables está instalado e sua versão utilizando:

# iptables -V

Antes de instalar o Snort, vamos instalar a Libcap, que é necessária para a instalação do Snort:

# apt-cache search libpcap

(assim verificamos o nome e a versão do pacote)

# apt-get -y install libpcap0.8-dev

Foi utilizada a versão 0.8 da libpcap.

Precisamos instalar também o Libpcre:

# apt-get -y install libpcre3-dev

Agora vamos instalar o Snort-xxx:

# tar -zxvf snort-xxx.tar.gz
# cd snort-xxx
# ./configure
# make && make install

Crie os seguintes diretórios:

# mkdir /etc/snort
# mkdir /etc/snort/rules

Ainda no diretório /IDS/snort-xxx faça:

# cd etc/
# cp classification.config gen* threshold.conf unicode.map sid* snort.conf reference.config /etc/snort/

Agora vamos colocar as rules baixadas do site snort.org (lembrando que é necessário ter login no referido site para baixar as rules):

# cd /IDS
# tar -zxvf snortrules-snapshot-CURRENT.tar.gz
# cd rules
# cp * /etc/snort/rules

Obs.: O link direto para download é: snortrules-snapshot-CURRENT.tar.gz

Para isso você precisa ter login, mas para criar seu login no site é FREE, grátis. :)

Crie o arquivo que irá guardar os logs:

# mkdir /var/log/snort
# cd /var/log/snort
# touch alert

Para rodar o Snort, edite o arquivo:

# vim /etc/snort/snort.conf

Altere a linha:

var RULE_PATH ../rules

Para:

var RULE_PATH /etc/snort/rules

E faça assim:

# snort -c /etc/snort/snort.conf -o

Ou melhor:

# snort -c /etc/snort/snort.conf -o -i eth0 -D


Definição do Guardian:


"O Guardian, é uma ferramenta que lê os logs do snort em tempo real e bloqueia algum ataque que esteja vindo de algum lugar na internet, ou melhor, bloqueia alguma coisa que possa vir a ser um problema para seu servidor e/ou você." - Snort + MySQL + Guardian + ACID - ataliba.eti.br

Agora vamos instalar o Guardian:

# cd /IDS
# tar -zxvf guardian-1.7.tar.gz
# cd guardian-1.7/scripts

O programa Guardian utiliza sempre os scripts denominados guardian_block.sh e guardian_unblock.sh. Assim, deverão ser copiados para os arquivos com esses nomes correspondentes ao firewall que pretendemos utilizar. Copie:

# cp iptables_block.sh /usr/bin/guardian_block.sh
# cp iptables_unblock.sh /usr/bin/guardian_unblock.sh
# chmod 755 /usr/bin/guardian_block.sh /usr/bin/guardian_unblock.sh
# cd ..
# cp guardian.pl /usr/bin
# chmod 755 /usr/bin/guardian.pl
# cp guardian.conf /etc/

Vamos configurar alguns parâmetros no guardian.conf:

Interface eth0 #Interface eth0, a que terá os terminais bloqueados
AlertFile /var/adm/secure #Mude para /var/log/snort/alert
TimeLimit 86400 #Mude para um valor em segundos que pretendemos que o endereço IP fique bloqueado pela firewall. O valor 99999999 remove esta opção.

Crie o arquivo de log do guardian:

# touch /var/log/guardian.log

Crie o arquivo guardian.ignore com os endereços IP que se pretende ignorar:

# touch /etc/guardian.ignore

Inicie o Guardian:

# guardian.pl -c /etc/guardian.conf

Caso retorne um erro relacionado a seu IP, ex.:

Warning! HostIpAddr undefined!
Attempting to guess...

Abra o arquivo /etc/guardian.conf, no começo do arquivo, descomente a linha:

# HostIpAddr

Deixando assim:

HostIpAddr SEUIP

Ex.: HostIpAddr 192.168.0.102

Agora, tente de novo iniciar o Guardian...

Para visualizar o log use:

# tail -f /var/log/snort/alert

Uma observação importante é que o Snort, com o pacote básico das regras, gera muitos falsos positivos, porém serve muito bem! Exstem também regras para serem compradas prontas, oque geraria um maior nivel de precisão.


Fonte: VOL