Cuando actualizo los sitios de Joomla a la última versión, siempre tengo un pequeño pánico en caso de que el sitio que estoy actualizando, creado en el pasado por algún desarrollador malintencionado (es decir, yo, hace 6 años), tenga cambios en las características archivos principales de Joomla.
En un mundo ideal, podría evitar este potencial coronario si tuviera una extensión o herramienta que:
- Conoce todos los archivos principales de Joomla incluidos en cada versión de Joomla
- Compara cada archivo en mi instalación de Joomla con los archivos fuente maestros de Joomla en Github o donde sea (incluso algo así como una comparación de hash MD5)
- Si difieren, inicie una herramienta de diferencias para encontrar las diferencias y marcarlas para su revisión.
- Si son lo mismo, excelentes cosas, no se requiere acción
- Genere un informe al final que detalle los resultados del proceso anterior.
He encontrado esta extensión que hace la mayor parte de lo anterior, pero no se ha actualizado desde J2.5.7 o en absoluto para J3.X, así que eso está fuera.
En mi empresa, utilizamos MyJoomla para realizar 'auditorías' completas del sitio de Joomla (una larga lista de verificación de las mejores prácticas y correcciones para los sitios de Joomla) de vez en cuando, parte de lo cual es una 'Comprobación de integridad de los archivos principales'. Sin embargo, este servicio tiene una tarifa de suscripción mensual y todo lo que realmente quiero comprobar es si algún archivo ha sido pirateado antes de realizar una actualización.
¿Alguien sabe de alguna otra solución? Además de 'no hackear archivos principales', hasta hace muy poco no había otra forma de realizar ciertas tareas sin un montón de trabajo adicional, a menudo no remunerado.
Respuestas:
No puedo imaginar una herramienta mejor que git . Esta es una gran herramienta para rastrear los cambios que realiza en el código (si está haciendo alguno), es el sistema utilizado por Joomla para contribuir con el código (que es algo increíble), ¡y este es su propósito!
El flujo de trabajo es bastante simple y debería permitirle estar bastante libre de preocupaciones:
git init
en la carpeta raíz de la copia local. Luego corregit add --all
ygit commit
. Esto toma una instantánea del código tal como está ahora.git diff
y verá una lista de todas las diferencias en los archivos entre lo que está ejecutando y los archivos principales.Reconozco que esta es una respuesta bastante "de desarrollo" y que no todos quieren usar git en la línea de comando. Si usa una GUI de Git (como el cliente de Github), puede omitir el último paso, ya que la GUI generalmente le mostrará la diferencia automáticamente.
En última instancia, recomiendo este método, ya que te enseña una habilidad que te ayudará si codificas y contribuyes a Joomla y mantiene todas las comprobaciones a nivel local, ¡para que no tengas que preocuparte por enviar tu código a otro sitio web o servicio!
fuente
Esta es una extensión de la respuesta de FFrewin. Akeeba también produce una herramienta gratuita llamada SiteDiff. Le permite comparar 2 sitios que han sido respaldados con Akeebabackup (también hay una versión gratuita de eso).
Para que esto funcione, tendría que tener 2 copias de seguridad. Una copia de seguridad sería de su sitio (digamos que era la versión 2.5.19). Para la otra copia de seguridad, necesitará instalar una copia nueva de Joomla 2.5.19 y luego hacer una copia de seguridad de esa instalación. A continuación, compare las dos copias de seguridad con la herramienta SiteDiff.
Un problema con este método es que tendrá más archivos en la copia de seguridad de su sitio que su nueva instalación. Los archivos adicionales aparecerán como diferencias, posiblemente haciendo que sea difícil discernir los cambios centrales del resto del 'ruido'.
fuente
http://audit-fs.co.za/ tiene una herramienta gratuita llamada Audit_FS que muestra archivos modificados de Joomla y / o posiblemente archivos corruptos de Joomla.
fuente
No conozco ninguna extensión que no sea la que mencionaste, que se detiene en algún lugar de J2.5.
Mi forma de manejar esto es mediante el uso de aplicaciones de escritorio para la comparación de archivos / carpetas y comparo el sitio en cuestión con su versión original de Joomla. Yo personalmente uso el DiffMerge en Mac.
Otra utilidad que conozco que podría ayudarlo a realizar un seguimiento de los archivos pirateados / modificados en sus sitios es Admin Tools pro. Proporciona la herramienta de escáner php. Pero prácticamente este es para sitios que ha desarrollado y escaneado después del lanzamiento, y para ayudarlo a descubrir cualquier archivo infectado después de los intentos de piratería.
fuente