Archivos Temporales, Grave Error de Seguridad en Joomla

mayo 1, 2008 at 8:39 pm 4 comentarios

Seguramente en la actualidad existe una infinidad de sitios cuyos administradores nunca se preocupan (o desconocen el grave problema de seguridad que pueden ocasionar) de los archivos temporales. En el peor de los casos, es posible tomar control completo de un servidor solamente por que no nos precupamos de borrar los temporales. ¿Como puede ser posible?…

Ojo, hay que tener más cuidado principalmente cuando se usa LINUX como servidor.

Esto es muy simple. Tomemos en este caso el ejemplo de un Joomla en un servidor LAMP (Linux Apache MySQL PHP). Al igual que la mayoría de CMS (sistemas de administración de contenido), Joomla almacena los datos de conexión a la base de datos (usuario, password, base de datos y otros parámetros) en el archivo de configuración.php y está ubicado en el mismo directorio que el index.php. Este archivo evidentemente no debiese ser visto desde Internet ya que contiene información sensible. Si en el mismo server se trabaja con phpMyAdmin, bastaría leer configuration.php para obtener las claves de acceso a la base de datos.

Luego un atacante un poquito más hábil cambiaría la clave de Administrador cifrada bajo md5 por un hash que él conozca, ingresaría a la plataforma de administración, instalaría un componente de Joomla o cualquier CMS que le permita manejar archivos.

¿Pero como podemos caer en tal desgracia? veamos el siguiente ejemplo:
http://sitio.com/web/. Este sitio web corre Joomla en el directorio /web/. Si consultamos http://sitio.com/web/configuration.php veremos que se muestra el configuration.php en blanco. Bien, solo bastaría verificar si existe una copia temporal de ese archivo en el directorio:

http://sitio.com/web/configuration.php~

Y listo!. Ya tenemos los passwords. Ahora, el servidor del ejemplo no corre phpMyAdmin y no es posible acceder a la base de datos desde Internet, por lo cual el ejemplo no afecta mayormente (mejor dicho no debiese afectar) a la seguridad de la máquina sitio.com

Lo que ocurre es que PHP entiende los archivos .php y los ejecuta de acuerdo a su sintaxis, pero los archivos .php~ (que son temporales), PHP no los conoce y por lo tanto los muestra en texto claro.
Pueden existir varios formatos de archivos temporales pero los más comunes son:

– .algo~
– .bak
– .1
– .old o .OLD
– .swp

Esto no es un problema exclusivo de Joomla, puesto que puede afectar a cualquier CMS.

Existen varias soluciones, pero la más simple sería crear una tarea programada (CRONTAB) que elimine diariamente estos archivos. Ejemplo:
——————————————————————————–
/etc/crontab
#Borrar todos los días a las 24 hrs los archivos temporales del directorio
0 0 * * * rm -R /var/www/html/*.*~
——————————————————————————–

Sin duda este problema claramente puede afectar a cualquier sitio web, es mucho más recurrente en aquellos basados en CMS.

rito.macias@gmail.com
Artículo tomado en parte de http://www.seguridad-informatica.cl/

Anuncios

Entry filed under: Joomla 1.0.x.

10 Consejos de Seguridad Para Usuarios Las 7 adquisiciones más grandes en el mundo del Open Source

4 comentarios Add your own

  • 1. miriam  |  enero 10, 2009 en 1:35 am

    Hola
    Soy administrador de sitios joomla y me hacia falta esta info gracias

    Responder
  • 2. Nightwalker  |  mayo 18, 2009 en 6:42 pm

    Hola lo he probado en mi sitio y no es asi xD podes decirme en que version sucede esto? tengo la 1.5.10 tal ves este solucionado.

    Saludos

    Responder
    • 3. ritoutl  |  mayo 18, 2009 en 6:58 pm

      Que tal amigo, mira esto pasa cuando tu sitio esta sobre un servidor LINUX, independientemente de la versión de Joomla que uses. algunas veces cuando abres en LINUX algun archivo te genera un temporal en que casos no se exactamente eso sucede aveces, y si no te das cuenta ahi existe el archivo por ej.. un config.php y te le pone una tilde, de esta manera el archivo se hace accesible y como te das cuenta puedes ver la contraseña de la BD, el nombre, etc….

      solo es cuestion de estar al pendiente que no existan ese tipo de archivos… saludos, espero que de algo te sirva la info

      Responder
  • 4. maximi89  |  enero 7, 2012 en 10:10 pm

    Eso pasa cuando lo editas con un editor de texto como Gedit, este crea archivos de respaldo…. si lo editas con un editor gr’afico debes asegurarte de borrar los respaldos que son creados por seguridad en caso que necesites restaurar algo…

    Responder

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Trackback this post  |  Subscribe to the comments via RSS Feed


Estadísticas

  • 41,618 Visitas

Entradas recientes

mayo 2008
L M X J V S D
« Ago   Jun »
 1234
567891011
12131415161718
19202122232425
262728293031  

Visitas

  • Ninguna

Páginas


A %d blogueros les gusta esto: