¿Cómo puedo diagnosticar un proceso que no tiene ningún nombre de archivo ejecutable asociado?

¿Cómo puedo diagnosticar un proceso que no tiene ningún nombre de archivo ejecutable asociado?

Hay un proceso que ocupa el 100% de la CPU en un servidor basado en KVM que estoy ejecutando.

Esta es la salida de htop.

  PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command                 
22230 adminx     20   0  185M  3468  1600 S 100.  0.5 72h45:33 apache 
22232 adminx     20   0  185M  3468  1600 R 100.  0.5 72h45:12 apache 
10660 root       20   0 26880  4680  3176 R  0.0  0.6  0:00.11 htop
 1061 root       20   0  276M  5796     0 S  0.0  0.8  0:05.59 /usr/lib/snapd/snapd 
 9529 root       20   0 92796  6916  5992 S  0.7  0.9  0:00.11 sshd: root@pts/3

El nombre del proceso es apachey el usuario es adminx. No debería haber ningún Apache ejecutable en el sistema y el usuario adminxno debería ejecutarlo en ningún caso.

El resultado de stracelos dos pids se muestra a continuación.

strace -p 22230

epoll_wait(7, [], 1024, 204)            = 0
epoll_wait(7, [], 1024, 34)             = 0
epoll_wait(7, [], 1024, 500)            = 0
epoll_wait(7, [], 1024, 465)            = 0
epoll_wait(7, [], 1024, 34)             = 0
......

strace -p 22232

sched_yield()                           = 0
sched_yield()                           = 0
sched_yield()                           = 0
sched_yield()                           = 0
sched_yield()                           = 0
......

No sé cómo se originó el proceso y es posible que el servidor haya sido pirateado. He cerrado el proceso y planeo reinstalar el servidor.

Dado algo de esta naturaleza, ¿cómo se puede rastrear cómo se inició el proceso, si no hay ningún ejecutable con ese nombre? ¿Cómo se puede capturar la imagen de memoria del ejecutable para su análisis y cómo se pueden analizar sus asignaciones de memoria?

PD. Encontré el nombre del ejecutable. Parece que se copia a la memoria compartida y se elimina.

adminx@gw06  ~  ls -l /proc/10160/exe
lrwxrwxrwx 1 adminx adminx 0 Jun  3 09:22 /proc/10160/exe -> /dev/shm/apache (deleted)

Respuesta1

Puede ser malware de minería de bitcoins.

Puedes comprobar el ejecutable con

ls -l /proc/22230/exe

El nombre de ese archivo puede ser diferente. El proceso puede configurar lo $0que se muestra en, por ejemplo top.

información relacionada