Anda di halaman 1dari 7

Instalar y Configurar linux Malware Detect (LMD) en centOS 6.

x
Qu es el malware?

Malware se llama el software malicioso, script o cdigo que es creado y usado por hackers para
obtener informacin de los datos privados o tener acceso a los sistemas informticos privados. El
malware puede ser troyanos, virus, spyware, adware, rootkits o cualquier otro programa malicioso
que puede ser muy perjudicial para cualquier usuario de la computadora.

Qu es Linux malware Detect (LMD)?

Linux malware Detect (LMD) es un escner y detector de malware de cdigo abierto y gratuito
para sistemas operativos basados en Unix/Linux, publicado bajo licencia GNU GPLv2. Est
diseado para descubrir las amenazas que enfrentan los entornos de alojamiento compartido.
Para obtener ms informacin y caractersticas visita http://www.rfxn.com/projects/linux-
malware-detect/ .

Instalacin de Linux Malware Detect (LMD) en CentOS


Paso 1: Descarga de Linux Malware Detect (LMD)

Descarga el ltimo paquete de LMD utilizando el comando wget.

# wget http://www.rfxn.com/downloads/maldetect-current.tar.gz

Paso 2: Instalacin de LMD

# tar xfz maldetect-current.tar.gz

# cd maldetect-*

# ./install.sh

Ejemplo de Salida

Linux Malware Detect v1.4.1


(C) 2002-2013, R-fx Networks <proj@r-fx.org>;
(C) 2013, Ryan MacDonald <ryan@r-fx.org>;
inotifywait (C) 2007, Rohan McGovern <rohan@mcgovern.id.au>;
This program may be freely redistributed under the terms of the GNU GPL

installation completed to /usr/local/maldetect


config file: /usr/local/maldetect/conf.maldet
exec file: /usr/local/maldetect/maldet
exec link: /usr/local/sbin/maldet
exec link: /usr/local/sbin/lmd
cron.daily: /etc/cron.daily/maldet

maldet(25380): {sigup} performing signature update check...


maldet(25380): {sigup} local signature set is version 201205035915
maldet(25380): {sigup} new signature set (2013041816820) available
maldet(25380): {sigup} downloaded http://www.rfxn.com/downloads/md5.dat
maldet(25380): {sigup} downloaded http://www.rfxn.com/downloads/hex.dat
maldet(25380): {sigup} downloaded http://www.rfxn.com/downloads/rfxn.ndb
maldet(25380): {sigup} downloaded http://www.rfxn.com/downloads/rfxn.hdb
maldet(25380): {sigup} downloaded http://www.rfxn.com/downloads/maldet-clean.tgz
maldet(25380): {sigup} signature set update completed
maldet(25380): {sigup} 11203 signatures (9335 MD5 / 1868 HEX)

Paso 3: Configuracin de LMD

Por defecto, todas las opciones estn comentadas en el fichero de configuracin, por lo hay que
configurarlo de acuerdo a tus necesidades. Pero antes de hacer cualquier cambio vamos a ver una
revisin detallada de cada opcin.

email_alert : Si deseas recibir alertas de correo electrnico, entonces se debe establecer


en 1.
email_subj : Configura el asunto del correo electrnico aqu.
email_addr : Inserta tu direccin de correo electrnico para recibir las alertas de malware.
quar_hits : La accin de cuarentena predeterminada para los avisos de malware, se debe
establecer 1.
quar_clean : Limpiar inyecciones de malware detectado, se debe establecer en 1.
quar_susp : El valor predeterminado para suspender la accin de los usuarios con hits,
poner de acuerdo a tus necesidades.
quar_susp_minuid : Mnimo con que puede ser suspendido un usuario.

Abrir el archivo /usr/local/maldetect/conf.maldet y hacer los cambios que se consideren necesaes.

Ejemplo de configuracin

Aqu est el archivo de configuracin de mi servidor.

