Eu nunca enfrentei esse problema antes, mas acho que você pode pelo menos fazer algo como o seguinte. Estas são ideias que precisam ser mais estudadas se você quiser implementar algo.
- Verifique os tamanhos dos pacotes ICMP recebidos e enviados. Os pacotes de ping normais sempre têm o mesmo tamanho e geralmente são pequenos (64 bytes no Linux).
- Verifique o padrão de dados dos pacotes ICMP. Se eles são apenas ping normal, eles não devem estar mudando. A troca de dados real estará sempre mudando (conexão de abertura, ack, dados em si).
- Se você estiver preocupado com o tráfego ICMP de entrada, poderá bloqueá-los (permitir apenas o que precisa ser permitido).