Módulo PrestaShop

PrestaWard Snapshot

Control de integridad para tiendas PrestaShop. Crea una línea base de archivos, compara cambios y avisa por email cuando algo sensible se mueve.

Distribución exclusiva en PrestaShop Marketplace (Addons).

PrestaWard Snapshot
Baseline + comparación + alertas

  • Trabajos con progreso guardado
  • Archivos sensibles bajo control
  • PrestaShop 1.7, 8 y 9
  • Laboratorio multiversión

Qué hace

Una tienda cambia constantemente. PrestaWard Snapshot crea una referencia técnica y muestra archivos añadidos, modificados o eliminados para que puedas distinguir una intervención prevista de un cambio inesperado.

También analiza el código sospechoso de los archivos nuevos o modificados, asigna un nivel de riesgo a cada cambio y agrupa las actualizaciones de módulos y temas, para que lo que merece atención no se pierda entre los cambios rutinarios.

También revisa el JavaScript del tema activo y de los módulos de pago en busca de señales de skimmers de tarjetas, vigila el volumen de las carpetas multimedia y comprueba 14 puntos de la configuración de seguridad. Un panel en pestañas, con un Resumen mínimo, te dice en una línea qué necesita atención. Es de solo lectura sobre tus archivos: no los modifica, restaura ni borra, y solo escribe en su propio espacio de trabajo y en su base de datos.

Cómo funciona

  • Guarda una huella SHA-256 de cada archivo, junto con su ruta relativa, su tamaño y su fecha de modificación. No guarda copias de los archivos ni su contenido.
  • Compara la tienda con la última línea base y clasifica cada cambio como rutinario, sospechoso o crítico. Los archivos ejecutables y los de configuración sensible se vigilan siempre.
  • Revisa módulos, pasarelas de pago, temas, clases del núcleo, administración, configuración, override, src, vendor, upload, download, img, js y los archivos de la raíz. Las carpetas volátiles de PrestaShop, como img/tmp y las cachés de recursos del tema, no se analizan.
  • Las exclusiones se definen por nombre exacto o ruta relativa. Antes de activarlas hay una vista previa obligatoria, y las carpetas excluidas siguen vigiladas en busca de archivos ejecutables.
  • Lanza la comparación desde el Back Office o mediante un cron protegido por token. En tiendas con muchísimos archivos, un trabajo puede necesitar el proceso de línea de comandos bin/snapshot-worker.php, que el administrador del servidor ejecuta a mano: el módulo nunca lo inicia por sí solo.
  • Si un análisis falla o se cancela, se conserva la última línea base válida. Los resultados de una comparación solo se muestran cuando el trabajo termina por completo.
  • Envía una alerta por correo cuando detecta cambios relevantes. Los destinatarios se configuran en el módulo y, por defecto, es el correo de la tienda. En la cabecera del correo aparece el logotipo de tu tienda y el pie lleva el logotipo de GO ON Agency y la firma «PrestaWard by GO ON Agency».
  • Conserva el historial el tiempo que configures (90 días por defecto) y no elimina revisiones pendientes.
  • El panel se divide en pestañas (Resumen, Cambios, Trabajos, Comprobaciones, Configuración y Registros de actividad) y solo calcula la que tienes abierta, así que abre más rápido en tiendas grandes. Una última pestaña, Soporte, reúne el panel de soporte de GO ON Agency y el estado de Integrity queda al final de todas. El Resumen muestra la línea base, la última comparación, una acción principal (Crear snapshot si no hay línea base y Comparar ahora si la hay) y, como máximo, una línea: el trabajo en curso o la alerta más importante, con «y N más» si hay otras.
  • Los trabajos terminados se conservan 90 días y se consultan en la pestaña Trabajos, en una tabla con filtros por tipo, estado y fechas. Cada trabajo tiene su detalle (cronología, archivos, memoria máxima, avisos con carpetas de ejemplo y descarga de diagnóstico) y, cuando se limpia el detalle de archivos, conserva un resumen de lo ocurrido.
  • Un trabajo que necesita el proceso de línea de comandos aparece en ámbar, con el motivo en lenguaje claro y el comando exacto con un botón para copiarlo. En el navegador no tiene botón de reanudar.

Requisitos

  • PrestaShop 1.7, 8 o 9, incluidas las instalaciones multitienda, y la versión de PHP que exija tu versión de PrestaShop (PHP 7.1 o superior en PrestaShop 1.7).
  • Tablas de base de datos con motor InnoDB. El módulo lo comprueba y convierte sus propias tablas al actualizar.
  • Tras la instalación solo accede el perfil de administrador. Otros perfiles se autorizan con los permisos nativos de PrestaShop de lectura, creación y modificación.
  • Panel y mensajes en nueve idiomas.

Qué no hace

  • No es una copia de seguridad y no restaura archivos: detecta que algo ha cambiado, pero no lo recupera. Complementa tus backups y tu control de versiones, no los sustituye.
  • No es un antivirus ni un escáner de malware. Busca patrones habituales de web shells y de código ofuscado en los archivos PHP y JavaScript nuevos o modificados (hasta 512 KB cada uno) y vigila de forma especial los archivos ejecutables, incluidos los que ocultan código PHP tras una extensión engañosa. Una coincidencia significa «revisa este archivo», no prueba de ataque, y un archivo sin coincidencias no queda demostrado como seguro.
  • Las señales de skimmer de tarjetas en JavaScript son heurísticas: indican un motivo para mirar el archivo, no prueban un compromiso, y una dirección que el código construye mientras se ejecuta no se detecta. Las direcciones de la propia tienda y de las pasarelas de pago no cuentan como otro sitio web.
  • No analiza la base de datos.
  • No envía archivos, rutas ni contenido a ningún servicio externo. La conexión con PrestaWard Integrity transmite el identificador de la instalación y de la tienda, el dominio, la huella del paquete instalado y la huella resumen de cada snapshot, sin datos personales de clientes.
  • No evita ni bloquea los cambios en la tienda: avisa después de que ocurran.
  • El pie de los correos del módulo no contiene enlaces, direcciones de contacto ni imágenes alojadas fuera de tu tienda: el logotipo de GO ON Agency es un archivo del propio módulo que se sirve desde tu tienda.

Funciones principales

  • Snapshot de módulos, pasarelas de pago, temas, core, administración y configuración.
  • Análisis de código sospechoso en los archivos PHP y JavaScript nuevos o modificados: busca patrones propios de web shells y de código ofuscado y explica el resultado en lenguaje claro. Un archivo que supera el límite de tamaño se marca como revisado solo en parte.
  • Detección de imágenes disfrazadas (con cabecera incorrecta o con PHP dentro) en todas las carpetas, también en las excluidas y, con un presupuesto de tiempo y tamaño, en las volátiles como img/tmp.
  • Nivel de riesgo en cada cambio (alto, requiere revisión o bajo), visible y filtrable en la revisión, incluido en el CSV de auditoría y en los correos de alerta.
  • Las actualizaciones de módulos y temas se agrupan en un solo elemento con la versión anterior y la nueva, y el PHP cambiado dentro de una actualización detectada es de riesgo bajo y no genera correos de alerta.
  • Panel de archivos del núcleo: los compara con la lista oficial de sumas de comprobación de tu versión de PrestaShop, por lotes reanudables. Solo se descarga la lista oficial; no se envía ningún archivo. Una diferencia no prueba una intrusión, y si la lista no está disponible el panel indica que el núcleo no se ha verificado.
  • Auditoría de la configuración de seguridad con una puntuación de 0 a 100 y 14 comprobaciones: modo depuración, carpeta de administración, permisos de configuración, carpetas de instalación, volcados y archivos comprimidos en la raíz web, versión de PHP, HTTPS, errores de PHP visibles, endurecimiento de PHP (allow_url_include y expose_php), carpetas de control de versiones y archivos de entorno (.git, .svn, .hg, .env y variantes) en la raíz web y dentro de módulos y temas, claves de webservice con escritura sobre muchos recursos, comprobación de IP de la cookie y cuentas inactivas que conservan el perfil SuperAdmin. De las claves solo se cuenta cuántas hay, sin leerlas ni mostrarlas, y de las cuentas solo cuántas son, sin nombres ni direcciones. Cada punto tiene explicación y solución, y lo que no se puede comprobar figura como no comprobado y no puntúa.
  • Heurísticas de skimmer de tarjetas en el JavaScript nuevo o modificado del tema activo y de los módulos de pago: código que lee el número, la caducidad o el código de seguridad de la tarjeta y los envía a otro sitio web (riesgo alto), datos enviados a otro sitio desde código del pedido o del pago, y código muy ofuscado junto al código del pedido o del pago (ambos requieren revisión). Cada hallazgo se explica en la revisión del cambio.
  • Presupuesto de volumen multimedia: para cada carpeta (img, upload, uploads y download) cuenta archivos y bytes en cada línea base y comparación, sin acceder a más archivos ni guardar datos por archivo. Comprobaciones muestra el total por carpeta y el crecimiento desde la línea base, y Configuración permite fijar un máximo de archivos, un tamaño máximo en GB y un crecimiento máximo en porcentaje (50 % por defecto; 0 desactiva el límite). Un límite superado aparece en el Resumen y en el correo de alerta.
  • Límite de vigilancia visible: si un análisis llega al límite de 250.000 nombres leídos en las carpetas excluidas, el Resumen y Comprobaciones indican cuántas carpetas quedan sin vigilar, y el volumen multimedia se marca como parcial.
  • Aviso de un cron que nunca se ha ejecutado y alerta propia para las carpetas y copias de módulos de copia de seguridad que haya en la raíz web.
  • Ventana de mantenimiento de 1 a 4 horas: silencia los correos de alerta pero sigue registrando los cambios, y al cerrarse envía un resumen agrupado con las acciones Aceptar estos cambios o Descartar. Snapshot nunca crea una línea base por sí solo.
  • Revisión de cambios preparada para resultados muy grandes: paginación por ventanas con salto a una página, resumen agrupado por carpeta, estado y nivel de riesgo, y cola pendiente en la que cada archivo aparece una vez por línea base.
  • Línea base ágil en tiendas grandes: la publicación solo lee las filas de su propio trabajo y los datos temporales de los trabajos terminados se eliminan por lotes acotados, sin acumularse.
  • Comparación desde Back Office o cron protegido por token.
  • Alertas por email con resumen, categorías afectadas y enlace al panel.
  • Panel en pestañas con Resumen mínimo, historial de trabajos de 90 días con filtros y detalle, cobertura, cambios recientes, registros de actividad y una pestaña Soporte con el diagnóstico, siempre la última.
  • Barra de filtros común en la revisión de cambios y en el historial de trabajos: los selectores se reparten en una cuadrícula de igual ancho, el buscador y el botón Filtrar van en una misma fila y las acciones secundarias, como exportar la auditoría en CSV, quedan alineadas a la derecha.
  • Aspecto unificado del panel en los cuatro módulos PrestaWard: cabeceras de sección, tarjetas de formulario con bordes neutros y bloques plegables comunes, estadísticas en una sola línea y un logotipo de GO ON Agency más grande en la cabecera. El botón principal pasa a ser un color sólido de la marca, sin degradado.
  • Correos con la cabecera de tu tienda: el logotipo de la tienda arriba y, en el pie, el logotipo de GO ON Agency con la firma «PrestaWard by GO ON Agency». El asunto ya no repite el nombre de la tienda.
  • Trabajos de línea base y comparación que se reanudan desde el progreso guardado.
  • Exclusiones configurables con vista previa y nueva línea base segura.
  • Vigilancia obligatoria de ejecutables y configuración sensible incluso dentro de carpetas excluidas.
  • Conexión automática con PrestaWard Integrity, sin bloquear la tienda, con recibos firmados y encadenados de la huella resumen de cada snapshot. En la pantalla del módulo, el botón Sincronizar actualiza la conexión.
  • Heartbeat y estado de cron para detectar ejecuciones atrasadas o fallidas.
  • Escaneo incremental con rehash obligatorio de ámbitos críticos y barrido completo periódico.
  • Clasificación, filtros, paginación, revisión y exportación CSV de cambios.
  • Diff seguro de metadatos, retención configurable y limpieza protegida.
  • Panel de soporte de GO ON Agency con un informe de diagnóstico descargable. Lo descarga un empleado con permiso de edición, con una tienda seleccionada. Solo contiene versiones, estados y contadores, no incluye rutas, contenido de archivos ni credenciales y no se envía de forma automática.

Compatibilidad verificada

La versión 0.1.8 superó las pruebas de laboratorio en PrestaShop 1.7, 8 y 9 el 15 de octubre de 2026, en instalación limpia y en actualización desde la 0.1.7. La versión 0.1.7 superó las de laboratorio el 13 de octubre de 2026, se ensayó con un volumen real de 151.440 archivos y se usó como canario en una tienda de producción real. La versión 0.1.3 superó además instalación, desinstalación, reinstalación, acceso autenticado, pruebas adversariales de exclusiones y validación criptográfica en PrestaShop 1.7.8.11 con PHP 7.4, PrestaShop 8.2.7 con PHP 8.1 y PrestaShop 9.1.4 con PHP 8.5.

Uso seguro

Crea una línea base únicamente cuando la tienda esté revisada y limpia. Compara después de cada intervención y no normalices cambios que todavía no hayas identificado. El módulo complementa, pero no sustituye, backups ni control de versiones.

