🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo comprobar y eliminar malware de mi sitio PrestaShop

Actualizado el 11 de enero de 2026

Primera Señal de Alerta: Síntomas de una Tienda PrestaShop Infectada

Antes de lanzarnos a la limpieza, es fundamental saber qué estamos buscando. Una tienda online comprometida no siempre muestra un cartel gigante de "hackeado". Muchas veces, los síntomas son sutiles y pueden confundirse con problemas de caché o de configuración. Presta atención a estas señales:

  • Redirecciones extrañas: Al hacer clic en tus productos, el usuario es llevado a páginas de farmacias online, casinos o sitios de venta de marcas de lujo falsas. Esto es un clásico de malware prestashop que inyecta código en las URLs.
  • Aparición de contenido oculto: Textos o enlaces invisibles al final de tus páginas. Si haces clic derecho y seleccionas "Ver código fuente", verás líneas de código extraño, a menudo codificadas en Base64.
  • Rendimiento deplorable: De repente, tu tienda tarda una eternidad en cargar. Esto puede deberse a que el servidor está siendo utilizado para enviar miles de correos spam o para minar criptomonedas.
  • Alertas del navegador o de Google: Si Chrome o Firefox te avisan de que tu sitio no es seguro, o si ves en Google Search Console que te han marcado el sitio como "Engañoso", es una confirmación casi total de infección.
  • Usuarios administradores desconocidos: Revisa la lista de empleados y administradores en tu back-office. Si aparece alguien que no has creado, estás en problemas graves.
  • Archivos nuevos y sospechosos: En tu hosting (a través de FTP o el administrador de archivos), verás archivos con nombres raros como tmp.php, shell.php o 0x.php en carpetas donde no deberían estar.

Si has detectado al menos un par de estos síntomas, es hora de ponerse el traje de héroe y empezar a limpiar. No entres en pánico; la mayoría de las infecciones se pueden revertir con paciencia y método.

Preparación del Campo de Batalla: Copia de Seguridad y Acceso Seguro

La regla de oro antes de tocar cualquier cosa es hacer una copia de seguridad. No solo de los archivos, sino también de la base de datos. Si algo sale mal durante la limpieza, podrás restaurar el sistema a su estado original (aunque esté infectado, pero al menos funcional).

Paso 1: Copia de Seguridad Completa

  • Accede a tu panel de control (cPanel, Plesk o Syspanel). Recuerda que si usas Syspanel, el puerto de acceso es el 2106.
  • Busca la sección de "Archivos" o "Gestor de archivos" y comprime la carpeta public_html (o el directorio raíz de tu tienda) en un archivo ZIP.
  • Descarga ese ZIP a tu ordenador. Es tu red de seguridad.
  • Ve a la sección de "Bases de datos MySQL" y exporta la base de datos de tu tienda. Guárdala también en tu PC.

[WARNING] No subas la copia de seguridad infectada a un servidor de producción sin antes escanearla en local. Podrías propagar el virus a otros sitios.

Paso 2: Cambia Todas las Contraseñas Inmediatamente

  • Cambia la contraseña de tu cuenta de hosting.
  • Cambia la contraseña del correo electrónico asociado a la tienda.
  • Cambia la contraseña del administrador de PrestaShop.
  • Cambia las contraseñas de las cuentas FTP.

[TIP] Utiliza un gestor de contraseñas para generar claves robustas de al menos 16 caracteres, con mayúsculas, minúsculas, números y símbolos. No reutilices la misma clave para todo.

Paso 3: Activa el Modo Mantenimiento

Para evitar que los clientes vean la tienda rota o que el malware siga haciendo de las suyas mientras limpias, ve a Parámetros Avanzados > Mantenimiento en tu back-office de PrestaShop y activa el modo mantenimiento. También te permitirá trabajar con más tranquilidad.

La Limpieza Profunda: Herramientas y Métodos Manuales

Ahora viene el trabajo sucio. Existen dos enfoques: usar herramientas automáticas o hacer una limpieza manual. Lo ideal es combinar ambos.

