Processo aleatório consumindo CPU por meio do usuário Postgres

Publicado por Denilson Martins em 26/02/2021

[ Hits: 3.408 ]

 


Processo aleatório consumindo CPU por meio do usuário Postgres



Possuo uma máquina Ubuntu 20.04 LTS e instalei o PostgreSQL para os meus testes locais em programação. Após alguns dias da instalação apareceu um processo aleatório, exemplo "SFDFsfd", que consumia a CPU toda e quando eu o matava era iniciado um novo e com outro nome.

A cada vez que tal processo consumia a CPU eu o matava e um novo era criado. Desconfiado comecei a verificar sobre o processo e descobri que é um processo utilizado para a mineração de uma criptomoeda.

Passei então a tentar entender como o processo era executado utilizando o conjunto TOP, LSOF e CAT na seguinte ordem:

1. Ver se o processo está em execução, assim eu pegava o ID do processo no sistema operacional:

top -cu postgres

2. Ver arquivos abertos pelo processo (neste ponto vi que estava conectado no IP 136.243.90.99 via SSH ou utilizando-se do SSH):

lsof | grep ID_PROCESSO

3. Ver possível arquivo que executou o processo:

cat /proc/ID_PROCESSO/exe

Feito tais comandos descobri que o processo era iniciado também por um arquivo aleatório, exemplo "rjewkidlfjlwkjrklsdfmsdfksmdf", que estava no diretório /var/lib/postgres. Ao acessar o diretório executei um "ls -las" e verifiquei que havia um diretório oculto ".ssh" e um arquivo ".systemd.script.sh" também oculto.

Com base nestas informações ao pesquisar me deparei com o seguinte artigo que confirmou minha descoberta: Investigation into Postgres malware (hack?) - DEV Community

Assim como no artigo citado acima, matei o processo que consumia os recursos, o processo que o iniciava e também o diretório e arquivo oculto de dentro do "/var/lib/postgres". Porém após algum tempo, menos de um dia, todo o problema voltou a acontecer e neste momento resolvi colocar uma senha no usuário "postgres", pois o mesmo na instalação não é configurado por padrão.

Após a definição da senha, matei os processos, removi os ocultos e reiniciei o computador. BINGO, não tive mais o problema após esta última ação. Depois achei melhor restaurar as bases que estava testando e tudo ficou aparentemente normal.

Outras dicas deste autor

Debian - Instalando kernel 32 bits via DVD em máquinas com mais de 4GB de RAM

Ubuntu 10.10 não inicia e cai no initramfs, e agora?... Resolva!

Como criar um xorg.conf no Ubuntu 9.10

Execução do apt-get --> (ERRRO) Sources Hash Sum Mismatch <-- Correção que funcionou

Adicionando impressora de rede instalada em um servidor Linux (CUPS) pelo protocolo IPP

Leitura recomendada

Alterando senha de usuário no MySQL

LAMP com PHP 7 no Linux Mint 17.3 e Ubuntu 14.04

Salvando datas no MySQL pelo Gambas2

PostgreSQL - "database server: mainError: could not exec" [Resolvido]

Dump e importação de banco em uma linha

  

Comentários
[1] Comentário enviado por fabio em 26/02/2021 - 13:21h

Não uso PostgreSQL, mas valeu pelo aprendizado investigativo.

[2] Comentário enviado por maurixnovatrento em 26/02/2021 - 13:42h


Boa dica.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[3] Comentário enviado por leandropscardua em 26/02/2021 - 22:20h

No final do ano passado houve um intenso ataque contra bases postgres. Será que foi parte de uma campanha dessas?
https://www.zdnet.com/article/pgminer-botnet-attacks-weakly-secured-postgresql-databases/

[4] Comentário enviado por denilsoneskas em 01/03/2021 - 08:51h


[3] Comentário enviado por leandropscardua em 26/02/2021 - 22:20h

No final do ano passado houve um intenso ataque contra bases postgres. Será que foi parte de uma campanha dessas?
https://www.zdnet.com/article/pgminer-botnet-attacks-weakly-secured-postgresql-databases/


Creio que faça parte sim, pois faltou mencionar na dica que meu server estava com a porta 5432 aberta para acesso externo também, além de é claro, o usuário postgres no S.O. estar sem senha definida.

[5] Comentário enviado por denilsoneskas em 01/03/2021 - 08:53h


[1] Comentário enviado por fabio em 26/02/2021 - 13:21h

Não uso PostgreSQL, mas valeu pelo aprendizado investigativo.


Grato.

[6] Comentário enviado por denilsoneskas em 01/03/2021 - 08:53h


[2] Comentário enviado por mauricio123 em 26/02/2021 - 13:42h


Boa dica.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]


Grato.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts