Você está na página 1de 16

Segurança de redes –

conceitos e tecnologia

Paulo Gabriel © Soares


2010

Segurança de Redes
Interligando Redes
 Para que diversas redes comuniquem, é necessária a
presença de um determinado tipo de componente: o
router. É o responsável pela comunicação de dados entre
redes distintas.
 Desempenha esta tarefa analisando os campos de
endereço origem e destino, a tabela de rotas e enviando o
pacote pelo caminho presente na tabela (rota) ou pelo
melhor caminho (caso existam várias rotas para um
mesmo destino, e caso o router seja dinâmico).
 Em conjunto com o endereço físico das placas de rede, o
endereçamento lógico, usado pelos routers, pode ser
determinado manualmente. Já o endereço físico não, é
Paulo Soares
Interligando Redes
 Então temos um problema: se trocarmos a placa de rede ao
computador este não conseguirá comunicar na rede. Isto seria
verdade se não existisse o endereçamento lógico, pois ao
trocarmos a interface de rede, todas as tabelas de encaminhamento
teriam de ser trocadas, pois o endereço mudou e porque o
endereço físico não possui nenhuma característica hierárquica.
 Para resolver o problema, as pilhas e o protocolo criaram uma
associação entre o endereço físico e o lógico. Tomemos como
exemplo a pilha de protocolos TCP/IP. Nela existe um protocolo
chamado ARP (Address Resolution Protocol), responsável por
descobrir endereços físicos e associá-los a endereços lógicos.
 Funciona da seguinte forma:

Paulo Soares
Interligando Redes
Dois computadores numa mesma rede:
1. Computador A deseja comunicar com computador B
2. Computador A envia uma chamada ARP para a rede, para todos
os computadores, perguntando “Qual o endereço físico do computador que
possui endereço lógico xpto?”
3. Computador xpto ouve e responde: “o meu endereço físico é zpto!”
4. A partir deste momento, o computador A poderá enviar os
pacotes directamente para o computador B, pois todas as
informações de endereçamento estão presentes (endereço físico e
lógico dele próprio, e do destino).

Paulo Soares
Interligando Redes
Computadores em redes diferentes
1. Computador A deseja comunicar com computador B
2. Computador A verifica o endereço lógico do computador B, e
constata que o mesmo NÃO está na mesma sub-rede que ele
próprio
3. Computador A então tenta enviar o pacote para o seu router
4. Computador A estabelece comunicação com o router
5. Router estabelece comunicação com computador B

Paulo Soares
Interligando Redes
Perceber a diferença...

 Os endereços físicos só são importantes dentro da mesma rede,


justamente porque não existe hierarquia no seu formato.

 Contudo, através do endereço lógico, o computador A pode


determinar que o computador B não pertencia à sua rede, e enviou
o pacote para o componente responsável pela interligação de redes:
o router, que por sua vez, sabia para onde enviar o pacote, de forma
que o mesmo chegasse ao computador B.

 Caso o router não possuísse esta informação, retornaria uma


mensagem para o computador A, dizendo: “rede destino
inalcançável”.

Paulo Soares
Interligando Redes
TCP/IP  pilha de protocolos
 Ao contrário do que muitos acham, não é apenas um protocolo de
comunicação, mas uma pilha deles. Esta pilha de linguagens de
comunicação permite que todas as camadas de comunicação em rede
sejam atendidas e a comunicação seja possível.
 Todas as pilhas de protocolo, de uma forma ou de outra, tem de atender
a todas as camadas, para permitir que os computadores consigam trocar
informações. Podemos fazer uma analogia de uma pilha de protocolos
com a comunicação verbal.
 Se alguém fala com outra pessoa e esta o entende, é porque todas as
camadas para que a “fala” seja interpretada foram atendidas. Imagine,
para que duas pessoas comuniquem verbalmente, será necessário:

Paulo Soares
Interligando Redes
TCP/IP  pilha de protocolos

 1. Que ambas saibam o mesmo idioma


 2. Que ambas tenham toda a estrutura fisiológica para que
