200 likes | 510 Views
Honeypot. Faculdade de Engenharia da Universidade do Porto Mestrado em Redes e Serviços de Comunicação Trabalho de Segurança em Sistemas e Redes G8 – Luis, Paulo e Vitor. Tópicos. Introdução Definições Honeypots e Honeynets Honeyd Conclusão. Introdução.
E N D
Honeypot Faculdade de Engenharia da Universidade do Porto Mestrado em Redes e Serviços de Comunicação Trabalho de Segurança em Sistemas e Redes G8 – Luis, Paulo e Vitor
Tópicos • Introdução • Definições • Honeypots e Honeynets • Honeyd • Conclusão
Introdução • Porquê a necessidade de segurança • Uso generalizado de computadores e redes • Dados críticos das organizações • Acesso generalizado à informação • Existência de “espionagem” empresarial • Crescente número de ferramentas de “hacking” Aumento do investimento em segurança
Introdução • Tradicionalmente: • A segurança informática é defensiva: • Firewalls, • Intrusion Detection Systems, • Encriptação, • Passwords, • Outros mecanismos de defesa…. • …mas também reactiva: • A estratégia é delineada para responder a um ataque feito através de falhas na segurança • É despoletado um conjunto de passos para que no futuro essas falhas sejam colmatadas PROBLEMA! O inimigo dá sempre o 1º passo SOLUÇÃO?! HONEYPOT
DEFINIÇÕES • Honeypots são recursos computacionais dedicados com as seguintes características: • Podem ser atacados ou comprometidos, • Actuam num ambiente que permita o registo e controle dessas actividades. • Honeynets são redes compostas por: • uma sub-rede de administração e • por uma sub-rede de honeypots …. é um tipo de honeypot.
Honeypots e Honeynets • Honeynets de pesquisa são ferramentas de pesquisa que podem ser utilizadas para observar o comportamento dos invasores ou atacantes, permitindo obter análises detalhadas das suas motivações, das ferramentas utilizadas e das vulnerabilidades exploradas. • Honeypots de produção podem ser utilizados em redes de produção como complemento ou no lugar de sistemas de detecção de intrusão.
Tipos de Honeypots • Baixa interactividade: • Emulam serviços e S.O. (e.g.:Honeyd); • Atacantes não tem acesso à máquina real; • Por serem razoavelmente seguros, são apropriados para redes de produção; • Excelentes complementos para Sistemas de Detecção de Intrusão (SDI). • Alta interactividade: • Serviços legítimos; • Atacante pode assumir o controlo total do honeypot; • Cuidados especiais para evitar que sejam usados para lançamento de ataques; • Difíceis de administrar e manter.
Honeyd “A framework for virtual honeypots, that simulates virtual computer systems at the network level.” Niels Provos, Honeyd: A Virtual Honeypot Daemon
Honeyd • Honeyd é um pequeno daemon que recria uma rede virtual composta por múltiplos hosts. • Essas máquinas podem ser configuradas para executarem determinados serviços em determinados sistemas operativos. • Um único host pode ter múltiplos endereços. • Melhora a segurança porque não só detecta potenciais ameaças como também “esconde” os sistemas reais no meio da rede virtual. • É possível “pingar” uma máquina virtual ou executar um traceroute. • Qualquer tipo de serviço pode ser emulado. • Pode ser usado para monitorar uma rede.
Honeyd - Características • Simula sistemas em endereços não alocados • Simula diversos hosts virtuais ao mesmo tempo • Permite a configuração de serviços arbitrários • Simula um SO no nível de pilha do TCP/IP • Engana o nmap • Suporta redireccionamento de serviços • Suporta somente os protocolos TCP, UDP e ICMP • Recebe o tráfego da rede: • Utilizando proxy ARP (arpd) • Através de roteamento específico para os endereços IP virtuais
Farpd • Fake ARP user space daemon • Este daemon responde a todos os pedidos ARP para a resolução de um IP com o endereço MAC de um dos interfaces do servidor após determinar que mais nenhum host na rede reivindicou esse IP. • Isto permite que um único host assuma todos os endereços IP livres de uma rede para sua monitorização ou por razões de simulação.
Exemplo Honeyd • Hosts e serviços configurados • Router Cisco 7206 • ssh – porta 22 tcp • telnet – porta 23 tcp • Host Windows XP SP1 • ftp – porta 21 tcp • ssh – porta 22 tcp • telnet – porta 23 tcp • smtp – porta 25 tcp • http – porta 80 tcp • pop3 – porta 111 tcp • Imap – porta 143 tcp • 3 Hosts SUSE Linux 7.0 • discard – porta 9 tcp • ssh – porta 22 tcp • telnet – porta 23 tcp • smtp – porta 25 tcp • http – porta 80 tcp
Exemplo Honeyd (cont.) • Exemplo de um template para uma máquina baseada no Windows XP: • create windowsxp • set windowsxp personality "Microsoft Windows XP Professional SP1" • set windowsxp uptime 1728650 • add windowsxp tcp port 80 "sh /usr/share/honeyd/scripts/win2k/iis.sh" • add windowsxp tcp port 22 "sh /usr/share/honeyd/scripts/test.sh $ipsrc $dport"
Exemplo Honeyd (cont.) • add windowsxp tcp port 143 "sh /usr/share/honeyd/scripts/win2k/exchange-imap.sh" • add windowsxp tcp port 23 proxy $ipsrc:23 • add windowsxp tcp port 21 "sh /usr/share/honeyd/scripts/win2k/msftp.sh" • add windowsxp tcp port 25 "sh /usr/share/honeyd/scripts/win2k/exchange-smtp.sh" • add windowsxp tcp port 111 "sh /usr/share/honeyd/scripts/win2k/exchange-pop3.sh"
Exemplo Honeyd (cont.) • Demonstração do tempo de espera do farpd até assumir o IP: • PING -c 10 193.136.29.123 PING 193.136.29.123 (193.136.29.123) from 172.16.1.42 : 56(84) bytes of data. 64 bytes from 193.136.29.123: icmp_seq=1 ttl=123 time=2002 ms 64 bytes from 193.136.29.123: icmp_seq=2 ttl=123 time=990 ms 64 bytes from 193.136.29.123: icmp_seq=3 ttl=123 time=12.9 ms 64 bytes from 193.136.29.123: icmp_seq=4 ttl=123 time=5.66 ms 64 bytes from 193.136.29.123: icmp_seq=5 ttl=123 time=4.63 ms 64 bytes from 193.136.29.123: icmp_seq=6 ttl=123 time=4.85 ms 64 bytes from 193.136.29.123: icmp_seq=7 ttl=123 time=5.74 ms 64 bytes from 193.136.29.123: icmp_seq=8 ttl=123 time=8.09 ms 64 bytes from 193.136.29.123: icmp_seq=9 ttl=123 time=5.86 ms 64 bytes from 193.136.29.123: icmp_seq=10 ttl=123 time=8.98 ms
Exemplo Honeyd (cont.) • Usando o nmap para fazer um SYN Stealth Scan ao host virtual que simula um router Cisco 7206: • nmap -v -sS 193.136.29.121 Starting nmap V. 2.54BETA31 ( www.insecure.org/nmap/ ) Host (193.136.29.121) appears to be up ... good. Initiating SYN Stealth Scan against (193.136.29.121) Adding open port 22/tcp Adding open port 23/tcp The SYN Stealth Scan took 2680 second to scan 1554 ports. Interesting ports on (193.136.29.121): (The 1552 ports scanned but not shown below are in state: filtered) Port State Service 22/tcp open ssh 23/tcp open telnet Nmap run completed -- 1 IP address (1 host up) scanned in 2681 seconds • Nota: 2680segundos ~= 45 minutos
Exemplo Honeyd (cont.) • Exemplo do log do honeyd: 2004-04-30-21:28:18.0948 tcp(6) - 61.221.218.137 3091 193.136.29.107 80: 48 S [Windows XP SP1] 2004-04-30-21:28:24.0506 tcp(6) - 211.228.154.195 2067 193.136.29.103 1433: 48 S [Windows 2000 SP4] 2004-04-30-21:28:25.0441 tcp(6) - 211.228.154.195 2067 193.136.29.103 1433: 48 S [Windows 2000 SP4] 2004-04-30-21:31:06.0694 tcp(6) - 81.44.209.217 3927 193.136.29.120 1433: 48 S [Windows XP SP1] 2004-04-30-21:31:07.0835 tcp(6) - 81.44.209.217 3927 193.136.29.120 1433: 48 S [Windows XP SP1] 2004-04-30-21:32:18.0989 tcp(6) - 63.205.245.58 3422 193.136.29.122 1025: 48 S [Windows 2000 SP4] 2004-04-30-21:32:21.0973 tcp(6) - 63.205.245.58 3422 193.136.29.122 1025: 48 S [Windows 2000 SP4] 2004-04-30-21:32:59.0539 icmp(1) - 169.132.44.121 193.136.29.101: 8(0): 92 2004-04-30-21:33:06.0481 tcp(6) - 83.36.47.228 4304 193.136.29.107 3127: 48 S [Windows 98 ] 2004-04-30-21:33:09.0474 tcp(6) - 83.36.47.228 4304 193.136.29.107 3127: 48 S [Windows 98 ] 2004-04-30-21:33:15.0525 tcp(6) - 83.36.47.228 4304 193.136.29.107 3127: 48 S [Windows 98 ] 2004-04-30-21:34:05.0792 tcp(6) - 82.43.49.155 3472 193.136.29.107 1433: 48 S [Windows XP SP1] 2004-04-30-21:34:08.0756 tcp(6) - 82.43.49.155 3472 193.136.29.107 1433: 48 S [Windows XP SP1] 2004-04-30-21:35:21.0214 tcp(6) - 83.97.200.235 4472 193.136.29.107 3127: 48 S 2004-04-30-21:35:23.0728 tcp(6) - 83.97.200.235 4472 193.136.29.107 3127: 48 S 2004-04-30-21:35:29.0749 tcp(6) - 83.97.200.235 4472 193.136.29.107 3127: 48 S 2004-04-30-21:38:16.0505 tcp(6) - 193.249.43.169 4625 193.136.29.124 1025: 48 S [Windows XP SP1] 2004-04-30-21:38:16.0505 tcp(6) - 193.249.43.169 4634 193.136.29.124 6129: 48 S [Windows XP SP1] 2004-04-30-21:38:16.0506 tcp(6) - 193.249.43.169 4642 193.136.29.124 80: 48 S [Windows XP SP1] 2004-04-30-21:38:17.0972 tcp(6) - 193.249.43.169 4625 193.136.29.124 1025: 48 S [Windows XP SP1] 2004-04-30-21:38:18.0238 tcp(6) - 193.249.43.169 4600 193.136.29.124 2745: 48 S [Windows XP SP1] 2004-04-30-21:38:23.0543 tcp(6) - 193.249.43.169 4633 193.136.29.124 3127: 48 S [Windows XP SP1] 2004-04-30-21:38:23.0782 tcp(6) - 193.249.43.169 4634 193.136.29.124 6129: 48 S [Windows XP SP1] 2004-04-30-21:38:23.0782 tcp(6) - 193.249.43.169 4625 193.136.29.124 1025: 48 S [Windows XP SP1] 2004-04-30-21:38:24.0563 tcp(6) - 193.249.43.169 4600 193.136.29.124 2745: 48 S [Windows XP SP1] 2004-04-30-21:39:19.0668 tcp(6) - 211.3.143.215 3630 193.136.29.104 80: 48 S [Windows XP SP1]
O nosso projecto • Melhorias a implementar • desenho de uma rede virtual com várias sub-redes virtuais, activando o roteamento adequado entre elas; • simulação de mais serviços e com scripts ainda mais fieis aos originais. • Trabalho futuro • desenvolvimento de um script para extracção estruturada de informação do ficheiro de log.
Bibliografia • Honeyd • http://www.honeyd.org/ • http://www.citi.umich.edu/u/provos/honeyd/ • Honeyd: A Virtual Honeypot Daemon (Extended Abstract) • http://niels.xtdnet.nl/papers/honeyd-eabstract.pdf