SERGIOIGLESIAS

Blog sobre Joomla
Sergio Iglesias · Blog sobre Joomla

Elimina malware en Joomla rápidamente con phpMyAdmin y ChatGPT

Añadir a fuentes preferidas
Tips Joomla 2 - 4 minutos Visitas: 4464

Si recientemente has migrado tu sitio de Joomla de la versión 3 a la 4 o 5 y te has encontrado con contenido infectado por malware, no estás solo.

Muchos administradores descubren código malicioso oculto en sus artículos después de una migración.

En esta guía, te mostaré cómo detectar y eliminar malware en tu base de datos Joomla utilizando phpMyAdmin y ChatGPT para simplificar el proceso.

Identificando el malware en Joomla

El primer paso es confirmar que el código encontrado en los artículos es realmente malicioso.

Una forma efectiva es buscar patrones extraños en el código, como cadenas de texto sospechosas.

En nuestro caso, encontramos la palabra clave "Migo" dentro de etiquetas <script> en varios artículos.

Para encontrar todos los artículos infectados en la base de datos:

  1. Accede a phpMyAdmin desde el panel de control de tu hosting.
  2. Selecciona la base de datos de tu sitio Joomla (Si no estás seguro cuál es, revisa el archivo configuration.php).
  3. Utiliza la pestaña "Buscar" y escribe "Migo" para buscar en toda la base de datos.
  4. Localiza los registros infectados en la tabla #__content (donde #__ es el prefijo de tu base de datos).

Haciendo una copia de seguridad de la base de datos

Antes de hacer cambios en la base de datos, siempre haz una copia de seguridad:

  • Dentro de phpMyAdmin, selecciona la base de datos.
  • Ve a la pestaña "Exportar" y elige "Método rápido".
  • Guarda el archivo SQL en tu computadora.

Si la base de datos es muy grande y supera el límite de importación de tu hosting, exporta solo la tabla #__content para una restauración más fácil.

También puedes ver cómo configurar Akeeba Backup: gestiona copias de seguridad en Joomla

Usando ChatGPT para generar consultas SQL

Para eliminar el malware sin revisar cada artículo manualmente, podemos usar una consulta SQL. Sin embargo, escribir consultas SQL avanzadas puede ser complicado. Aquí es donde ChatGPT nos puede ayudar.

Paso 1: Identificar los artículos con malware

Ejecuta esta consulta en phpMyAdmin para encontrar los artículos que contienen el código malicioso:

SELECT id, introtext, fulltext FROM #__content WHERE introtext LIKE '%Migo%' OR fulltext LIKE '%Migo%';

Si los resultados muestran artículos con scripts maliciosos, podemos proceder a eliminarlos automáticamente.

Paso 2: Eliminar el código malicioso

Podemos usar ChatGPT para generar una consulta SQL que elimine el código dentro de las etiquetas <script> sin borrar el contenido válido del artículo. La consulta resultante podría verse así:

UPDATE #__content
SET introtext = REGEXP_REPLACE(introtext, '<script[^>]*>.*?</script>', '', 'g'),
fulltext = REGEXP_REPLACE(fulltext, '<script[^>]*>.*?</script>', '', 'g')
WHERE introtext LIKE '%Migo%' OR fulltext LIKE '%Migo%';

Esto eliminará todo el contenido entre las etiquetas <code><script> y </script> donde se haya detectado "Migo".

Verificación final y limpieza manual

Una vez ejecutada la consulta:

  1. Vuelve a buscar "Migo" en la base de datos para asegurarte de que no haya registros infectados.
  2. Revisa manualmente algunos artículos en Joomla para confirmar que el contenido sigue intacto.
  3. Borra la papelera de artículos en Joomla para eliminar contenido viejo infectado.

Este artículo está basado en el vídeo de "Basic Joomla Tutorials": Using AI to Help Remove Malware in Joomla Articles


Eliminar malware de Joomla puede ser un proceso tedioso, pero con phpMyAdmin y ChatGPT podemos agilizar la tarea.

Recuerda siempre hacer una copia de seguridad antes de hacer cambios y, si tienes dudas, consulta con un experto en seguridad web.

Si encontraste útil esta guía, ¡compártela con la comunidad Joomla! y mantén tu sitio seguro!

Añadir a fuentes preferidas
Gratuito · Primer paso recomendado

¿No sabes bien en qué estado
está tu web Joomla?

Antes de decidir si hay que arreglar, migrar o mantener, conviene saber qué está pasando. Reviso el estado de tu web — versión de Joomla, extensiones y lo que se pueda ver — y te digo qué conviene hacer y en qué orden.

Versión de Joomla y ruta de actualización Estado de extensiones Plan de acción con recomendaciones Informe por email + HTML
Solicitar revisión gratuita sin compromiso

Respuesta en 24–48 h laborables

Suscríbete a mi newsletter

¿Te ha gustado el artículo? Suscríbete a mi newsletter y recibe contenido exclusivo.
Podrás hacer gratis un Curso de desarrollo de plantillas Joomla.

No hay comentarios

Solicita presupuesto

¿Quieres una página web que funcione?

Contacta conmigo y hablemos de tu proyecto.