# [ EMAIL ALERTS ]
##
# The default email alert toggle
# [0 = disabled, 1 = enabled]
email_alert=1
# The subject line for email

alerts
email_subj="Alerta de malvare desde $(hostname)"

# The destination addresses for email alerts


# [ values are comma (,)

spaced ]
email_addr="tuemail@tusitio.com"

# Ignore e-mail alerts for reports in which all hits have been cleaned.
# This is ideal

on very busy servers where cleaned hits can drown out


# other more actionable reports.
email_ignore_clean=0

##
# [ QUARANTINE

OPTIONS ]
##
# The default quarantine action for malware hits
# [0 = alert only, 1 = move to quarantine & alert]
quar_hits=1

# Try to

clean string based malware injections


# [NOTE: quar_hits=1 required]
# [0 = disabled, 1 = clean]
quar_clean=1

# The default suspend

action for users wih hits


# Cpanel suspend or set shell /bin/false on non-Cpanel
# [NOTE: quar_hits=1 required]
# [0 = disabled, 1

= suspend account]
quar_susp=0
# minimum userid that can be suspended
quar_susp_minuid=500
Paso 4: las exploraciones manuales y el uso

4.a: Actualizar:

# maldet -d

Salida:

Linux Malware Detect v1.4.2


(C) 2002-2013, R-fx Networks <proj@r-fx.org>;
(C) 2013, Ryan MacDonald <ryan@r-fx.org>;
inotifywait (C) 2007, Rohan McGovern <rohan@mcgovern.id.au>;
This program may be freely redistributed under the terms of the GNU GPL v2
maldet(5904): {update} checking for available updates...
maldet(5904): {update} hashing install files and checking against server...
maldet(5904): {update} latest version already installed.

# maldet -u

Salida:
Linux Malware Detect v1.4.2
(C) 2002-2013, R-fx Networks <proj@r-fx.org>;
(C) 2013, Ryan MacDonald <ryan@r-fx.org>;
inotifywait (C) 2007, Rohan McGovern <rohan@mcgovern.id.au>;
This program may be freely redistributed under the terms of the GNU GPL v2
maldet(5781): {sigup} performing signature update check...
maldet(5781): {sigup} local signature set is version 2013041816820
maldet(5781): {sigup} latest signature set already installed

4.b: Escanear:

Si se desea escanear el directorio principal (/home), simplemente ejecute el siguiente comando:

# maldet --scan-all /home

Si hay muchos usuarios el escaneo pueden llevar su tiempo.

Si se realiz una exploracin, pero no se pudo activar la opcin de cuarentena, utilice el siguiente
comando para encender y poner en cuarentena todos los resultados previos del anlisis de
malware.

# maldet --quarantine SCANID

OR
# maldet --clean SCANID

Paso 5: Exploraciones diarias


La instalacin predeterminada del escaner LMD est en /etc/cron.daily/maldet y se utiliza para
llevar a cabo un anlisis diario, actualizacin de firmas, cuarentena, etc., y enva un mensaje con
un informe diario de escaneado de malware a tu correo electrnico especificado. Si es necesario
agregar rutas adicionales a escanear, se debe editar el archivo de acuerdo a las necesidades:

# vi /etc/cron.daily/maldet

Ejemplo de email:

malware detect scan report for server.myhost.es:


SCAN ID: 040613-0402.9813
TIME: Apr 6 06:02:44 +0200
PATH: /home*/*/public_html
RANGE: 2 days
TOTAL FILES: 8406
TOTAL HITS: 1
TOTAL CLEANED: 0

NOTE: quarantine is disabled! set quar_hits=1 in conf.maldet or to quarantine results run: maldet -
q 040613-0402.9813
FILE HIT LIST:
{HEX}php.cmdshell.unclassed.344 :
/home/user1/public_html/dire2/images/upload/files/asphoto.php.pjpg
{HEX}php.nested.base64.513 : /home/user2/public_html/formulario.php

En "FILE HIT LIST:" est el listado de 2 malwares encontrados. En caso de tenerlo configurado para
enviarlo directamente a la cuarentena pero luego vemos que se trata de un error, se puede
restaurar inmediatamente as:

Restaurar un slo archivo:

# maldet restore /home/user2/public_html/formulario.php

Restaurar aplicando el propietario del archivo:

#maldet --user user2 restore /home/user2/public_html/formulario.php

Esto restaura todo el listado de malware del ltimo escaneado usando el "SCAN ID" que viene en
el email:

# maldet --restore 040613-0402.9813

Monitoreo en tiempo real:

La funcin de supervisin inotify est diseada para supervisar las rutas/usuarios en tiempo real
para las operaciones de creacin/ modificar/mover archivos. Esta opcin requiere un kernel que
soporte inotify_watch (CONFIG_INOTIFY) que se encuentra por defecto en los kernels 2.6.13 + y
CentOS/RHEL 5. Si est ejecutando CentOS 4 se debe considerar una actualizacin con:
http://www.rfxn.com/upgrade-centos-4-8-to-5-3/

Hay tres modos en que el monitor se puede ejecutar o relacionarse con lo que ser objeto de
seguimiento, son USERS|PATHS|FILES.

ejem: maldet --monitor users


ejem: maldet --monitor /root/monitor_paths
ejem: maldet --monitor /home/mike,/home/ashton

Las opciones se desglosan de la siguiente manera:

USERS: La opcin USERS tomar las Homedirs de todos los usuarios del sistema que estn
por encima de inotify_minuid y los supervisa. Si inotify_webdir se establece entonces el
usuario WebDir, si existe, slo ser monitoreado.
PATHS: Una lista separada por comas de los PATHS para vigilar
FILES: Una lista de archivos separados por espacio de PATHS para vigilar

Una vez que comience maldet en modo monitor, se preprocesa los PATHS basados en la opcin
especificada seguida de iniciar el proceso de inotify. La partida del proceso de inotify puede ser
una tarea que consume tiempo, ya que necesita configurar un gancho de monitor para cada
archivo bajo los caminos supervisados. Aunque el proceso de inicio puede afectar la carga
temporalmente, una vez que el proceso ha comenzado mantiene todos los recursos dentro de la
memoria del ncleo y tiene una huella muy pequea de espacio de usuario en la memoria o uso
de la CPU.

Pero el modo monitor no est por defecto. Lo que LMD hace por defecto es ejecutar el cron diario
en donde se analizan los 2 ltimos das de cambios en los archivos. En cambio en el modo monitor,
se miran las notificaciones de Inotify cada 30 segundos, se aplican cuarentenas, etc.. y luego se
enva un email diario. El tiempo de inotify se controla por la variable "inotify_stime=30" que viene
por defecto

Para monitorear en tiempo real, creamos un archivo "maldet_mon.sh" con los directorios que
queramos monitorear:

# vim /scripts/maldet_mon.sh
/home
/tmp
/var/www/html/

aplicamos permisos:

#chmod 0755 /scripts/maldet_mon.sh

y luego ejecutamos:

# maldet --monitor /scripts/maldet_mon.sh

El modo monitor se ejecuta con el siguiente comando para un solo usuario o directorio:
# maldet --monitor /home/usuario2

y para finalizar el monitoreo, ejecute el siguiente comando:

# maldet --kill

Se debe tener encuenta lo siguiente:

Por defecto si LMD no encuentra nada, no enva emails de alerta.


Puede ver el contenido de /usr/local/maldetect/event_log y los tiempos despues de que
se haya ejecutado: "sh /etc/cron.daily/maldet".
poner un script p.ej: "soyunmalwaremumalo.php" en algn usuario y con este contenido:

<? php
eval(gzuncompress(base64_decode('eNqdWG2P4kYM/jOVuJOqi')
?>

ahora ejecute nuevamente "sh /etc/cron.daily/maldet" y compruebe que se le haya notificado via
email.

Anda mungkin juga menyukai