Pular para o conteúdo

Mudança do valor de TTL - ping

Dica publicada em Linux / Segurança
Perfil removido removido
Hits: 38.250 Categoria: Linux Subcategoria: Segurança
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Mudança do valor de TTL - ping

Galera, recentemente vi um post aqui no VOL que dizia sobre a possibilidade de se descobrir o sistema operacional de um servidor pelo valor de seu ttl. É claro que isso é possível, pois os ttl são padrões. Seguem alguns exemplos.
  • Roteadores Ciclades = 30
  • Linux = 64
  • Windows = 128
  • Cisco = 255
  • Linux + Iptables = 255

Por exemplo, quando damos um "ping www.uol.com.br" ele responde o valor 57. O valor mais próximo desse valor de TTL é o 64, que vem de Linux. Se considerarmos que o pacote deu 7 hops até chegar ao destino (passou por 7 roteadores) então temos o cálculo:

64-7 = 57

Sendo assim conseguimos saber o sistema operacional que roda no servidor da UOL. Mas a dica é para a mudança do ttl, evitando assim passar informações sobre o servidor.

Para sabermos o valor de TTL do sistema operacional, podemos dar um cat no arquivo:

# cat /proc/sys/net/ipv4/ip_default_ttl
64

E se quisermos alterar esse valor de TTL, também podemos! Podemos colocar, por exemplo, 128 dentro desse arquivo, assim consigo enganar quem quiser informações de meu servidor.

Mas se alterarmos simplesmente esse arquivo, não será o suficiente, porque ele não ficará fixo! Para ficar sempre um valor diferente do valor padrão, é necessário editar o arquivo:

# vim /etc/sysctl.conf

E no final dele, acrescentar uma linha com o novo valor de TTL que você definir:

net.ipv4.ip_default_ttl = 64
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Depois é só validar com o comando:

# sysctl -p /etc/sysctl.conf

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

pbpaste e pbcopy no Linux

Instalando Bashtop no Ubuntu 20.04 Sem Usar Snaps

O que fazer após instalar LMDE 6

Usando o friend em C++

Debian Squeeze - Instalando driver Broadcom wl.ko

OCS Inventory NG: Instalação de Agentes Linux e Windows + Autenticação HTTP

Dica legal de segurança: protegendo o Grub com senha

CV-2014-3566 SSL V3 Poodle vulnerability

Consertando o sistema de arquivos de seu OpenBSD 4.5

Liberar SNMP no Firewall do Linux

#1 Comentário enviado por removido em 29/01/2011 - 03:32h
Ótima dica rafaelrsr !


Abraço.
#2 Comentário enviado por murderb13 em 31/01/2011 - 11:00h
ótimo.!
#3 Comentário enviado por robsonsbrasil em 01/02/2011 - 01:00h
Caro Rafael,

Essa informacao de descobrir o sistema do servidor simplemente tendo com base o valor do Time to Live - TTL, nao e consistente, tendo em vista a possibilidade de alteracao desse valor, citado por voce. O post ta bom, só faltou um pouco mais de aprofundamento.

Parabéns.
#4 Comentário enviado por removido em 01/02/2011 - 08:14h
Galera muito obrigado pelos posts. Colega Robsonbrasil, eu entendi seu post e o recebi como uma crítica construtiva, mas eu não acredito me ter faltado aprofundamento não até porque não disse nada de errado ou o ttl deu sistema operacional não é padrão? Se ele não for trocado ele será sempre padrão, mas como segurança nunca é demais então a gente troca.
#5 Comentário enviado por keylock em 22/06/2011 - 21:24h
Muito boa a dica.
#6 Comentário enviado por pauloedson em 20/09/2016 - 12:19h
muito bom, velho!!! gostei da dica... bem funcional !!!!!

Contribuir com comentário

Entre na sua conta para comentar.