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 switch possui uma tabela CAM (Content Address Memory) que vincula os endereços MAC às portas do switch. Ou seja, esta tabela mostra quais endereços MAC são aceitos em qual porta. A tabela em si tem um tamanho limitado, por exemplo, para o switch Cisco Catalyst 2960, a tabela pode armazenar até 8192 endereços MAC, e o Catalyst série 6000 pode armazenar até 128.000 endereços MAC.
Se a tabela estiver totalmente ocupada, os novos registros não poderão ser adicionados e todo o tráfego será enviado para todas as portas. Nesse caso, o switch começará a funcionar como um hub normal, e todo o tráfego que passa por esse segmento de rede pode ser ouvido da mesma maneira que usamos na seção anterior, usando o Utilitário Wireshark. É claro que um invasor não pode ouvir todo o tráfego na rede local dessa maneira, mas um insider trabalhando em um segmento da rede, por exemplo, com contabilidade, poderá interceptar o tráfego e obter informações confidenciais.
Este ataque pode ser realizado usando o utilitário macchanger, que permite alterar endereços MAC.
Um exemplo é a substituição de um endereço MAC em uma máquina conectada a um switch.
root@kali:~# ifup eth0
Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/ Listening on LPF/eth0/00:16:ec:f1:45:e8
Sending on LPF/eth0/00:16:ec:f1:45:e8
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3
DHCPOFFER of 192.168.1.3 from 192.168.1.101
DHCPREQUEST of 192.168.1.3 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.3 from 192.168.1.101
bound to 192.168.1.3 -- renewal in 42928 seconds.
if-up.d/mountnfs[eth0]: waiting for interface eth1 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface eth2 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface ath0 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface wlan0 before doing NFS mounts
Quando ativado, um pedido foi enviado para obter um endereço IP para o servidor DHCP. Em seguida, veja o estado atual das interfaces de rede.
root@kali:~# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:16:ec:f1:45:e8
inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::216:ecff:fef1:45e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3952 (3.9 KB) TX bytes:1780 (1.7 KB)
Interrupt:21 Base address:0xd800
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
O endereço MAC atual da nossa interface de rede é 00:16:ec:f1: 45: e8. Este é o endereço que está escrito na tabela CAM do switch. Vamos mudar esse endereço.
root@kali:~# macchanger –r eth0
Current MAC: 00:16:ec:f1:45:e8 (unknown)
Faked MAC: 04:2f:11:65:fc:0a (unknown)
Redefinindo a interface de rede:
root@kali:~# ifdown eth0
root@kali:~# ifup eth0
Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/ Listening on LPF/eth0/04:2f:11:65:fc:0a
Sending on LPF/eth0/04:2f:11:65:fc:0a
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 3
DHCPOFFER of 192.168.1.8 from 192.168.1.101
DHCPREQUEST of 192.168.1.8 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.8 from 192.168.1.101
bound to 192.168.1.8 -- renewal in 42928 seconds.
if-up.d/mountnfs[eth0]: waiting for interface eth1 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface eth2 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface ath0 before doing NFS mounts
if-up.d/mountnfs[eth0]: waiting for interface wlan0 before doing NFS mounts
Снова посмотрим конфигурацию сетевых интерфейсов.
root@kali:~# ifconfig -a
eth0 Link encap:Ethernet HWaddr : 04:2f:11:65:fc:0a
inet addr:192.168.1.8 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::216:ecff:fef1:45e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5801 (5.9 KB) TX bytes:1100 (1.1 KB)
Interrupt:21 Base address:0xd800
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
O endereço MAC da interface eth0 foi alterado. Com um script simples, você pode fazer com que as ações de mudança de endereço MAC sejam executadas em um loop que será executado antes do estouro da tabela em si. Vou deixar a escrita desse roteiro para os assinantes do canal como lição de casa. Eu só vou notar que o utilitário macchanger ainda é útil para a implementação de ataques de rede.
Depois de identificar a ameaça, passemos aos métodos de defesa. Muitas diretrizes de segurança recomendam que você vincule rigidamente o endereço MAC da estação de trabalho à porta do switch ou limite o número de endereços MAC conectados à porta a um único endereço. Essas dicas são, é claro, corretas, mas você precisa ter cuidado, pois muitas vezes uma porta em um switch pode corresponder a vários endereços MAC. Por exemplo, um switch usa todas as portas, mas você precisa conectar mais alguns locais de trabalho a ele (devido à expansão ou, inversamente, à redução). A melhor solução nessa situação seria conectar outro switch a esse dado e reservar a porta de conexão do novo switch atrás do endereço MAC correspondente. No entanto, no ambiente econômico atual, muitas empresas preferem economizar e usar os mesmos hubs para conectar.
Há também casos em que várias estações de trabalho podem se conectar alternadamente a uma porta de switch. Por exemplo, isso é feito com frequência nas salas de reuniões. Portanto, eu aconselho você a não se envolver em "apertar porcas" excessivas ao configurar restrições de conexão em endereços MAC, a fim de evitar dificuldades adicionais no futuro.
Passemos agora à parte prática. Por exemplo, considere a configuração de um switch Cisco Catalyst 2960 com o sistema operacional IOS. Este modelo tem 24 portas às quais os usuários estão conectados. Você deve garantir que não mais do que três máquinas (em outras palavras, três endereços MAC) possam se conectar em cada porta. Para fazer isso, conecte-se ao switch remotamente ou usando o console e execute os seguintes comandos:
Switch# conf t
Switch(config)# int range f0/1-24
Switch(config-if-range)# switchport mode access
Switch(config-if-range)# switchport port-security
Switch(config-if-range)# switchport port-security violation shutdown
Switch(config-if-range)# switchport port-security maximum 3
Switch(config-if-range)# switchport port-security mac-address sticky
Agora, vamos falar um pouco sobre o que cada equipe está fazendo. Na primeira linha, vamos para o modo de configuração global, na segunda, vamos para o modo de configuração de portas. Na terceira, explicamos claramente que todos os
as portas selecionadas funcionarão no modo de acesso. Em seguida, inclua a proteção port-security. Nas três linhas seguintes, indicamos ao switch o que fazer quando mais de três estações de trabalho tentarem se conectar à porta. Primeiro, especifique que você precisa desativar a porta e enviar uma mensagem apropriada por snmp e syslog. By the way, esta opção não pode ser ativada à força, uma vez que funciona por padrão. Além do modo shutdown que usamos, também há protect e restrict. O significado dos dois últimos modos é que a porta não será desligada (isto é, entrará no estado shutdown), mas apenas os pacotes serão bloqueados se uma violação associada a endereços MAC for detectada. A diferença entre os dois modos é que, em caso de emergência, o restrict pode enviar uma mensagem snmp - trap e syslog sobre uma violação de política de segurança.
No comando seguinte ao switch, indicamos quantos endereços MAC estão dispostos a ver nesta porta. No nosso caso, são três. Finalmente, o último comando coloca a porta do Switch no modo de aprendizado, ou seja, os três primeiros endereços MAC que serão recebidos por essa porta e salvos automaticamente no running-config.
Então, para resumir, todos esses comandos são suficientes para evitar um ataque de estouro de tabela CAM.
Присоединяйтесь — мы покажем вам много интересного
Присоединяйтесь к ОК, чтобы подписаться на группу и комментировать публикации.
Нет комментариев