Qual é a melhor estratégia para capturar processos misteriosos?

Qual é a melhor estratégia para capturar processos misteriosos?

Tenho processos em execução no meu servidor que são eliminados todas as noites à meia-noite. Está no trabalho, não estou por perto quando isso acontece e não tenho acesso remoto.

A morte ocorre de forma muito previsível às 23h59 todas as noites. Eu sei disso porque quando chego no dia seguinte:

  • Processos vão até às 23h59
  • Os logs do processo mostram o horário da última modificação às 23h59 (e um novo log datado é iniciado logo em seguida).

Como o assassinato ocorre na mesma hora, suspeitei fortemente de um trabalho em lote. Examinei crontabtodas as nossas máquinas e não consegui encontrar nada. Claramente estou faltando alguma coisa.

Estou pensando em traçar um script de vigilância que reportaria a saída de psforma intermitente, seria lançado atalguns minutos antes e ficaria em loop por um tempo. Essa ideia parece fraca e altamente propensa a erros, então estou me perguntando se alguém tem uma ideia melhor.

Mais detalhes:

  • O universo é um sistema legado muito grande e muito antigo; ninguém na minha equipe parece estar ciente de tal processo (se alguém soubesse, estaria em nossa equipe), embora a organização maior consista de milhares de funcionários, muitos deles teoricamente teriam acesso a isso (não vejo por que eles fariam isso). Em outras palavras, a segurança não é muito rígida.

  • O ambiente consiste em várias máquinas executando o Solaris 10.

  • Não é um ambiente de produção, portanto o tempo limite ou de inatividade não é crítico.

  • Não estou excluindo a possibilidade de que o assassinato não seja devido a um trabalho em lote, embora seja improvável devido à precisão do momento.

  • É evidente que existem deficiências na nossa contabilidade, pelo que tudo o que se possa imaginar é possível.

Minha pergunta é qual a melhor estratégia a adotar? Cai sob o guarda-chuva de “a alegria de trabalhar em sistemas legados”. Estou começando a trabalhar no meu roteiro que em breve postarei aqui para feedback. Enquanto isso, se alguém tiver uma ideia melhor, por favor diga.

Responder1

É comum girar as toras periodicamente, sendo comum girá-las à meia-noite. Muitos aplicativos farão isso automaticamente.

Para quem não tem, existem ferramentas como logrotateessa que farão a rotação. Muitos programas são configurados para reabrir seus logs quando recebem um sinal HUP, e esta é uma das técnicas utilizadas pelo logrotate.

Coisas para verificar:

  • Todos os PIDs mudam. Caso contrário, os programas podem estar girando seus próprios logs ou respondendo adequadamente à rotação de seus logs.
  • Para programas que alteram PIDs, eles foram reiniciados à meia-noite? Se não, verifique o pai para ver o que ele faz.
  • Verifique o crontab em busca de root para ver quais processos são executados no final do dia.
  • Verifique no crontab o ID do usuário do processo para ver quais processos são executados no final do dia.
  • Verifique se os arquivos de log estão sendo gravados diretamente ou por um gravador de log que rotaciona os logs.

informação relacionada