Limpiar tu sitio después de un hackeo

Generalidades

Independientemente del modo de intrusión, siempre querrás limpiar después de un hackeo para garantizar la integridad de tu sitio y  que no se vuelva a comprometer.

A continuación se describen los pasos importantes que se deben seguir para reparar y proteger tu sitio web después de un presunto hackeo.

Si no te sientes cómodo arreglando tu pripio sitio, puedes pedirle al (Servicio Profesional de Eliminación de malware) de DreamHost una Reparación de tu Sitio Hackeado. Los expertos de DreamHost accederán a tu cuenta y haran las reparaciones necesarias para traer tu sitio de vuelta online rápidamente. Mira la página Términos de Servicio para más información.

Eliminar un archivo hackeado

Para eliminar un archivo hackeado, debes revisar todos los archivos de la cuenta de usuario comprometida y eliminar todo lo que no hayas colocado allí. Si estás usando un cliente FTP, asegúrate de habilitar la visualización de archivos "ocultos" – y lo mismo para el shell utilizando la opción -a con ls.

A veces puede ser útil buscar primero los archivos con marcas de tiempo de modificación que ocurrieron desde la última vez que modificaste tu sitio o en el momento en que tuvo lugar el hackeo. Si has identificado un archivo que se modificó definitivamente en el hackeo (como una página de índice desfigurada), puedes identificar los archivos utilizados para modificar el archivo hackeado buscando la marca de tiempo del archivo en tus logs HTTP a través de shell.

El siguiente es un comando útil para encontrar archivos modificados:

En los siguientes ejemplos, username sería tu usuario Shell y example.com tu sitio web.

[server]$ find /home/username/www.example.com/ ! -name "log" -mtime -3

Donde el "-3" es el número de días en el pasado para buscar archivos modificados. Este comando enumera todos los archivos en /home/username/example.com que se han modificado en los últimos 3 días.

Si el comando anterior no funciona, intenta sin 'www'. Por ejemplo:

[server]$ find /home/username/example.com/ ! -name "log" -mtime -3

Los logs HTTPS recientes se encuentran en el siguiente directorio:

/home/username/logs/example.com/https/

Limpiar hackeos de bases de datos

Ciertos hackeos, particularmente ataques de inyección SQL contra instalaciones Joomla vulnerables, puede hacer que la base de datos se altere con código malicioso. Dicha modificación puede permitir que el hacker vuelva a entrar incluso si has actualizado a la última versión y has limpiado todos los archivos extraños.

Por esta razón, es una buena idea, después de un hackeo, inspeccionar la base de datos de la misma manera que revisas tus archivos para ver si se ha cambiado algo que no debería haber sido. Si sabes cuándo ocurrió el hackeo, incluso puedes querer revertir la base de datos a un momento anterior a través de la función de backup disponible en el panel. Mira el artículo Backup para más detalles.

Restaurar archivos perdidos/modificados

Finalmente, para restaurar archivos que han sido modificados o eliminados en el hackeo, consulta el artículo sobre cómo restaurar tu dominio. DreamHost ofrece restauraciones de bases de datos y dominios desde el panel, y cuanto antes las obtengas, mejor, ya que las copias de seguridad solo se conservan durante unos días.

Mira el artículo Backup para más detalles y opciones.

Eliminar las puertas traseras o backdoors

El objetivo principal de explotar sitios web inseguros es obtener y mantener el acceso en beneficio del hacker. Por lo tanto, después de descubrir una vulnerabilidad, las puertas traseras casi siempre se instalan para que el hacker pueda volver más tarde. Si no identificas y eliminas estas vulnerabilidades, pueden volver a explotar tu sitio.

Los métodos comunes o la retención de acceso incluyen:

  • Instalar un Shell – Un archivo que se puede solicitar como cualquier otra página en tu sitio, pero que le da al solicitante acceso completo. Estos a menudo están escritos en PHP, pero pueden estar en cualquier idioma. A menudo se les da nombres que suenan inocentes o contienen código ofuscado. También se pueden agregar a archivos legítimos con código adicional agregado para que la funcionalidad solo esté disponible cuando se pasa un parámetro adicional al archivo durante las solicitudes.
  • Crear usuarios nuevos – Estos pueden ser nuevos usuarios de bases de datos o usuarios de aplicaciones web.
  • Almacenar cookies autenticadas – La mayoría de las aplicaciones tienen la opción de recordar quién inició sesión almacenando una cookie en el computador del usuario. Si un hacker logra modificar/crear un usuario y recibe una cookie autenticada, esta cookie a menudo se puede reutilizar hasta que caduque, incluso si se cambia la contraseña de ese usuario. Para obligar a los titulares de cookies autenticadas a iniciar sesión nuevamente, la sal utilizada para cifrar las cookies debe cambiarse después de restablecer las contraseñas. Cómo hacerlo depende de tu software.
  • Cambiar los permisos de carpetas y archivos a escritura mundial
  • Agregar una clave pública a .ssh/authorized_keys

Desafortunadamente, no hay una forma sencilla e infalible de encontrar y eliminar vulnerabilidades o backdoors. Se necesita tiempo y conocimiento para investigar el modo de entrada y las acciones que ocurrieron después. Hay muchos ejemplos en la web de los tipos de pasos que puedes seguir.

Después de que hayas limpiado tu sitio

Después de haber limpiado tu sitio y crees que está limpio, contacta a soporte y solicita que se escanee tu sitio nuevamente para asegurarte de que no haya problemas.

Cambiar la contraseña de tu sitio web

Algunos sitios web ejecutan software que requiere un inicio de sesión. El archivo de configuración que almacena la contraseña es diferente para cada aplicación, por lo que deberás consultar el manual de la aplicación para obtener instrucciones sobre dónde se encuentra el archivo de configuración. El siguiente artículo enumera algunos enlaces a aplicaciones comunes:

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?