04 de agosto de 2013
Francisco Javier Félix Belmonte
Nada más recibir la notificación de este serio problema de seguridad (el cual permite subir ficheros al servidor) que afecta a la versión de Joomla 1.5.xx, empecé a revisar el código y planificar las actualizaciones a los clientes alojados en los diferentes servidores.
Pero por desgracia, no todos los clientes han migrado a las versiones más recientes y el número de ellos no es pequeño, con lo cual preparé un pequeño script que actualiza solo aquellos que estén afectados por el problema.
Adjunto el script. En caso necesario, es fácil cambiar la ruta donde se encuentran los dominios alojados.
#!/bin/bash
# Ruta donde se encuentran los dominios alojados
DOMAINS_PATH="/var/www/vhosts"
# Nombre del archivo vulnerable
VULNERABLE_FILE="vulnerable_file.php"
# Nombre del archivo parcheado
PATCHED_FILE="patched_file.php"
# Recorremos todos los dominios
for DOMAIN in $(ls $DOMAINS_PATH); do
DOMAIN_PATH="$DOMAINS_PATH/$DOMAIN/httpdocs"
if [ -f "$DOMAIN_PATH/$VULNERABLE_FILE" ]; then
echo "Parcheando $DOMAIN_PATH/$VULNERABLE_FILE..."
cp "$PATCHED_FILE" "$DOMAIN_PATH/$VULNERABLE_FILE"
echo "Parche aplicado correctamente en $DOMAIN"
else
echo "No se encontró $VULNERABLE_FILE en $DOMAIN"
fi
done
echo "Proceso de actualización completado."