Tutoriais

Como detectar se o seu VPS foi comprometido

Como detectar se o seu VPS foi comprometido

Um servidor invadido nem sempre dá sinais óbvios. Muitas vezes, o invasor usa a máquina silenciosamente para minerar criptomoedas, enviar spam ou atacar outros servidores. Saiba o que observar.

Sinais de alerta

  • CPU alta constante sem motivo aparente (mineração);
  • Tráfego de saída incomum ou aviso do provedor sobre ataques partindo do seu IP;
  • Seu IP em listas de spam (blacklists);
  • Usuários ou chaves SSH que você não criou;
  • Arquivos estranhos em /tmp, /dev/shm ou na pasta do site;
  • Tarefas cron desconhecidas;
  • Site redirecionando para páginas suspeitas ou com conteúdo injetado;
  • Logs apagados ou com lacunas.

Investigando

Se suspeitar de invasão em um servidor crítico, considere tirar um snapshot antes de mexer — ele preserva evidências.

Processos

top -o %CPU
ps auxf --sort=-%cpu | head -20

Desconfie de processos com nomes aleatórios, rodando de /tmp ou /dev/shm, ou com nomes que imitam processos do sistema. Veja o executável real:

sudo ls -l /proc/PID/exe

Conexões de rede

sudo ss -tunap
sudo ss -tunap state established

Procure conexões para IPs e portas desconhecidas, especialmente de processos estranhos.

Usuários e acessos

cat /etc/passwd | grep -v nologin
getent group sudo wheel
last -a | head -30
sudo lastb | head -30          # tentativas falhas
cat ~/.ssh/authorized_keys
sudo cat /root/.ssh/authorized_keys

Tarefas agendadas

sudo crontab -l
for u in $(cut -f1 -d: /etc/passwd); do sudo crontab -l -u $u 2>/dev/null | sed "s/^/$u: /"; done
ls -la /etc/cron.* /etc/cron.d
systemctl list-timers --all

Arquivos modificados recentemente

sudo find /etc /usr/bin /usr/sbin -mtime -3 -type f
sudo find /var/www -name "*.php" -mtime -3
sudo find /tmp /dev/shm -type f -executable

Serviços desconhecidos

systemctl list-unit-files --type=service --state=enabled
ls -la /etc/systemd/system/

Ferramentas de verificação

sudo apt install rkhunter chkrootkit -y
sudo rkhunter --check
sudo chkrootkit

Para sites, scanners de malware específicos (como plugins de segurança no WordPress) ajudam a encontrar código injetado.

Confirmou a invasão. E agora?

  1. Isole: restrinja o acesso ao servidor (firewall) para conter o dano;
  2. Preserve evidências: snapshot e cópia dos logs;
  3. Não confie no sistema: um invasor com root pode ter deixado portas dos fundos difíceis de encontrar;
  4. Reconstrua: o caminho mais seguro é reinstalar o servidor do zero e restaurar dados de um backup anterior à invasão;
  5. Troque todas as credenciais: SSH, banco de dados, painéis, APIs, e-mails;
  6. Descubra a causa: plugin desatualizado? senha fraca? porta exposta? Corrija antes de voltar ao ar;
  7. Avalie obrigações legais: se houve vazamento de dados pessoais, a LGPD pode exigir comunicação à ANPD e aos titulares.

Prevenção

  • SSH por chave, firewall e Fail2ban;
  • Atualizações automáticas;
  • Aplicações e plugins atualizados;
  • Backups externos e testados;
  • Monitoramento de recursos com alertas — CPU a 100% de madrugada é um sinal que você quer receber.

Conclusão

Detectar cedo reduz muito o impacto de uma invasão.Monte seu servidor com segurança desde o início em um VPS-NVME-BR da VittHost — e use o cupom SP-VITT20 para ganhar 20% de desconto na primeira fatura enquanto a promoção estiver ativa.

Compartilhar:

Pronto para hospedar seu próximo projeto?

VPS com painel pré-instalado em 1 clique. Ativação imediata.

Ver planos VPS