Changelog

0.1.8

  • El panel se divide en pestañas (Resumen, Cambios, Trabajos, Comprobaciones, Configuración y Registros de actividad) y solo calcula la pestaña abierta, de modo que abre más rápido en tiendas grandes. El panel de soporte de GO ON Agency tiene su propia pestaña, Soporte, siempre la última, y la sección de Integrity queda al final de todas las pestañas.
  • Resumen mínimo: la línea base actual, la última comparación y su resultado, una acción principal y, como máximo, una línea con el trabajo en curso o la alerta más importante (cambios pendientes de revisar, carpetas nuevas o ya no cubiertas que piden una nueva línea base, una ventana de mantenimiento por cerrar, un cron que nunca se ha ejecutado o va tarde, copias de seguridad en la raíz web). Si hay más alertas, la línea añade «y N más».
  • Pestaña Trabajos: el trabajo en curso como una tarjeta con sus fases (descubrir, calcular huellas, validar, comparar o publicar, atestar), contador de archivos, tiempo transcurrido, última actualización y quién lo ejecuta (Back Office, cron o línea de comandos). Un trabajo que necesita el proceso de línea de comandos aparece en ámbar, con el motivo en lenguaje claro y el comando exacto con un botón para copiarlo; en el navegador no tiene botón de reanudar.
  • Historial de trabajos de 90 días en una sola tabla (tipo, origen, empleado, inicio, duración, estado, resultado y avisos) con filtros por tipo, estado y fechas y paginación, en lugar del límite anterior de los 20 últimos trabajos o 7 días. El resultado de una comparación enlaza con los cambios que encontró y una comprobación de archivos del núcleo enlaza con la pestaña Comprobaciones.
  • Detalle de cada trabajo: cronología, archivos, memoria máxima, hash de la política, línea base y comparación enlazadas, avisos con carpetas de ejemplo, un error traducido si falló y descarga de diagnóstico. Cuando se limpia el detalle de archivos de un trabajo terminado, se conserva un resumen (recuentos de alertas con carpetas de ejemplo y carpetas no cubiertas por completo) y la página indica que el detalle se limpió.
  • La cobertura por categoría pasa al final de Cambios; las comprobaciones de la tienda (copias de seguridad, archivos del núcleo, auditoría de configuración y salud de módulos) quedan juntas en Comprobaciones; y los ajustes de correo, cron, política de análisis, ventana de mantenimiento y almacenamiento están en Configuración.
  • La auditoría de configuración de seguridad pasa a 14 comprobaciones. Nuevas: endurecimiento de PHP (allow_url_include y expose_php), carpetas de control de versiones y archivos de entorno (.git, .svn, .hg, .env y variantes) en la raíz web y dentro de módulos y temas, claves de webservice con escritura sobre muchos recursos (solo se cuenta cuántas hay; nunca se lee ni se muestra una clave), comprobación de IP de la cookie y cuentas inactivas que conservan el perfil SuperAdmin (solo se cuentan, sin nombres ni direcciones). Cada una tiene explicación y solución, y lo que no se puede leer figura como no comprobado. .git, .svn y .env en la raíz web pasan de la comprobación de archivos de instalación y copias a la nueva, para no contarlos dos veces.
  • Heurísticas de skimmer de tarjetas para JavaScript: el JavaScript nuevo o modificado del tema activo y de los módulos de pago se revisa también en busca de tres señales: código que lee el número, la caducidad o el código de seguridad y envía datos a otro sitio web (riesgo alto), datos enviados a otro sitio desde código del pedido o del pago (requiere revisión) y código muy ofuscado junto al código del pedido o del pago (requiere revisión). Las direcciones de la propia tienda, las pasarelas de pago y, para las señales más débiles, los servidores de analítica conocidos no cuentan como otro sitio. Una coincidencia es un motivo para mirar el archivo, no una prueba de compromiso, y una dirección que el código construye mientras se ejecuta no se detecta.
  • Presupuesto de volumen multimedia: cada línea base y comparación cuenta, para cada carpeta multimedia (img, upload, uploads y download), los archivos y los bytes que ya recorrió, sin acceder a más archivos ni guardar datos por archivo. Comprobaciones muestra el total por carpeta, el crecimiento desde la línea base y si se supera un límite. Configuración tiene tres límites: máximo de archivos, tamaño máximo en GB y crecimiento máximo desde la línea base en porcentaje (50 % por defecto; 0 desactiva un límite). Un límite superado aparece en el Resumen y en el correo de alerta, que también se envía cuando ningún archivo cambió lo bastante para provocarlo por sí solo.
  • Límite de vigilancia visible: un análisis lee como máximo 250.000 nombres en las carpetas excluidas, y las carpetas posteriores se registraban como no cubiertas pero solo se mostraban dentro del trabajo. Ahora son una línea de alerta en el Resumen y un aviso en Comprobaciones con el número de carpetas sin vigilar, y el volumen multimedia se marca como parcial si se midió bajo ese límite.
  • Corrige que la conexión con Integrity se degradara con el Back Office en el contexto «todas las tiendas» o cuando una tienda distinta de la primera servía la prueba de inscripción: la tienda conectada pasaba a «inscripción pendiente» y la prueba no se podía firmar. La identidad de la instalación se lee ahora como una unidad desde el ámbito global (o desde la tienda que la guarda) en cualquier contexto, la actualización pasa al ámbito global una identidad guardada en una tienda sin regenerarla y, si no se puede leer, el estado de Integrity se deja como estaba.
  • Nuevo: barra de filtros común. La revisión de cambios y el historial de trabajos la usan: los selectores se reparten en una cuadrícula de igual ancho, el buscador y el botón Filtrar van en una misma fila y las acciones secundarias, como exportar la auditoría en CSV, quedan alineadas a la derecha. Antes los filtros se amontonaban y los botones se solapaban.
  • Los correos de alerta, de resumen de mantenimiento y de prueba muestran el logotipo de tu tienda en la cabecera (con el nombre de la tienda como texto alternativo) y un pie común con el logotipo de GO ON Agency y la firma «PrestaWard by GO ON Agency», sin enlaces ni direcciones de contacto. El logotipo del pie es un archivo del propio módulo servido desde tu tienda.
  • Corrige que el asunto de los correos llevara el nombre de la tienda dos veces.
  • Aspecto unificado del panel en los cuatro módulos PrestaWard: cabeceras de sección, tarjetas de formulario con bordes neutros y bloques plegables comunes, estadísticas en una sola línea y un logotipo de GO ON Agency más grande en la cabecera. El botón principal pasa a ser un color sólido de la marca, sin degradado.
  • Corrige que, en PrestaShop 9, el tema de administración mostrara las pestañas subrayadas como enlaces y los títulos de sección en mayúsculas. Los estilos comunes lo neutralizan solo dentro del panel de PrestaWard, así que PrestaShop 1.7 y 8 se ven igual que antes.
  • Corrige que, en PrestaShop 1.7, la hoja de estilos del módulo se descartara al registrarla con el número de versión en la dirección. Ahora se comprueba el archivo y se registra sin parámetros, de modo que el aspecto nuevo aparece en 1.7, 8 y 9.
  • Corrige que, en PrestaShop 9, las acciones del panel (las solicitudes de trabajos y la descarga del informe de soporte, además de la sincronización con Integrity) comprobaran el token de seguridad con un método que PrestaShop 9 no usa y pudieran rechazarse. Ahora se valida con el servicio de PrestaShop 9; en PrestaShop 1.7 y 8 la comprobación sigue igual.
  • Cuando la conexión con Integrity no se puede actualizar en ese momento, el panel muestra un único mensaje: la conexión guardada sigue siendo válida y se reintentará automáticamente. Las etiquetas de todas las pestañas están traducidas a los nueve idiomas.
  • La cabecera del producto vuelve a mostrar el logotipo de GO ON Agency y la firma «PrestaWard by GO ON Agency», sin enlaces. El formato de la línea base, los bytes del manifiesto y el contrato con la API de Integrity no cambian; la actualización añade columnas (dos a la tabla de trabajos y las del volumen multimedia por carpeta, trabajo y línea base).