Método A: Escáneres Automáticos (El Primer Ataque)

  • Utiliza el escáner de tu antivirus local: Descarga la copia de seguridad que hiciste y pásala por tu antivirus (Kaspersky, Bitdefender, Malwarebytes). Te ayudará a identificar archivos maliciosos comunes.
  • Herramientas online: Servicios como VirusTotal son excelentes para analizar archivos sospechosos específicos, pero no pueden escanear tu sitio completo.
  • Módulos de seguridad de PrestaShop: Instala un módulo de seguridad reputado como PrestaShop Security & Crawler Alert o uno de pago como Advanced Security Suite. Estos módulos suelen tener escáneres que comparan los archivos con los originales de la versión que tienes instalada.

[INFO] El escáner de los módulos de pago es muy útil para detectar archivos modificados, pero no son infalibles. El malware más sofisticado puede ocultarse de ellos.

Método B: La Limpieza Manual (El Ataque Quirúrgico)

Esta es la parte más delicada y requiere que accedas a tu hosting por FTP o a través del administrador de archivos de tu panel (Syspanel, cPanel, etc.).

  1. Busca archivos con fecha de modificación reciente: Ordena los archivos por la fecha de última modificación. Los archivos infectados suelen tener una fecha muy cercana al momento en que notaste el problema.
  2. Revisa los archivos núcleo de PrestaShop: Los hackers a menudo modifican archivos como index.php, config/settings.inc.php (en versiones antiguas) o app/config/parameters.php para inyectar código malicioso. Descarga estos archivos y compáralos con una copia limpia de la misma versión de PrestaShop. Si hay diferencias, es una señal clara.
  3. Inspecciona la carpeta modules: Busca módulos que no hayas instalado tú. Los nombres suelen ser genéricos o con errores ortográficos (seo-booster, payment-module, etc.). Desconfía de todo lo que no reconozcas.
  4. Analiza el .htaccess: Este archivo es un objetivo común. Los atacantes añaden reglas de redirección maliciosas. Ábrelo y busca líneas que redirijan a dominios extraños (normalmente codificados con base64_decode).
  5. Limpia el código inyectado: Si encuentras una línea de código como eval(base64_decode("...")) o similar, es malware. Elimina esa línea entera. Si el archivo está muy comprometido, lo mejor es reemplazarlo por una versión limpia desde la web oficial de PrestaShop.

[WARNING] Si no estás seguro de lo que estás haciendo, no elimines archivos núcleo a lo loco. Podrías romper la tienda por completo. Es mejor subir una copia limpia de la versión original de PrestaShop y luego sobrescribir solo los archivos que te indique el escáner.

Limpieza de la Base de Datos: El Malware Silencioso

El malware prestashop no solo vive en los archivos; también se esconde en la base de datos. A menudo, se inyectan enlaces en las tablas de productos o en la tabla ps_links.

Cómo Buscar y Eliminar el Código Malicioso en la BD

  1. Accede a phpMyAdmin (desde tu panel de control).
  2. Selecciona la base de datos de tu tienda.
  3. Haz clic en la pestaña "SQL" para ejecutar consultas.
  4. Ejecuta esta consulta para buscar enlaces sospechosos en todas las tablas (reemplaza tuprefijo_ por el tuyo, normalmente ps_):
    SELECT * FROM tuprefijo_productos WHERE descripcion_corta LIKE '%http://spam-site.com%' OR descripcion LIKE '%http://spam-site.com%';
    
    Si obtienes resultados, tendrás que editar esos registros y eliminar el enlace malicioso.
  5. Otra consulta útil es buscar código JavaScript inyectado:
    SELECT * FROM tuprefijo_productos WHERE descripcion LIKE '%<script%' OR descripcion_corta LIKE '%<script%';
    
  6. Si encuentras muchas tablas afectadas, la opción más segura es restaurar una copia de seguridad limpia de la base de datos (de antes de la infección) y luego re-aplicar solo los cambios que hayas hecho desde entonces.

