A melhor maneira de acompanhar esse comportamento indesejado é coletar registros da atividade da sua máquina de tempos em tempos.
A execução de um script a cada 15 minutos com cron
que analisará as conexões de rede abertas pode ser o melhor caminho a seguir.
Eu aconselho você a usar o comando lsof
e coletar informações sobre a conexão de rede feita por sua máquina. Algo como:
lsof [email protected] >> /tmp/my-connexions.log
Ou, se a sua máquina estiver digitalizando aleatoriamente e alterar os IPs verificados sempre que você puder (restringir somente as conexões TCP):
lsof -iTCP >> /tmp/my-connexions.log
O resultado de um comando lsof
é o seguinte:
iceweasel 31562 user 50u IPv4 13500060 0t0 TCP bill:47039->stackoverflow.com:https (ESTABLISHED)
iceweasel 31562 user 60u IPv4 13549538 0t0 TCP bill:60564->104.16.15.128:http (ESTABLISHED)
iceweasel 31562 user 61u IPv4 13578815 0t0 TCP bill:46285->185.45.5.43:https (ESTABLISHED)
iceweasel 31562 user 67u IPv4 13496262 0t0 TCP bill:47020->stackoverflow.com:https (ESTABLISHED)
Na extremidade esquerda de cada linha, você pode ver o nome do programa executando a conexão (que é a parte interessante no seu caso). O resto da linha descreve a conexão e o protocolo usado.
Você também pode olhar para auditctl
(vem com o pacote auditd
) que registrará qualquer chamada de sistema de um programa para o kernel (o que é muito mais preciso do que executar um lsof
de tempos em tempos). Você pode executar algo como (leia a documentação primeiro, como sempre!):
auditctl -A exit,always -S connect