0.1.7

  • Analiza el código sospechoso de los archivos PHP y JavaScript nuevos o modificados (hasta 512 KB cada uno) en busca de patrones propios de web shells y de código ofuscado, y explica el resultado en lenguaje claro. Una coincidencia significa «revisa este archivo», no prueba de ataque; un archivo sin coincidencias no queda demostrado como seguro, y uno que supera el límite se marca como revisado solo en parte.
  • Detecta imágenes disfrazadas (con cabecera incorrecta o con PHP dentro) en todas las carpetas: incluidas, excluidas y, con un presupuesto de tiempo y tamaño, volátiles como img/tmp, que el análisis sigue sin recorrer.
  • Asigna un nivel de riesgo a cada cambio (alto, requiere revisión o bajo), visible y filtrable en la revisión de cambios e incluido en el CSV de auditoría y en los correos de alerta.
  • Agrupa las actualizaciones de módulos y temas en un solo elemento con la versión anterior y la nueva. El PHP cambiado dentro de una actualización detectada es de riesgo bajo y ya no genera correos de alerta. Requiere una línea base creada con esta versión.
  • Nuevo panel de archivos del núcleo: los compara con la lista oficial de sumas de comprobación de tu versión de PrestaShop, por lotes reanudables. Una diferencia no prueba una intrusión; si la lista no existe o no se puede descargar, el panel indica que el núcleo no se ha verificado y nunca lo presenta como superado.
  • Nueva auditoría de la configuración de seguridad con una puntuación de 0 a 100 (modo depuración, carpeta de administración, permisos de configuración, carpetas de instalación, volcados y archivos comprimidos en la raíz web, versión de PHP, HTTPS y errores de PHP visibles, entre otros puntos). Cada punto tiene explicación y solución; lo que no se puede comprobar figura como no comprobado y no puntúa.
  • Avisa de un cron que nunca se ha ejecutado y, con una alerta propia, de las carpetas y copias de módulos de copia de seguridad que haya en la raíz web.
  • Las instalaciones nuevas excluyen por defecto las copias de seguridad de módulos y la carpeta de descargas. En las instalaciones existentes esas exclusiones se ofrecen en el panel y solo se aplican si las activas, lo que crea una nueva línea base.
  • Ventana de mantenimiento de 1 a 4 horas: silencia los correos de alerta pero sigue registrando los cambios, y al cerrarse envía un resumen agrupado con las acciones Aceptar estos cambios o Descartar. Aceptar solo los marca como revisados; Snapshot nunca crea una línea base por sí solo.
  • Cuando la cobertura del análisis crece entre versiones, los archivos de carpetas que la línea base antigua no cubría se informan como cobertura nueva y no como miles de archivos añadidos con alertas críticas.
  • La revisión de cambios funciona con resultados muy grandes: paginación con salto a página, resumen agrupado por carpeta, estado y riesgo, y cambios pendientes de líneas base anteriores marcados como sustituidos.
  • Reduce el tiempo de creación de la línea base y de validación de directorios en tiendas grandes con trabajos anteriores retenidos (minutos en lugar de decenas de minutos) y elimina por lotes acotados las filas temporales de los trabajos terminados.
  • Corrige varios avisos: Snapshot ya no detecta sus propios archivos como cambio de riesgo alto, el archivo index.php estándar de protección de PrestaShop ya no se marca como ejecutable sospechoso, «Cambios recientes» muestra los totales de la última comparación y, tras crear una línea base, el panel no presenta como actual la comparación anterior.
  • El Back Office indica «Procesando desde la consola» mientras el proceso por consola trabaja, recargar la página tras pulsar un botón ya no lo envía de nuevo y un inicio rechazado dice qué trabajo está en curso. El proceso por consola escribe una línea de progreso breve en lugar de una por paso.
  • Coherencia del Back Office: el panel de trabajos y sus botones tienen el mismo aspecto que el resto del panel, y los mensajes de estado del cron y del registro de actividad se muestran en el idioma del Back Office en los nueve idiomas.
  • El panel de soporte y diagnóstico se coloca justo antes de la sección de Integrity, como en el resto de módulos PrestaWard, y en el contexto «todas las tiendas» ya no desaparece: indica que hay que seleccionar una tienda.
  • Las hojas de estilo se cargan con la versión del módulo, de modo que el nuevo aspecto aparece tras actualizar sin vaciar la caché del navegador.
  • Sincroniza con Integrity cada vez que abres el panel, con una petición en segundo plano que nunca retrasa la página y como máximo una vez por minuto y tienda.

