Cómo evitar hackeos en WordPress o Joomla
Resumen
WordPress y Joomla son sistemas de gestión de contenidos muy usados, pero dependen de temas, plugins y extensiones de terceros. En la mayoría de los casos, los hackeos no ocurren por una falla del hosting, sino por software desactualizado, credenciales débiles o archivos agregados desde fuentes no confiables.
La mejor forma de reducir el riesgo es mantener el sitio actualizado, usar solo extensiones confiables y revisar periódicamente los archivos y accesos del sitio.
Cuando te sirve
Este artículo te sirve si:
- Tu sitio está hecho en WordPress o Joomla.
- Instalaste plugins, temas o extensiones de terceros.
- Quieres prevenir infecciones, redirecciones extrañas o cambios no autorizados.
- Sospechas que alguien modificó archivos del sitio.
- Quieres revisar buenas prácticas básicas de seguridad en tu hosting.
Causas probables
Las causas más comunes de un hackeo en sitios WordPress o Joomla son:
- Núcleo del CMS desactualizado.
- Plugins, temas o extensiones con vulnerabilidades conocidas.
- Extensiones instaladas desde fuentes no confiables.
- Archivos de prueba o componentes que ya no se usan.
- Contraseñas débiles para administrador, FTP, cPanel o base de datos.
- Equipo local infectado con malware al momento de subir archivos.
- Permisos o archivos modificados manualmente sin revisión.
- Formularios, sliders o gestores de imágenes con fallas conocidas.
Antes de empezar
Antes de hacer cambios:
- Verifica que tengas acceso al administrador de WordPress o Joomla.
- Asegúrate de poder entrar a cPanel.
- Ten a mano una copia de respaldo reciente si está disponible en tu cuenta.
- Revisa desde un computador limpio y actualizado, sin virus ni malware.
- Si el sitio ya fue alterado, evita volver a subir archivos desde un equipo comprometido.
Herramientas que revisar
Para prevenir o revisar una infección, usa estas herramientas según corresponda:
- **WordPress**: administrador del sitio, actualizaciones, plugins, temas y enlaces permanentes.
- **cPanel > Administrador de Archivos / File Manager**: revisión de archivos sospechosos, archivos nuevos y modificaciones.
- **cPanel > Cuentas de correo electrónico / Email Accounts**: cambio de contraseñas asociadas al hosting, si corresponde.
- **cPanel > Errors / Errores**: revisión de errores que ayuden a detectar fallas posteriores a una limpieza.
- **cPanel > SSL/TLS Status / Estado SSL/TLS**: confirmar que el sitio tenga SSL activo.
- **cPanel > MultiPHP Manager o Select PHP Version / Seleccionar versión PHP**: usar una versión de PHP compatible y mantenida.
- **cPanel > MySQL Databases / Bases de datos MySQL** y **phpMyAdmin**: revisar si el sitio usa una base de datos comprometida o con usuarios innecesarios.
- **cPanel > Zone Editor / Editor de zona DNS**: solo si necesitas verificar registros DNS del dominio dentro del hosting.
- **Webmail**: revisar si hubo correos enviados por cuentas del dominio desde accesos no autorizados.
- **Área de Clientes de EcoHosting > Servicios > Mis servicios > Ver detalles del servicio**: confirmar el servicio y su estado general si necesitas ubicar el hosting correcto.
Donde se hace esto
La prevención y revisión se hace en tres lugares distintos:
- **WordPress o Joomla**: actualizaciones, temas, plugins, extensiones y configuración del sitio.
- **cPanel**: archivos, bases de datos, PHP, SSL y cuentas relacionadas con el hosting.
- **Area de Clientes de EcoHosting**: información del servicio contratado y datos generales del plan.
Si usas un cliente de correo externo como Outlook, Gmail o el correo del celular, la seguridad del sitio no se gestiona ahí, pero sí conviene revisar que las contraseñas de las cuentas del dominio no hayan sido comprometidas.
Paso a paso
- **Actualiza el CMS**
- Entra al administrador de WordPress o Joomla.
- Actualiza el sistema principal a su versión más reciente estable.
- Aplica también las actualizaciones pendientes de extensiones, temas o plugins.
- **Elimina lo que no uses**
- Borra plugins, temas o extensiones de prueba que ya no sean necesarios.
- No basta con desactivarlos: si no los usas, elimínalos.
- **Instala solo desde fuentes confiables**
- Usa repositorios oficiales o desarrolladores reconocidos.
- Evita extensiones “nulled”, modificadas o descargadas desde sitios desconocidos.
- Verifica que el proyecto tenga actualizaciones frecuentes y compatibilidad con tu versión del CMS.
- **Mantén el sitio simple**
- Mientras más plugins y temas cargue el sitio, mayor es la superficie de riesgo.
- Conserva solo lo necesario para la operación real del sitio.
- **Revisa archivos sospechosos en cPanel**
- Entra a **cPanel > Administrador de Archivos / File Manager**.
- Revisa archivos recientes o desconocidos, especialmente en carpetas públicas del sitio.
- Presta atención a archivos con nombres extraños, fechas recientes o contenido ofuscado.
- **Busca archivos de prueba o directorios abiertos**
- Si tienes carpetas vacías o directorios que no deberían mostrar contenido, agrega un archivo index si realmente corresponde a tu estructura.
- El objetivo es evitar exposición innecesaria de archivos.
- No uses este paso como reemplazo de una buena configuración de permisos y seguridad.
- **Cambia contraseñas si sospechas acceso indebido**
- Cambia la contraseña del administrador del CMS.
- Cambia contraseñas de cuentas FTP o SFTP si las usas.
- Cambia las contraseñas de cuentas de correo vinculadas al dominio si detectas envíos extraños.
- Usa contraseñas largas y únicas.
- **Verifica el estado del hosting**
- Revisa que el sitio esté funcionando con PHP compatible desde **cPanel > MultiPHP Manager o Select PHP Version / Seleccionar versión PHP**.
- Confirma que el SSL esté activo en **cPanel > SSL/TLS Status / Estado SSL/TLS**.
- Si el sitio muestra errores después de una limpieza, revisa **cPanel > Errors / Errores**.
- **Revisa la base de datos si el sitio sigue comprometido**
- Entra a **cPanel > MySQL Databases / Bases de datos MySQL**.
- Verifica que existan solo los usuarios necesarios.
- Si el sitio fue modificado desde formularios, redirecciones o contenido inyectado, revisa la base de datos con cuidado desde **phpMyAdmin**.
- **Comprueba el correo del dominio**
- Entra a **cPanel > Cuentas de correo electrónico / Email Accounts** para revisar cuentas activas.
- Usa **cPanel > Webmail** si necesitas revisar si se enviaron mensajes sin autorización.
- Si hay correos rebotados o envíos extraños, revisa también **cPanel > Email Deliverability / Entregabilidad del correo** y **cPanel > Track Delivery / Rastrear entrega**.
- **Mantén tu equipo libre de malware**
- Si subes archivos por FTP/SFTP o administras el CMS desde tu computador, asegúrate de que esté limpio.
- Un equipo infectado puede volver a subir archivos comprometidos aunque el sitio ya se haya limpiado.
- **Usa respaldos de forma preventiva**
- Si tienes un respaldo sano, úsalo para comparar archivos o restaurar solo cuando sea necesario.
- Antes de restaurar, confirma que el respaldo no contenga el mismo problema.
Si algo no funciona
Si después de actualizar y revisar archivos el sitio sigue mostrando síntomas de hackeo, junta esta información antes de escalar el caso:
- URL afectada.
- CMS usado: WordPress o Joomla.
- Fecha aproximada en que comenzó el problema.
- Capturas de pantalla de redirecciones, errores o contenido alterado.
- Lista de plugins, temas o extensiones instaladas recientemente.
- Si hubo cambios de contraseña recientes.
- Si el problema también aparece en archivos dentro de **cPanel > Administrador de Archivos / File Manager**.
- Si ves envíos extraños desde correo del dominio en **Webmail**.
Siguiente paso recomendado
Mantén el sitio con una rutina de seguridad básica:
- actualizar el CMS apenas haya versiones estables disponibles,
- eliminar extensiones que no uses,
- instalar solo temas y plugins confiables,
- revisar periódicamente archivos y cuentas desde cPanel,
- y cambiar contraseñas ante cualquier sospecha.
En sitios WordPress y Joomla, la prevención continua es más efectiva que una limpieza reactiva después del daño.
