eth0 é arping de proxy, mas / proc / sys / net / ipv4 / conf / eth0 / proxy_arp é 0

5

Estou coçando minha cabeça sobre essa questão ... Eu tenho uma máquina debian squeeze que está conectada a uma rede interna de laboratório. Temos muitas máquinas que têm configurações padrão de proxy-arp e, ocasionalmente, uma dessas máquinas inicia o sequestro de vários endereços de laboratório.

Depois de resolver o último incidente do Proxy-ARP que derrubou a maior parte do nosso laboratório, encontrei algumas entradas residuais como essa em /var/log/syslog (abaixo). Para aqueles que não estão acostumados a ler arpwatch logs, a máquina que possui 00:11:43:d2:68:65 está lutando com 192.168.12.102 e 192.168.12.103 sobre quem possui esses endereços.

Sep 13 14:25:27 netwiki arpwatch: flip flop 192.168.12.103 00:11:43:d2:68:65 (84:2b:2b:4b:71:b4) eth0
Sep 13 14:26:24 netwiki arpwatch: flip flop 192.168.12.103 84:2b:2b:4b:71:b4 (00:11:43:d2:68:65) eth0
Sep 13 14:29:03 netwiki arpwatch: flip flop 192.168.12.102 00:26:b9:4e:d3:71 (00:11:43:d2:68:65) eth0
Sep 13 14:29:03 netwiki arpwatch: flip flop 192.168.12.102 00:11:43:d2:68:65 (00:26:b9:4e:d3:71) eth0

O mais alarmante é que 00:11:43:d2:68:65 pertence à mesma máquina em que eu estava executando arpwatch em ... Primeiro, validei que /proc/sys/net/ipv4/conf/eth0/proxy_arp é 0 . Em seguida, usei tshark para validar que minha máquina realmente está falsificando ARPs para outras pessoas ...

[mpenning@netwiki ~]$ ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:11:43:d2:68:65 brd ff:ff:ff:ff:ff:ff
    inet 192.168.12.239/24 brd 192.168.12.255 scope global eth0
    inet6 fe80::211:43ff:fed2:6865/64 scope link
       valid_lft forever preferred_lft forever
[mpenning@netwiki ~]$
[mpenning@netwiki ~]$ arp -an
? (192.168.12.46) at 00:15:c5:f5:81:9d [ether] on eth0
? (192.168.12.236) at 00:1e:c9:cd:46:c8 [ether] on eth0
? (10.211.180.1) at 00:1e:49:11:fe:47 [ether] on eth1
? (192.168.12.20) at f0:4d:a2:02:81:66 [ether] on eth0
[mpenning@netwiki ~]$ cat /proc/sys/net/ipv4/conf/eth0/proxy_arp
0
[mpenning@netwiki ~]$ sudo tshark -i eth0 arp and ether src 00:11:43:d2:68:65
Running as user "root" and group "root". This could be dangerous.
Capturing on eth0
  0.000000 Dell_d2:68:65 -> Dell_02:81:66 ARP 192.168.12.102 is at 00:11:43:d2:68:65
 84.954989 Dell_d2:68:65 -> Dell_f5:81:9d ARP 192.168.12.103 is at 00:11:43:d2:68:65
[mpenning@netwiki ~]$ uname -a
Linux netwiki 2.6.32-5-amd64 #1 SMP Tue Jun 14 09:42:28 UTC 2011 x86_64 GNU/Linux
[mpenning@netwiki ~]$

Os fatos são inegáveis. Eu tenho uma caixa debian que está falsificando ARPs e não tenho idéia do porquê. Eu sou o único usuário nesta máquina, eu corro fail2ban para evitar ataques de força bruta, e está em uma rede interna de laboratório atrás de uma porta que requer um crachá para entrar; Eu duvido que tenha sido hackeado.

Três perguntas ...

  1. Primeiro, há alguma causa que eu possa ter perdido? Quais etapas devo usar para isolar se esse é um problema do aplicativo ou do kernel?
  2. Se este é um bug do kernel, qual lista de discussão devo reportar? FYI, a ferramenta de relato de erros do kernel.org normal parece estar em baixo agora .
  3. Existe alguma coisa que eu possa fazer para resolver o problema além de esperar por um patch?
por Mike Pennington 13.09.2011 / 21:48

1 resposta

4

Eu encontrei o problema ... Eu estava demonstrando como o proxy-arp funcionava em uma interface Ethernet de reserva há algumas semanas e deixava as configurações na máquina (embora eu tivesse a interface DOWN).

Quando removi essas entradas de 192.168.12.0/24 de eth2 , não tive mais o problema.

[mpenning@netwiki ~]$ ip add show eth2
4: eth2: <BROADCAST,MULTICAST,PROMISC> mtu 1500 qdisc mq state DOWN qlen 1000
    link/ether 00:10:18:02:32:86 brd ff:ff:ff:ff:ff:ff
    inet 192.168.12.100/24 scope global eth2
    inet 192.168.1.100/24 scope global eth2
    inet 192.168.12.101/24 scope global secondary eth2
    inet 192.168.12.102/24 scope global secondary eth2
    inet 192.168.12.103/24 scope global secondary eth2
    inet 192.168.12.104/24 scope global secondary eth2
    inet 192.168.12.105/24 scope global secondary eth2
[mpenning@netwiki ~]$

Eu ainda acho que isso é um bug e precisa ser arquivado. Vou atualizar com as informações do bug quando estiver concluído.

    
por 13.09.2011 / 22:33