0.1.6

  • Un enlace simbólico ya no interrumpe el escaneo: se omite sin seguirlo ni calcular su huella (por tanto no forma parte de la línea base) y se informa en el panel, con una alerta cuando apunta fuera de la tienda o a un destino inexistente.
  • Descarta durante la exploración los archivos que no pueden formar parte del manifiesto.
  • No recorre nunca las carpetas volátiles de PrestaShop (img/tmp y las cachés de recursos combinados del tema), que se regeneran constantemente y podían interrumpir un análisis con directory_changed.
  • Aplica las exclusiones antes de entrar en cada carpeta: las carpetas excluidas ya no forman parte del análisis de integridad y solo se vigilan en busca de archivos ejecutables, en una pasada aparte que nunca detiene el trabajo y que se limita a 250.000 nombres por trabajo.
  • Vuelve a leer hasta tres veces una carpeta incluida que cambia durante el análisis. Si sigue cambiando, las carpetas del núcleo, la configuración, la administración, los módulos de pasarela de pago y el tema activo detienen el trabajo como antes; el resto se omite con una alerta y el trabajo termina.
  • El cron avanza varios lotes consecutivos por llamada (hasta unos 20 segundos) y avisa con el estado cli_required y respuesta HTTP 409 cuando un trabajo necesita el proceso de línea de comandos. Una herramienta de monitorización que trate como fallo cualquier respuesta distinta de 2xx lo señalará, como es esperable. Ese proceso lo ejecuta a mano el administrador del servidor: el módulo nunca lo inicia por sí solo.
  • Refuerza el bloqueo que evita ejecuciones simultáneas del cron, incluso si dos primeras ejecuciones coinciden.
  • Traslada los ficheros temporales del manifiesto a un directorio privado dentro de la tienda, compatible con open_basedir y con la limpieza del directorio temporal del sistema. En Nginx conviene bloquear el acceso a var/prestaward-snapshot/.
  • Detecta tablas que no usan InnoDB, muestra un mensaje claro en los nueve idiomas y convierte las tablas del módulo al actualizar, registrando cada conversión.
  • Añade un panel de comprobación de estado en el Back Office, de solo lectura: carpeta privada de preparación, motor de almacenamiento de la base de datos, frecuencia del cron y trabajos a la espera del proceso de línea de comandos.
  • Corrige los totales del informe de trabajos: los enlaces se cuentan aparte de los archivos excluidos.
  • Cada módulo se analiza una sola vez, en el ámbito de pagos o en el de módulos, de modo que un módulo que no es una pasarela de pago y cambia durante el análisis ya no detiene el trabajo.
  • Si un trabajo no puede cubrir por completo alguna carpeta, el snapshot se muestra con cobertura parcial y la comparación marca como «no verificados», en lugar de eliminados, los archivos de esas carpetas.
  • El panel de trabajos indica las carpetas afectadas por cada tipo de alerta y qué hacer, en los nueve idiomas. La desinstalación elimina también las tablas de trabajos.
  • PrestaShop 9: el proceso de línea de comandos y el cron ya no fallan al confundir la carpeta admin-api del núcleo con la del Back Office.
  • Cuando el proceso de línea de comandos falla, termina con una línea de diagnóstico con un código de motivo fijo, sin rutas ni mensajes internos.
  • Reduce el coste del análisis en tiendas con muchos archivos.
  • PHP 7.1 y 7.2: la inscripción, la atestación y el heartbeat de Integrity ya no se detienen por un error de sintaxis.
  • Corrige la actualización desde 0.1.5 cuando falta la tabla de snapshots.
  • Validada en laboratorio en PrestaShop 1.7, 8 y 9, incluida una prueba con 300.000 archivos que cambian durante el análisis.

