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@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