Existe algum problema sério ao configurar o bit SUID no tcpdump?

2

Estou executando o tcpdump em uma máquina remota e canalizando a saída para o Wireshark em minha máquina local através do SSH. Para fazer isso, eu tive que configurar o bit SUID no tcpdump.

Como plano de fundo, a máquina remota é um Amazon EC2 executando "Amazon Linux AMI 2012.09". Nesta imagem, não há senha de root, e não é possível fazer login como root. Você não pode usar o sudo sem um TTY e, portanto, você precisa definir o SUID.

Quais são os riscos práticos de configurar este bit no tcpdump? Existe alguma necessidade de ser paranóico? Devo desanimá-lo sempre que não estou capturando?

    
por Dean 12.10.2012 / 03:10

2 respostas

3

Isso significa que todos que tiverem acesso shell a essa máquina poderão usar tcpdump para capturar o tráfego. A paranoia não é a coisa ruim quando estamos falando de segurança. Você pode esquecer que, eventualmente, você configurou o suid e em algum dia você dará ao shell acesso a alguém em quem você não pode confiar em toda a extensão. Eu acredito que você não quer isso. Acho que você deve considerar usar sudo para executar tcpdump da sua conta. É possível definir o sudo para não solicitar uma senha para um usuário específico e para comandos específicos.

    
por 12.10.2012 / 03:29
1

Com base na sua solicitação de comentários, aqui está como eu trabalhei para redirecionar o tcpdump remoto através do sudo para o wireshark:

ssh user@host sudo tcpdump -s0 -w - | wireshark -k -i -

Notas: Eu adicionei s0 para capturar os pacotes inteiros.

Acabei de fazer um script wrapper que executa exatamente isso, mas você só precisa fornecer as credenciais ssh e um filtro opcional para o tcpdump. Você pode fazer o download em aqui

    
por 13.10.2012 / 02:42