0.1.5

  • Restablece los reintentos automáticos de atestación de Integrity, los heartbeats pendientes y la retención tras las respuestas del cron asíncrono. El mantenimiento se ejecuta en lotes acotados y se coordina por separado de los avances del escaneo.
  • Si una línea base anterior incluía varias carpetas de administración, la próxima comparación puede mostrar entradas adicionales: revisa las diferencias y crea una nueva línea base cuando corresponda, sin borrar automáticamente la anterior.
  • Permite nombres de archivo válidos con puntos consecutivos y mantiene la protección frente a rutas inseguras.
  • Conserva todos los archivos de las carpetas de administración adicionales sin confundirlos con los del Back Office activo.
  • Guarda el progreso de las líneas base y comparaciones para continuar tras cerrar el panel o interrumpir una petición.
  • Procesa y verifica archivos por lotes; los resultados solo se muestran al completar el trabajo y se conserva la última línea base válida si se cancela o falla.
  • Corrige la comparación de archivos de administración con líneas base anteriores y conserva las exclusiones de carpetas desmarcadas.
  • Añade un informe de diagnóstico descargable para adjuntarlo manualmente a una solicitud de soporte, sin enviar datos automáticamente. Solo lo descarga un empleado con permiso de edición y con una tienda seleccionada, y no incluye rutas, contenido de archivos ni credenciales.
  • Completa los estados del panel, los avisos y las plantillas de alertas en nueve idiomas.
  • Conserva las correcciones de inscripción y actualización de la versión 0.1.4.

