Não se esqueça do IPv6 no seu Firewall
Dica publicada em Linux / Segurança
Não se esqueça do IPv6 no seu Firewall
Apesar de instituído há alguns anos, a adoção do protocolo IPv6 é, na melhor das hipóteses, vagarosa. O kernel do GNU/Linux já tem suporte ao IPv6 já há muitas versões, porém, o fato é que quase ninguém o usa.
E justamente aí está uma possível fonte de dores de cabeça. Todos sabem que manter serviços rodando sem necessidade em seu servidor, e por isso esquecidos e mal configurados, é uma das maiores fontes de vulnerabilidades. E com o IPv6 não é diferente.
Experimente rodar o comando:
# netstat -nta
Se o IPv6 está habilitado, é grande a possibilidade de os mesmos serviços que estão com portas abertas no IPv4, também o estarem no IPv6.
E o problema está justamente aí, pois normalmente nos preocupamos com Firewall, IDS e outras coisas com o IPv4 e esquecemos do IPv6.
Aqui em minha casa, por exemplo, temos:
# nmap -sS <ip do servidor>
# nmap -6 -sS <IPv6 do servidor>
Isso acontece, entre outras coisas, porque muitos programas, como o IPtables, só lidam com o protocolo IPv4, deixando as portas IPv6 livres para serem abusadas por terceiros.
Para solucionar isso você pode usar o IP6tables, que é a versão IPv6 do mesmo programa e colocar em seu firewall:
Desta forma o firewall irá dropar (negar) todo o tráfego IPv6 sem distinção. Experimente rodar o mesmo comando anterior.
Se você tiver necessidade de usar o IPv6 para serviços específicos, há pessoas que fazem 2 scripts de firewall, um com IPtables e um com IP6tables, praticamente idênticos, para filtrar os dois protocolos.
Agora, se você não usa o protocolo IPv6 para nada mesmo, você pode também colocar no script do seu firewall:
E desta forma colocar um ponto final e desabilitar o protocolo IPv6 ao nível do kernel.
Abraços, espero ter contribuído com alguma coisa.
E justamente aí está uma possível fonte de dores de cabeça. Todos sabem que manter serviços rodando sem necessidade em seu servidor, e por isso esquecidos e mal configurados, é uma das maiores fontes de vulnerabilidades. E com o IPv6 não é diferente.
Experimente rodar o comando:
# netstat -nta
Se o IPv6 está habilitado, é grande a possibilidade de os mesmos serviços que estão com portas abertas no IPv4, também o estarem no IPv6.
E o problema está justamente aí, pois normalmente nos preocupamos com Firewall, IDS e outras coisas com o IPv4 e esquecemos do IPv6.
Aqui em minha casa, por exemplo, temos:
# nmap -sS <ip do servidor>
Starting Nmap 6.01 ( http://nmap.org ) at 2013-02-09 16:11 BRST Nmap scan report for localhost (127.0.0.1) Host is up (0.0000060s latency). All 1000 scanned ports on <ip do servidor> are filteredJá a versão IPv6 do mesmo comando, retorna:
# nmap -6 -sS <IPv6 do servidor>
Starting Nmap 6.01 ( http://nmap.org ) at 2013-02-09 16:17 BRST Nmap scan report for localhost (::1) Host is up (0.0000050s latency). Interesting ports on ip6-localhost (::1): Not shown: 997 closed ports PORT STATE SERVICE 22/tcp open ssh 53/tcp open domain 80/tcp open httpPERIGO!!!!
Isso acontece, entre outras coisas, porque muitos programas, como o IPtables, só lidam com o protocolo IPv4, deixando as portas IPv6 livres para serem abusadas por terceiros.
Para solucionar isso você pode usar o IP6tables, que é a versão IPv6 do mesmo programa e colocar em seu firewall:
/usr/sbin/ip6tables -P INPUT DROP
/usr/sbin/ip6tables -P OUTPUT DROP
/usr/sbin/ip6tables -P FORWARD DROP
/usr/sbin/ip6tables -P OUTPUT DROP
/usr/sbin/ip6tables -P FORWARD DROP
Desta forma o firewall irá dropar (negar) todo o tráfego IPv6 sem distinção. Experimente rodar o mesmo comando anterior.
Se você tiver necessidade de usar o IPv6 para serviços específicos, há pessoas que fazem 2 scripts de firewall, um com IPtables e um com IP6tables, praticamente idênticos, para filtrar os dois protocolos.
Agora, se você não usa o protocolo IPv6 para nada mesmo, você pode também colocar no script do seu firewall:
echo "1" > /proc/sys/net/ipv6/conf/all/disable_ipv6
E desta forma colocar um ponto final e desabilitar o protocolo IPv6 ao nível do kernel.
Abraços, espero ter contribuído com alguma coisa.
Abraços