emitam som (voz – cordas vocais, língua, garganta, pulmões
 3. Que ambas possuam toda a estrutura fisiológica para que
ouçam o som (orelha, ouvido interno, tímpanos, etc.)

◦ Nesta pilha de protocolos, temos como mais importantes:

ARP (Address Resolution Protocol)


 O ARP é o protocolo responsável pelo mapeamento ou associação

do endereço físico ao endereço lógico, de computadores numa


mesma rede.

Paulo Soares
Interligando Redes
TCP/IP  pilha de protocolos

IP
 O Internet protocol é o responsável pelo endereçamento lógico de
pacotes TCP/IP. Além disso, é responsável pelo encaminhamento
destes pacotes e sua fragmentação, caso a rede seguinte não possa
interpretar pacotes do mesmo tamanho.

ICMP (Internet Control Message Protocol)


 A função do ICMP é basicamente de diagnóstico e tratamento de

mensagens. Através dele é possível determinar, por exemplo, quanto


tempo um pacote pode demorar para ir a uma máquina remota e
voltar (round trip), bem como determinar se houve perda de pacotes
durante a transmissão.
 Também é possível determinar qual o caminho que um pacote segue a

partir de uma máquina.

Paulo Soares
Interligando Redes
TCP/IP  pilha de protocolos

TCP (Transmission Control Protocol)


 É um protocolo de transporte, responsável pela entrega correcta dos

pacotes. A principal característica é a confiabilidade. Para cada pacote


ou conjunto de pacotes que envia, espera do destinatário uma
confirmação da chegada dos mesmos. Caso isso não ocorra, ou o
pacote chegue corrompido, tratará de efectuar a retransmissão.

Também coloca nos pacotes um


número de sequência, para que o
destino possa “agrupar” o dado
original, caso os pacotes sigam por
caminhos diferentes ou cheguem
atrasados (fora de ordem).

Paulo Soares
Interligando Redes
TCP/IP  pilha de protocolos

UDP (User Datagram Protocol)


 O UDP assim como o TCP, também é um protocolo de transporte.

Contudo, não possui nenhuma verificação de erros ou confirmação de


entrega. É muito utilizado em aplicações que necessitem de tráfego
urgente, e não sejam tão sensíveis a algumas perdas de pacotes.
 Exemplos de aplicações que usam UDP como transporte: transmissão
de áudio e vídeo pela rede (RealPlayer ou Media Player), jogos online
(Quake, Half-Life). Pela falta do número de sequência ou confirmação,
o tráfego UDP é muito mais vulnerável em termos de segurança.

Paulo Soares
Interligando Redes
Protocolos de Aplicação
 Em cima da infra-estrutura fornecida pelos protocolos descritos até agora,
funcionam os protocolos de aplicação. Estes fazem a interface com o
utilizador, ou com a aplicação do utilizador.
 Exemplos de protocolos de aplicação: HTTP (HyperText Transfer Protocol),
FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol),
SNMP (Simple Network Management Protocol), POP3 (Post Office Protocol
v.3), TELNET, e assim por diante.
 Cada protocolo de aplicação comunica com a camada de transporte através de
portas de comunicação. Existem 65536 portas possíveis, e por convenção, as
portas de 1 a 1023 são conhecidas como “Well Known Port Numbers”, portas
privilegiadas ou portas baixas, que possuem serviços mais comuns
previamente associados.

Paulo Soares
Interligando Redes
Protocolos de Aplicação
 Cada protocolo de aplicação precisa de uma porta, TCP ou UDP, para
funcionar. Os mais antigos possuem as suas portas padrão já
determinadas. Exemplo:

Paulo Soares
Interligando Redes
Protocolos de Aplicação
 As portas acima de 1023 são denominadas portas altas e são usadas como “end
points”, ou pontos de “devolução” duma ligação. Ao ler o nosso correio
electrónico usamos um protocolo chamado POP3, que funciona na porta 110.
 O nosso computador estabelece uma ligação com o servidor de correio
electrónico na porta remota 110 e na 1026 (por exemplo) localmente.
 A porta local é na maioria dos protocolos uma porta acima de 1023, desde que
não esteja a ser usada.

DNS (Domain Name System)


 Idealizou-se uma forma mais fácil de gerir computadores ligados a uma rede

TCP/IP. Para estabelecer uma ligação devemos fornecer o endereço IP do


destino e o serviço que desejamos usar (no caso, a porta) e o transporte.
 O DNS foi concebido para evitar o transtorno de decorar dezenas de endereços

IP. Através dele, cada host recebe um nome, fácil de aprender, dentro de uma
hierarquia, o que ajuda ainda mais na hora de identificá-lo.

Paulo Soares
Interligando Redes
Sockets (de comunicação)
 Os sockets são a base para o estabelecimento da comunicação numa rede

TCP/IP. Através deles é que a transferência de dados torna-se possível. Cada


ligação é montada por um socket, que é composto de três informações:
◦ 1. endereçamento (origem e destino)
◦ 2. porta origem / destino
◦ 3. transporte

 Portanto, ao tentar ler o nosso correio electrónico, um socket será


estabelecido entre a nossa máquina e o servidor de correio. Para montá-lo,
precisamos:
◦ 1. do nosso endereço IP e do endereço IP destino
◦ 2. porta origem / destino (neste caso, porta destino 110, origem 1026)
◦ 3. transporte (TCP)

Paulo Soares
Interligando Redes
Utilitários para diagnosticar problemas

PING (Packet INternet Grouper)


 Utiliza o protocolo ICMP para diagnosticar o tempo de reposta entre dois

computadores ligados numa rede TCP/IP. A partir daí, pode-se ter uma
estimativa do tráfego (se o canal de comunicação está ou não saturado) bem
como o tempo de latência do canal. A latência dum link está directamente
ligada à velocidade do router (em termos de processamento) e não apenas à
velocidade do canal de comunicação.

TRACERT (traceroute)
 O tracert também utiliza pacotes ICMP (em máquinas Windows) para realizar

diagnósticos. Podemos determinar qual o caminho que os pacotes farão até


um host destino. A função do tracert é justamente essa: traçar a rota entre uma
origem e um destino. Vai mostrar todos os nós (routers).

Paulo Soares

Você também pode gostar