0.1.4

  • Corrige errores de inscripción de Integrity en PrestaShop 9 y conserva la inscripción existente al actualizar tiendas sin multitienda.
  • Restablece los reintentos automáticos de inscripción y registra la causa real de los fallos.
  • Actualiza el diseño común del Back Office y añade información sobre el tratamiento de datos.
  • Ajusta los formatos de números y duración al idioma del administrador y traduce los estados y etiquetas del panel.
  • Corrige el avance de la versión instalada durante la actualización.
  • Prepara el paquete AFL-3.0 para Addons: retira el comprobador de actualizaciones y calcula la identidad desde los archivos instalados.

0.1.3

  • Parche de seguridad: el escaneo ahora cubre toda la instalación de PrestaShop, incluidas las carpetas override, src, vendor, upload, download, img, js y los archivos de la raíz.
  • Parche de seguridad: los archivos con relevancia de seguridad se vigilan siempre, sin depender de su extensión.
  • Parche de seguridad: refuerza la verificación de las atestaciones remotas y detiene los reintentos automáticos cuando la clave de registro de la tienda cambia.

0.1.2

  • Heartbeat automático sin cron, activado de forma no bloqueante por el tráfico normal de la tienda.
  • La petición del navegador permanece en el mismo dominio y las credenciales de Integrity se utilizan únicamente en el servidor.
  • Bloqueo por tienda, intervalo de seis horas y espera tras fallos para evitar duplicados.
  • La sincronización manual de Integrity también actualiza la presencia de la instalación.

0.1.1

  • Heartbeat de Integrity y monitorización de la salud del cron.
  • Hashing incremental seguro con revisión completa periódica y ámbitos críticos siempre recalculados.
  • Clasificación de cambios rutinarios, sospechosos y críticos.
  • Filtros, paginación, revisión con notas y exportación CSV de auditoría.
  • Diff de metadatos sin almacenar contenido y retención con limpieza protegida.
  • Dashboard alineado visualmente con el ecosistema PrestaWard.

0.1.0

  • Alta automática y no bloqueante en PrestaWard Integrity API.
  • Cola local con reintentos para atestar cada manifiesto sin enviar archivos ni contenido.
  • Recibos remotos firmados, encadenados y verificados dentro de la tienda.
  • Estado de conexión y entrega visible desde el Dashboard.

0.0.9

  • Enlaces de ayuda contextual desde los campos de configuración hacia la guía pública.
  • Guía pública reorganizada por objetivo y campo, con explicación práctica de cada ajuste.
  • Eliminada de la configuración la visualización redundante del origen de actualizaciones.

0.0.8

  • Exclusiones configurables por nombre exacto y ruta relativa, con política inmutable y hash SHA-256.
  • Vista previa obligatoria antes de activar una política y crear su nueva línea base.
  • Bloqueo de comparaciones entre políticas diferentes.
  • Vigilancia no configurable de ejecutables y archivos de configuración dentro de zonas excluidas.
  • Detección acotada de cabeceras PHP e intérpretes peligrosos en archivos con extensión engañosa.
  • Validación completa en PrestaShop 1.7, 8 y 9, incluida una prueba mixta con 100.000 archivos.

0.0.7

  • Identidad completa del producto y del módulo técnico renombrada a PrestaWard Snapshot.
  • Acceso inicial restringido al perfil de administrador.
  • Autorización explícita de perfiles adicionales mediante los permisos nativos de PrestaShop.
  • Separación de lectura, creación de snapshots y configuración mediante permisos READ, CREATE y UPDATE.
  • Ocultación de configuración, tokens de cron y acciones sensibles para perfiles de solo lectura.
  • Documentación aclarada: el módulo supervisa la integridad, pero no almacena ni restaura copias de seguridad.

0.0.6

  • Enlaces de producto, guía, proveedor y soporte persistentes tras una instalación limpia.
  • Actualización de metadatos desde el manifest público.
  • Logos de GO ON Agency enlazados en Back Office y emails.
  • URL alternativa visible en emails HTML y texto plano.
  • Acción de email de prueba y tooling de release reproducible.

0.0.5

  • Autoload del controlador legacy corregido.
  • Acceso movido a la sección raíz PrestaWard Snapshot.

0.0.4

  • Menú de Back Office clicable.
  • Validación completa del ciclo limpio de instalación y desinstalación.

0.0.3

  • Contexto multitienda explícito.
  • Compatibilidad con propiedades dinámicas en PHP 8.5.

0.0.2

  • Roles de autorización y permisos de acceso explícitos.

0.0.1

  • Baseline, comparación, alertas, cron, logs, comprobación de actualizaciones y dashboard inicial.