[CentOS-es] Seguridad en CentOS+Apache+PHP+MySQL+Joomla
David González Romero
dgr en dic.ohc.cu
Jue Feb 11 20:49:51 UTC 2010
Bien lista!!
Tengo un amigo con una configuración como la del subject:
CentOS+Apache+PHP+MySQL+Joomla.
En los últimos tiempos descubrió algunos probelmas de seguridad los
cuales dieron pie a que un atacante introdujera codigo dentro del
sistema de archivo que se ejecutaba tanto con permisos de apache y
nobody. Este código principalmente fue introducir un software de webchat
y en segundo plano un script de perl que levantaba una
aplicación/demonio para hacer scan de puertos a diferentes direcciones
de IRC.
En fin la razón es la siguiente en el reporte de Logwacht aparecia algo
como esto:
Commands Run:
User apache:
/tmp/.psy/y2kupdate >/dev/null 2>&1: 1440 Time(s)
Al buscar que era esto encontré, junto con mi amigo, algunas cosas
interesantes:
1- Apareción en una carpeta interna de un virtual host con Joomla una
carpeta no pertenenciente al Joomla
(../administrator/components/com_installer/mambot/components) que
contenia ciertos y determinados script ejecutables y algunos binarios
2- el contenido:
[root en server components]# ll
total 360
-rwxr-xr-x 1 apache apache 141 Feb 5 2006 config
-rwxr-xr-x 1 apache apache 929 Feb 5 2006 config.h
-rw-r--r-- 1 apache apache 118 Jan 31 02:34 cron.d
-rwxr-xr-x 1 apache apache 341 Feb 5 2006 fuck
drwxr-xr-x 2 apache apache 4096 Feb 5 2006 help
-rw-r--r-- 1 apache apache 52960 Jan 31 02:36 ht.pl
drwxr-xr-x 2 apache apache 4096 Feb 5 2006 lang
drwxr-xr-x 2 apache apache 4096 Feb 1 09:44 log
drwxr-xr-x 2 apache apache 4096 Feb 5 2006 motd
-rwxr-xr-x 1 apache apache 14306 Feb 5 2006 proc
-rwxr-xr-x 1 apache apache 202544 Feb 5 2006 psybnc
-rwxr-xr-x 1 apache apache 77 Feb 5 2006 psybnc.conf
-rw------- 1 apache apache 5 Feb 1 09:44 psybnc.pid
-rwxr-xr-x 1 apache apache 66 Feb 5 2006 run
drwxr-xr-x 3 apache apache 4096 Jul 3 2007 scripts
-rw-r--r-- 1 apache apache 76 Jan 31 02:34 ssstt
-rw-r--r-- 1 apache apache 82 Jan 31 02:34 ssstt.dir
-rwxr-xr-x 1 apache apache 21516 Feb 5 2006 xh
-rwxr--r-- 1 apache apache 383 Jan 31 02:34 y2kupdate
3- Una busqueda en los procesos ejecutandose salio esto:
/usr/sbin/httpd -DSSL
Bueno para no hacer larga la historia usando dos o tres herramientas y
el netstat pudimos dar con el proceso y matarlo.
Pero seguia saliendo en el repote de Logwacht lo del y2kupdate y
buscando encontramos que en /var/spool/cron habia un fichero llamado
apache que contenia:
* * * * * /tmp/.psy/y2kupdate >/dev/null 2>&1
Al final mi pregunta va en dos sentidos:
A- Hay alguna forma para saber quien escribió, y donde en el sistema de
archivos, especificamente en este directorio del /var/spool/cron.
Pienso que como Linux usa un sistema Journalist imagino que exista una
traza de los cambios en el Sistema de Ficheros en un momento determinado.
B- Hay forma de endurecer las politicas de acceso a los directorios de
los virtualhost de apache y del tmp, y que no ejecuten codigo
arbitrariamente?
Saludos,
David
--
_________________________________________________
Lic. David González Romero
Network/System Administrator
DIC- OHC Dirección de Informática y Comunicaciones
Oficina del Historiador de la Ciudad
Ave Puerto. Edif. Lonja del Comercio 5H
Telf:(537)8608808, 8608853 ext 109
Linux counter: 242534
__________________________________________________
Más información sobre la lista de distribución CentOS-es