[1] O documento discute ferramentas de software livre (GPL) para segurança de redes de computadores. [2] Ele descreve ferramentas como proxy web (Squid), firewall (Iptables), VPN (OpenVPN), scanner de portas (Nmap), scanner de vulnerabilidades (Nessus) e verificador de senhas (John the Ripper). [3] O documento fornece exemplos e detalhes técnicos sobre como configurar e usar essas ferramentas de forma a melhorar a segurança de redes.
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
1. Ferramentas GPL para a segurança de Redes de Computadores
Vanderlei Pollon
Email: vanderlei@pollon.org
Website: www.pollon.org
1º Seminário de Software Livre Tchelinux - Edição Erechim - 23 de Junho de 2007
3. Objetivo deste trabalho
Fornecer uma visão geral das principais ferramentas GPL
relacionadas à segurança de Redes de Computadores.
Objective of this work
To supply a general vision of main related tools GPL to the
security of Computer networks.
Ferramentas GPL para a segurança de Redes de Computadores
4. O que é GPL?
GNU General Public License (Licença Pública Geral), GNU GPL ou
simplesmente GPL, é a designação da licença para software livre
idealizada por Richard Stallman no final da década de 1980, no
âmbito do projecto GNU da Free Software Foundation (FSF).
Em termos gerais, a GPL baseia-se em 4 liberdades:
1. A liberdade de executar o programa, para qualquer propósito.
2. A liberdade de estudar como o programa funciona e adaptá-lo
para as suas necessidades. O acesso ao código-fonte é um pré-
requisito para esta liberdade.
3. A liberdade de redistribuir cópias de modo que você possa
ajudar ao seu próximo.
4. A liberdade de aperfeiçoar o programa, e liberar os seus
aperfeiçoamentos, de modo que toda a comunidade se beneficie
deles. O acesso ao código-fonte é um pré-requisito para esta
liberdade.
Acesse http://www.gnu.org/licenses/gpl.html para ver o texto completo.
Ferramentas GPL para a segurança de Redes de Computadores
5. Proxy web: squid
Algumas possibilidades:
> caching http
Clientes > logs de acesso
(Browser) > autenticação
> bloqueio de URLS
Plataformas:
Servidor > BSD
> Linux
www.squid-cache.org
Complementos
> sarg
> logrotate
> squid-auth
> apache
Proxy – uma máquina com duas
placas de rede
Ferramentas GPL para a segurança de Redes de Computadores
6. Exemplo de relatório gerado pelo sarg (1)
Ferramentas GPL para a segurança de Redes de Computadores
7. Exemplo de relatório gerado pelo sarg (2)
Ferramentas GPL para a segurança de Redes de Computadores
8. Exemplo de logs rotacionadas pelo logrotate
[root@l002 daily]# ls -l /var/log/squid
total 12244
-rw-r--r-- 1 proxy proxy 2707272 Feb 25 12:32 access.log
-rw-r--r-- 1 proxy proxy 9688997 Feb 23 04:01 access.log.0
-rw-r--r-- 1 proxy proxy 35280 Feb 15 04:02 access.log.1
-rw-r--r-- 1 proxy proxy 9795 Feb 25 11:41 cache.log
-rw-r--r-- 1 proxy proxy 56657 Feb 23 04:23 cache.log.0
-rw-r--r-- 1 proxy proxy 7739 Feb 16 04:23 cache.log.1
Ferramentas GPL para a segurança de Redes de Computadores
9. Firewall: iptables
Algumas possibilidades:
> filtro de pacotes na saída
> filtro de pacotes na entrada
> logs dos pacotes
> NAT (todos os tipos)
Plataformas:
> BSD
> Linux
http://www.netfilter.org
Complementos
> sarg
> logrotate
Ferramentas GPL para a segurança de Redes de Computadores
10. Iptables: criando regras pela linha de comando
Algumas regras simples para o iptables:
Todas as portas
➔
#/sbin/iptables -A INPUT -p tcp –syn -j DROP
da máquina
estão fechadas.
➔
#/sbin/iptables -A INPUT -p tcp –syn –destination-port 22 -j ACCEPT
#/sbin /iptables -A INPUT -p tcp –syn -j DROP
Todas as portas
da máquina,
exceto a 22,
estão fechadas.
Ferramentas GPL para a segurança de Redes de Computadores
11. Firewall Builder: interface gráfica para o iptables
Plataformas:
> BSD www.fwbuilder.org
> Linux
> Windows (sygwin + qt)
Ferramentas GPL para a segurança de Redes de Computadores
12. Firewall Builder: interface gráfica para o iptables
Ferramentas GPL para a segurança de Redes de Computadores
13. VPN: OpenVPN
Algumas possibilidades:
> implementação simplificada
> suporte a NAT
> multiplataforma
> transparente aos usuários
> tunelamento IP ou em modo bridge
Plataformas:
> Linux
> Windows 2000/XP (e mais novos)
> OpenBSD
> NetBSD
> FreeBSD
> Mac OS X
> Solaris
http://openvpn.net
Complemento
> logrotate
* Você pode obter detalhes sobre a configuração
do OpenVPN no Linux e no Windows em
http://pollon.org/download3/pelotas2007/11_OpenVPN.pdf
Ferramentas GPL para a segurança de Redes de Computadores
14. KVpnc: interface gráfica para o OpenVPN
Kvpnc
(linux)
Outras interfaces:
> OpenVPN-Admin (L,W)
> Open VPN GUI (W)
> Open VPN-Control (L,W)
> Kovpn (L,W)
Ferramentas GPL para a segurança de Redes de Computadores
15. Verificação de integridade: aide
FUNCIONAMENTO
=> selecionar os diretórios que deverão ser protegidos
=> definir as regras de proteção
=> “fotografar” os diretórios que serão protegidos
=> gerar um hash dos arquivos básicos do Aide: conf,
db, binário e setor de boot
Plataformas:
> Linux Software necessário
> AIX > aide (Advanced Intrusion
> OpenBSD Detection Environment)
> NetBSD
> FreeBSD
> Mac OS X > http://sourceforge.net/projects/aide
> Solaris
Ferramentas GPL para a segurança de Redes de Computadores
16. Exemplos de assinaturas do AIDE
=>#aide-gera-md5-para-arquivar.sh
MD5 sum of /etc/aide.conf ..:
d68a8e95274ff866d2deb6980efea96d
MD5 sum of /usr/bin/aide ...:
d4317d10928c9a0b71f2e052c320d5a8
MD5 sum of /var/aide/aide.db:
bb74b2bad00af6d77219abf041d3c4b3
MD5 sum of boot sector .....:
bf619eac0cdf3f68d496ea9344137e8b
MD5 sum previous sums ......: Hash
5305aafe07abeb55da362460a3ed3997 MD5 de 256
bits
Ferramentas GPL para a segurança de Redes de Computadores
17. Verificando a integridade
#aide C Verificação
AIDE, version 0.10 ok :)
### All files match AIDE database. Looks okay!
#aide -C Verificação
AIDE found differences between database and filesystem!! não ok :(
Start timestamp: 2006-12-09 14:07:42
Summary:
Total number of files=9418,added files=0,removed files=0,changed
files=2
Changed files:
changed:/etc/adjtime
changed:/etc/BWOV019.tgz
Detailed information about changes:
File: /etc/adjtime
Mtime: old = 2006-12-05 04:23:45, new = 2006-12-09 04:10:19
Ctime: old = 2006-12-05 04:23:45, new = 2006-12-09 04:10:19
MD5: old = aJzARt+pdAkkRp3Fdr9Ivg== , new = s1XUSitvaWyaUtfM50cfIA==
File: /etc/BWOV019.tgz
Mtime: old = 2006-12-05 07:47:26, new = 2006-12-09 07:49:51
Ctime: old = 2006-12-05 07:47:26, new = 2006-12-09 07:49:51
MD5: old = g4/H2GJhhPOabVZJcvVs+A== , new = lv5AdKztxr2DpEJaU/ztJA==
Ferramentas GPL para a segurança de Redes de Computadores
18. Varredura de portas (scanner): nmap
Algumas possibilidades: Plataformas:
> determinar quais hosts estão disponíveis na rede > Linux
> determinar quais serviços os hosts da rede estão oferecendo > Windows 95 (e mais novos)
> determinar quais os sistemas operacionais dos hosts > OpenBSD
> determinar qual o firewall que os hosts estão utilizando > NetBSD
> ... > FreeBSD
> Mac OS
Site oficial -> http://insecure.org
Ferramentas GPL para a segurança de Redes de Computadores
19. nmap: exemplos de utilização
Descobrir o
[root@lx04 tmp]# nmap -O 10.2.176.148 sistema
operacional
Starting nmap V. 3.00 ( www.insecure.org/nmap/ ) do alvo
Interesting ports on (10.2.176.148):
(The 1598 ports scanned but not shown below are in state: closed)
Port State Service
22/tcp open ssh
80/tcp open http
3306/tcp open mysql O sistema
Remote operating system guess: Linux Kernel 2.4.0 - 2.5.20 operacional
Uptime 157 days (since Wed Dec 10 16:58:44 2006) do alvo
Nmap run completed -- 1 IP address (1 host up) scanned in 9 seconds
[root@lx04 tmp]# nmap lua.ceu
Interesting ports on lua.ceu (10.25.25.25):
Not shown: 1693 filtered ports Há um firewall
PORT STATE SERVICE filtrando
22/tcp open ssh as portas
80/tcp open http
443/tcp open https
515/tcp open printer
Nmap finished: 1 IP address (1 host up) scanned in 1222.659 seconds
Ferramentas GPL para a segurança de Redes de Computadores
20. nmap: a interface gráfica
Ferramentas GPL para a segurança de Redes de Computadores
21. Scanner para vulnerabilidades e auditoria de redes: nessus
Algumas possibilidades:
> efetua uma varredura em uma máquina ou em toda uma sub-rede;
> relaciona as possíveis falhas de segurança encontradas;
> classifica as falhas de segurança encontradas;
> informa como as falhas de segurança poderiam ser utilizadas por um
atacante;
> sugere correções para as vulnerabilidades encontradas;
> utiliza plugins (para fácil atualização);
> possui uma interface gráfica.
Plataformas (todas 32 bits): Licenciamento:
> Linux > versões anteriores a 3 (GPL)
> FreeBSD > versões maiores que 3 comercial
> Mac OS X (os binários, para uso interno, são
> Solaris gratuitos)
> Windows XP/2000/2003
http://www.nessus.org
Ferramentas GPL para a segurança de Redes de Computadores
22. Scanner para vulnerabilidades e auditoria de redes: nessus
Ferramentas GPL para a segurança de Redes de Computadores
24. Scanner para vulnerabilidades e auditoria de redes: nessus
Ferramentas GPL para a segurança de Redes de Computadores
25. Verificador de senhas fracas: John the ripper
Plataformas suportadas:
Um utilitário do tipo “Brute force” local > Linux
> Windows 95(e mais novos)
> NetBSD
> OpenBSD
> FreeBSD
Algumas possibilidades: > BeOS
> MacOS X
> testar as senhas dos usuários dos servidores
> recuperar senhas perdidas
Dicas de utilização:
> ler os manuais e entender como funciona o arquivo de configuração
> fornecer pistas ao john acelera a obtenção dos resultados
> a redução do tamanho dos arquivos, reduz o tempo de processamento
> existem listas de palavras (dicionários) disponíveis na Internet que podem
ser utilizadas como auxílio
Site oficial -> http://www.openwall.com/john
Ferramentas GPL para a segurança de Redes de Computadores
26. John the ripper: formas de utilização no Linux
#john /etc/shadow
Loaded 8 passwords with 8 different salts (FreeBSD MD5 [32/32])
ovo (ovo)
3resu (user3)
user22 (user2)
1user (user1)
guesses: 4 time: 0:00:00:07 8% (2) c/s: 6476 trying: gocougs1
guesses: 4 time: 0:00:00:25 33% (2) c/s: 6475 trying: safety6
Session aborted
#john - -wordfile=dicionario.lst /etc/shadow
Loaded 5 passwords with 5 different salts (FreeBSD MD5 [32/32])
mimosa (user4)
mimosa (tunia)
cachorro (user3)
guesses: 3 time: 0:00:00:00 100% c/s: 46.00 trying:
Ferramentas GPL para a segurança de Redes de Computadores
27. John the ripper: formas de utilização no Windows
Ferramentas GPL para a segurança de Redes de Computadores
28. Monitor gráfico de rede: EtherApe
monitora graficamente a atividade da rede
os hosts e os links mudam de tamanho conforme o tráfico
os protocolos são mostrados por cores diferentes
possui suporte a Ethernet, FDDI, Token Ring, ISDN, PPP e SLIP
suporta filtro em relação aos protocolos a serem mostrados
pode fornecer o gráfico com endereços IP, nomes ou MAC
Algumas possibilidades:
> visualizar rapidamente o tráfego entre máquinas
> visualizar protocolos não autorizados na rede
Plataformas suportadas:
> Linux
> NetBSD
> OpenBSD
> FreeBSD
Site oficial -> http://etherape.sourceforge.net
Ferramentas GPL para a segurança de Redes de Computadores
31. Backup dos servidores da rede: Bacula
software de backup multiplataforma
modelo cliente/servidor
pode fazer backups para fitas e discos
fácil de utilizar
Plataformas suportadas para servidores
e clientes:
> Linux
> Solaris
> FreeBSD
> MacOS X
> True64 Licenças:
Plataformas suportadas > FDL
apenas para clientes: > GPL
> LGPL
> Win98/Me, WinNT/2K/XP > Public Domain
> Windows Servers > Trademark ( o nome Bacula)
> OpenBSD > FSFE License
> Irix
Site oficial -> http://www.bacula.org
Ferramentas GPL para a segurança de Redes de Computadores
32. Bacula – esquema genérico do servidor
Ferramentas GPL para a segurança de Redes de Computadores
33. Analisador de protocolos de rede: Ethereal
monitora o tráfego de pacotes na rede
ferramenta útil no diagnóstico de problemas
suporta atualmente mais de 750 protocolos
restrito ao domínio de broadcast
disponibiliza os resultados através de uma interface gráfica
suporta a aplicação de filtros de captura e/ou display
pode analisar arquivos gerados por outros capturadores de pacotes
Plataformas suportadas:
> Win98/Me, WinNT/2K/XP
> Windows 2000/2003
> OpenBSD
> FreeBSD
> NetBSD
> Linux
Site oficial -> http://www.ethereal.com
Ferramentas GPL para a segurança de Redes de Computadores
34. A interface do Ethereal
Ferramentas GPL para a segurança de Redes de Computadores
35. Steganografia: JPHide e JPSeek
permite que arquivos sejam ocultos dentro de imagens
permite que os dados ocultos sejam criptografados (blowfish)
pode ser detectado por ferramentas comerciais de stegoanálise
algumas vezes há incompatibilidade de versões
Plataformas suportadas:
Licença:
> Linux
> Win98/Me, WinNT/2K/XP > Freeware
> Windows 2000/2003
Site oficial > http://linux01.gwdg.de/~alatham/stego.html
Ferramentas GPL para a segurança de Redes de Computadores
36. Utilizando o JPHide e JPSeek
Windows
Linux
>#jphide input-jpeg-file output-jpeg-file file-to-be-hidden
>#jpseek input-jpeg-file output-hidden-file
Ferramentas GPL para a segurança de Redes de Computadores
37. IDS (Intrusion Prevention and Detection System): snort
registra em logs as anomalias encontradas no sistema
detecta uma variedade de ataques como: buffer overflows,
scanners furtivos, ataques de CGI varreduras de nmap e outros
Complementos:
> swatch
Monitorador de logs. Pode ser programado para tomar
certas providências quando certa ocorrência é
encontrada em determinada log.
> ACID
Analysis Console for Incident Databases. Útil para
administrar o snort por interface gráfica.
Plataformas:
> BSD
> Linux
> Windows Site oficial-> http://www.snort.org
Ferramentas GPL para a segurança de Redes de Computadores
38. A interface do ACID
Ferramentas GPL para a segurança de Redes de Computadores
39. Auditoria para redes wireless: Aircrack
suporte aos padrões 802.11(a/b/g)
considerada melhor que o Airsnort
composto por 4 ferramentas: airodump, aireplay, aircrack e airdecap
airodump: utilizado para capturar pacotes 802.11
aireplay: utilizado para injetar pacotes 802.11 (linux)
aircrack: cracker para chaves WEP e WPA-PSK
airdecap: utilizado para decriptar arquivos WEP/WPA
Plataformas suportadas:
> Linux
> Windows
Site oficial > www.aircrackng.org
Ferramentas GPL para a segurança de Redes de Computadores
41. Outra ferramenta para auditoria para redes: dsniff
coleção de ferramentas para auditoria e testes de penetração
dsniff, filesnarf, mailsnarf, msgsnarf, urlsnarf e webspy monitoram
rede procurando dados (senhas, e-mail, arquivos,...)
arpspoof, dnsspoof e macof facilitam a interceptação do tráfego da red
onde existem switches.
sshmitm e webmitm implementam ataques “monkey-in-the-middle”
contra SSH e sessões HTTPS.
Plataformas suportadas:
> Linux
> Windows
Site oficial > http://www.monkey.org/~dugsong/dsniff/
Ferramentas GPL para a segurança de Redes de Computadores
42. Funcionamento do Dsniff
A interface gráfica
# dsniff -i eth1 A linha de comando
dsniff: listening on eth1
Esquema de captura
Ferramentas GPL para a segurança de Redes de Computadores
43. Privacidade no e-mail: spammimic
ferramenta acessível via browser para esteganografia e criptografia de
e-mails
não necessita instalação de cliente
a mensagem de e-mail é camuflada para parecer um spam
funciona bem para mensagens curtas
Site oficial > https://www.spammimic.com
Ferramentas GPL para a segurança de Redes de Computadores
46. Perguntas?
Esta apresentação estará disponível em:
www.tchelinux.org
www.pollon.org
Obrigado !!!
Ferramentas GPL para a segurança de Redes de Computadores