it-swarm-es.tech

Extensión / herramienta recomendada para verificar las modificaciones del archivo principal

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, construido en el pasado por algún desarrollador malintencionado (es decir, yo, hace 6 años), presente cambios ('hacks') en 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 pautas de mejores prácticas y soluciones para los sitios de Joomla) de vez en cuando, parte de la cual es una 'Integridad de los archivos principales Comprobar'. 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? Aparte de 'no hackear archivos principales' - hasta hace muy poco, a veces no había otra forma de realizar ciertas tareas sin un montón de carga adicional, a menudo sin pagar , trabajo.

16
codinghands

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:

  1. Haga una copia de seguridad de su sitio web de Joomla (lo que estaba haciendo antes de todos modos, ¿no?
  2. Configure la copia de respaldo localmente.
  3. Correr git init en la carpeta raíz de la copia local. Entonces corre git add --all y git commit. Esto toma una instantánea del código tal como está ahora.
  4. Tome el parche que coincida con su versión actual de Joomla.
  5. Instale ese parche sobre su copia local.
  6. Correr 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!

11
David Fritsch

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'.

5
TryHarder

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.

Como herramienta de seguridad básica, Audit_FS está diseñado para realizar auditorías solo de sus archivos Joomla! ®, así como también para verificar sus permisos de archivos y directorios. No verifica ningún cambio o piratería en los registros de su base de datos ni verifica ningún archivo de extensiones que pueda haber instalado. El informe de auditoría también ignorará .htaccess, robots.xt, configuration.php, configuration.php-dist y copyright.php.

3
Richard

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.

2
FFrewin