Nos últimos dias tenho observado processos estranhos em um de nossos servidores. Na maioria das vezes, vejo várias instâncias do executável 10
e, às vezes 4
, consome muitos recursos da CPU. Quando examinado isso, tenho visto que o processo é iniciado pelo cron logo após iniciar um processo com executável cpu_hu
. O que aparentemente é estranho ao meu sistema e a pesquisa simples não resolveu nada.
Em seguida, examinou o cpu_hu
processo, examinou a localização do exe e depois removeu adequadamente (a localização na imagem aponta para um local para um pequeno projeto em que nossa equipe está trabalhando)
mesmo que eu tenha removido o binário, após a reinicialização ele apareceu em um local diferente
e os executáveis 10
, 4
iniciados na memória (sem localização física do executável)
Excluí cpu_hu
o binário de todos os locais do sistema, interrompi o processo e reiniciei, mas depois de algum tempo cpu_hu
o binário aparece em outro lugar. Por enquanto parei o crond e eliminei os respectivos processos. O que parecia ter impedido o processo de recomeçar.
Neste ponto, tenho certeza de que é malicioso. Como posso me livrar disso ou melhor, encontrar o ponto de partida desse malware para evitar que ele seja iniciado.
(Reescrito com base nos comentários do OP)
O
cpu_hu
parece ser executado como userpostgres
, o que sugere que pode ter sido iniciado usando um ponto fraco no mecanismo de banco de dados PostgreSQL ou em sua configuração.Talvez seu banco de dados PostgreSQL seja acessível pela Internet e sua senha de administrador de banco de dados seja inexistente ou fraca?
Ou você está executando seu projeto como
postgres
usuário? Isso é uma má ideia: uma vulnerabilidade em qualquer componente usado pelo seu projeto (por exemplo, no Django) que permitiria injetar comandos SQL daria a eles acesso de "administrador local" ao mecanismo de banco de dados e permitiria que eles roubassem ou corrompam todos os dados gerenciados por esse mecanismo de banco de dados, não limitados apenas aos bancos de dados do seu projeto. O acesso de administrador do banco de dados também inclui o privilégio de executar comandos arbitrários do sistema operacional como usuário do mecanismo de banco de dados.Caso contrário, faça uma lista de todos os componentes de software usados em seu projeto e suas versões, e comece a pesquisar no Google por vulnerabilidades conhecidas nessas versões.
Os processos de malware aparecem se você reiniciar o sistema sem conexão com a Internet? Se isso acontecer, você terá um malware local persistente escondido em algum lugar. Caso contrário, a infecção pode não ser persistente e você pode ser infectado novamente por outro computador assim que o sistema for inicializado.