[TIP] Exporta la base de datos a un archivo .sql y ábrelo con un editor de texto como Notepad++. Busca las palabras eval(, base64_decode, gzinflate o http:// para localizar rápidamente el código ofensivo.

Prevención: Blindando tu Tienda Contra Futuros Ataques

Una vez que has eliminado el virus prestashop, es crucial que refuerces la seguridad para que no vuelva a ocurrir. Limpiar sin prevenir es como dejar la puerta de casa abierta después de un robo.

Actualiza Todo, Absolutamente Todo

  • Núcleo de PrestaShop: Si estás en una versión 1.6 o 1.7, actualiza a la última versión estable (1.7.8.x o la 8.x). Las versiones antiguas tienen vulnerabilidades conocidas y explotadas.
  • Módulos y Plantillas: Los módulos y temas desactualizados son la principal puerta de entrada. Elimina los que no uses y actualiza los que uses.

Refuerza los Accesos

  • Activa la autenticación de dos factores (2FA) en el back-office de PrestaShop.
  • Cambia el prefijo de la base de datos de ps_ a algo más complejo y difícil de adivinar.
  • Limita los intentos de conexión al panel de administración. Muchos módulos de seguridad ofrecen esta función.
  • Usa contraseñas únicas y robustas para FTP, hosting y base de datos.

Configuración del Servidor (Syspanel, cPanel, etc.)

  • Protege la carpeta /admin: Cambia el nombre de la carpeta de administración de PrestaShop a algo poco predecible, como mi-backoffice-2024.
  • Activa el cortafuegos (Firewall): Si tu hosting lo permite, activa un firewall de aplicación web (WAF) como ModSecurity.
  • Configura correctamente los permisos de archivos: Los directorios deben tener permisos 755 y los archivos 644. Nunca dejes archivos con permisos 777.

Mantenimiento Continuo

  • Realiza copias de seguridad periódicas (diarias o semanales) y guárdalas en un lugar seguro, idealmente fuera del servidor.
  • Revisa los logs del servidor (en Syspanel o cPanel) para detectar intentos de acceso extraños.
  • Suscríbete a las alertas de seguridad de PrestaShop para estar al tanto de las últimas vulnerabilidades y parches.

Preguntas Frecuentes (FAQ) sobre Seguridad en PrestaShop

¿Cómo sé si mi PrestaShop tiene malware si no veo nada raro?

Los síntomas no siempre son visibles. Usa herramientas como Google Search Console para ver si Google ha marcado tu sitio. Además, revisa el código fuente de tu portada buscando scripts extraños. Un buen escáner de seguridad de pago puede ayudarte a detectar infecciones ocultas.

¿Puedo eliminar el virus PrestaShop sin saber de programación?

Sí, es posible si la infección es simple y se detecta con un escáner. Sin embargo, para infecciones complejas que se esconden en la base de datos o en archivos núcleo, es muy recomendable contar con un desarrollador o un servicio de limpieza profesional. Un error en la limpieza manual puede romper tu tienda.

¿Qué hago si mi tienda ha sido incluida en la lista negra de Google?

Primero, limpia la tienda por completo. Luego, en Google Search Console, solicita una revisión del sitio. Google te pedirá que demuestres que has solucionado el problema. El proceso puede tardar desde unos días hasta varias semanas.

¿Cuál es la forma más común de que hackeen una tienda PrestaShop?

La mayoría de los ataques se producen a través de módulos o plantillas piratas (nulled) que contienen código malicioso oculto, o por contraseñas débiles en el panel de administración. También es común aprovechar vulnerabilidades en versiones antiguas de PrestaShop que no se han actualizado.

¿Syspanel es seguro para alojar mi PrestaShop?

Syspanel es un panel de control de hosting que, como cualquier otro (cPanel o Plesk), es tan seguro como su configuración. Asegúrate de que el acceso a tu panel (puerto 2106) esté protegido con una contraseña robusta y activa la autenticación de dos factores si está disponible. La seguridad de tu tienda depende más de cómo configures y mantengas PrestaShop que del panel en sí.

Después de limpiar, ¿debo cambiar todas las contraseñas de mis clientes?

No es necesario cambiar las contraseñas de los clientes a menos que el malware haya comprometido específicamente la base de datos de usuarios (lo cual es poco común). Sin embargo, es una buena práctica informar a tus clientes del incidente y recomendarles cambiar sus contraseñas si usan la misma en otros sitios, por precaución.

¿Qué es un backdoor y por qué es tan peligroso?

Un backdoor (puerta trasera) es un archivo malicioso que se instala en tu servidor para permitir al atacante volver a entrar en el futuro, incluso después de que hayas limpiado el malware visible. Es como dejar una llave escondida bajo el felpudo. Por eso es crucial revisar todos los archivos y no solo los que están infectados visiblemente.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel