Hackeado con software malicioso

El software malicioso es cualquier software o aplicación para dispositivos móviles que se diseña específicamente para dañar a un una computadora, un dispositivo móvil, el software que se ejecuta o los usuarios. Para obtener más información sobre qué es software malicioso, consulta Software malicioso y no deseado.

Si tu sitio contiene software malicioso, por lo general, los usuarios verán la advertencia. "Este sitio puede dañar tu computadora" que se muestra en los resultados de búsqueda o en una página intersticial que muestra el navegador cuando el usuario intenta visitar tu sitio web, algo como esto:

Página intersticial de software malicioso representativo
Resultados de la búsqueda con una advertencia de software malicioso.

Debes tener lo siguiente:

  • Acceso de administrador de shell o terminal a los servidores de tu sitio: web, base de datos, y archivos.
  • Conocimientos sobre comandos de shell o terminal
  • La capacidad de ejecutar consultas en SQL en la base de datos

Preparación

  • Regístrate en Search Console y verificarás que eres el propietario del sitio hackeado, tal como se describe allí. Search Console ofrece una muestra de las páginas afectadas, lo que facilita encontrar y solucionar problemas de hackeo con software malicioso Además, recibirás una advertencia cuando se detecta que tu sitio se ve afectado por muchos tipos de software malicioso y otros hackeos.
  • Consulta la página de diagnóstico de Navegación segura de Google. para ver información pública sobre si un sitio es potencialmente dañino para los usuarios. Puedes ver el estado de la ficha de tu página o sitio en una URL similar a la siguiente: https://transparencyreport.google.com/safe-browsing/search?url=***<<page_or_site>>*** Por ejemplo: https://transparencyreport.google.com/safe-browsing/search?url=webmastercentralblog.blogspot.com

    <<page_or_site>> puede ser una URL de página específica (http://example.com/badpage) o todo tu sitio (example.com).

  • Evita usar un navegador para ver las páginas de tu sitio. Porque el software malicioso a menudo se propaga a través de la explotación de vulnerabilidades del navegador, la apertura de una puerta de enlace en un navegador podría dañar tu computadora. A menos que se indiquen las instrucciones para acceder a la página directamente en tu navegador, usa cURL o Wget para realizar solicitudes HTTP (por ejemplo, para recuperar una página).

    Estas herramientas gratuitas son útiles para diagnosticar redireccionamientos y tienen la flexibilidad de incluir información del referente o usuario-agente Incluir un el referente o usuario-agente específico para imitar hackers los hackers podrían entregar contenido malicioso solo a usuarios con usuarios-agentes o referentes para segmentar los anuncios para más "personas reales" y evitar de detección de software malicioso por parte de propietarios de sitios y escáneres de software malicioso.

`curl -v --referer "http://www.google.com" <your-url>`

A continuación, te mostramos un ejemplo en el que se especifica un usuario-agente y una URL de referencia:

`curl -v --referer "https://www.google.com" --user-agent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FSL 7.0.7.01001)" http://www.example.com/page.html`

Recomendamos recuperar una página con y sin --referer "https://www.google.com", porque parte del software malicioso solo está activado cuando los usuarios provienen de los resultados de la Búsqueda de Google.

  • Crea un documento para registrar los hallazgos de este paso. El documento al menos incluir (como mínimo) el nombre y la ubicación de cada archivo dañado y notas sobre cómo se infectó, y servirá como base para Limpia y mantén tu sitio.

  • Mira el video anterior en esta página para ver cómo funciona el software malicioso y cómo puedes estén a salvo durante la investigación de software malicioso.

Diagnóstico

Determina qué software malicioso está afectando a tu sitio:

  1. Abre el Informe de problemas de seguridad. para tu sitio en Search Console. Expande la descripción de la advertencia de software malicioso para ver una lista de ejemplos de páginas afectadas. Ten en cuenta que esta lista no es exhaustiva. es posible que no obtengas páginas de ejemplo todo tipo de software malicioso en tu sitio.
  2. Prueba tus páginas de ejemplo para detectar los siguientes tipos de software malicioso.

Software malicioso en la configuración del servidor (redireccionamientos no deseados)

Un hacker ha vulnerado tu sitio y redirecciona a los visitantes de tu sitio al sitio de ataque de software malicioso, probablemente modificando la configuración archivos de configuración. Los archivos de configuración del servidor suelen permitir el acceso el administrador especifique redireccionamientos de URL para páginas o directorios específicos en un sitio web. Por ejemplo, en los servidores Apache, estos son el archivo .htaccess y httpd.conf.

Diagnóstico

Visita algunas de las URL provistas como ejemplos en el informe de problemas de seguridad. Una respuesta desde una página infectada con la "configuración del servidor" infección podría incluir la los siguientes encabezados:

&lt; HTTP/1.1 301 Moved Permanently
&lt; Date: Sun, 24 Feb 2013 21:06:45 GMT
&lt; Server: Apache
&lt; Location: http://&lt;<strong>_malware-attack-site_</strong>&gt;/index.html
&lt; Content-Length: 253

Determina los archivos afectados

Accede a tu servidor a través de shell o de acceso a la terminal (el sitio puede estar sin conexión). si lo deseas) y revisa los archivos de configuración del servidor relevantes. Puede haber más más de un archivo de configuración del servidor hackeado en tu sitio. Revisa estos archivos para directivas no deseadas, como redireccionamientos a sitios desconocidos. Por ejemplo, en la .htaccess, es posible que veas un redireccionamiento similar al siguiente:

RewriteEngine On
RewriteCond %{HTTP_REFERER} .*google.*
**RewriteRule ^third-page.html($|/) http://&lt;<em><strong>_malware-site_</strong></em>&gt;/index.html** [R=301]

Inyección de SQL

Un hacker hackeó la base de datos de tu sitio. Por ejemplo, el hacker podría insertaron de forma programática código malicioso en todos los registros de una base de datos para que, cuando el servidor cargue una página que requiera información del de la base de datos, el código malicioso ahora está incorporado en el contenido de la página y puede dañar a los visitantes del sitio.

Diagnóstico

  1. Realiza algunas consultas en las URLs afectadas desde la línea de comandos y examina respuesta para palabras de ataque de SQL, como "iframe" o “eval”.
  2. Accede al servidor de tu base de datos o visualízala a través de una herramienta como phpMyAdmin. Si usaste Wget o cURL, intenta correlacionar el daño encontrado en la fuente de la página a través de Wget o cURL con las entradas reales de la base de datos. Por ejemplo, notaste que tus páginas incluían un iframe peligroso, puedes ejecutar para buscar el código iframe. Por ejemplo:

    SELECT * FROM blog_posts WHERE post_text LIKE '%&gt;iframe%';
    
  3. También puedes revisar el registro de la base de datos y los archivos de error en tu servidor para actividad inusual, como comandos SQL inesperados que parecen inusuales usuarios normales o errores.

Corrige el problema

Actualiza cada registro de la base de datos infectada o restablece tu última base de datos conocida crear una copia de seguridad de su contenido.

Inserción de código

Se modificaron algunas páginas de tu sitio para incluir código malicioso, como un iframe de un sitio atacante de software malicioso.

Diagnóstico

Visita algunas de las URLs de ejemplo que se muestran en el informe de problemas de seguridad con cURL. wObtén y examina en busca de código sospechoso. El código inyectado puede tomar muchos tipos ser difíciles de encontrar. Podría ser útil buscar palabras como "iframe" para encontrar código iframe. Otras palabras clave útiles son "script", "eval" y "unescape". Para por ejemplo, para buscar "iframe" en todos los archivos en sistemas basados en Unix:

$grep -irn "iframe" ./ | less</pre>

Estos son algunos patrones comunes de software malicioso que deberías buscar.

Un iframe que carga un sitio malicioso:

&lt;iframe frameborder="0" height="0" src="http://&lt;<strong><em>_malware-site_</em></strong>&gt;/path/file"
  style="display:none" width="0"&gt;&lt;/iframe&gt;

JavaScript u otro lenguaje de programación que llama y ejecuta secuencias de comandos desde una sitio atacante:

&lt;script type='text/javascript' src='http://&lt;<em><strong>_malware-site_</strong></em>&gt;/js/x55.js'&gt;&lt;/script&gt;

Secuencias de comandos que redireccionan al navegador a un sitio atacante:

&lt;script&gt;
  if (document.referrer.match(/google\.com/)) {
    window.location("http://&lt;<em><strong>_malware-site_</strong></em>&gt;/");
  }
&lt;/script&gt;

Código malicioso diseñado para evitar la detección:

eval(base64_decode("aWYoZnVuaauUl+hasdqetiDi2iOwlOHTgs+slgsfUNlsgasdf"));

Archivos de objeto compartidos diseñados para escribir al azar código dañino para que sea benigno secuencias de comandos:

#httpd.conf modified by the hacker
LoadModule harmful_module modules/mod_harmful.so
AddModule mod_harmful.c

Plantillas de errores maliciosos

Se configuró la plantilla que se usó para los mensajes de error, como 404 No se encontró el archivo. para distribuir software malicioso. De esta manera, los atacantes pueden lanzar ataques a las URLs que ni siquiera existen en tu sitio.

Diagnóstico

Solicita una página de tu sitio que no exista o que muestre otro tipo de y examina la respuesta para ver si proviene de otro sitio o de lo contrario, contenga software malicioso.

Corrige el problema

Accede a tu servidor web y busca errores en los archivos de configuración del servidor. directivas de la página. Por ejemplo, la plantilla de error para servidores web de Apache puede ser declarada en el archivo .htaccess. Esta es una entrada de archivo .htaccess de ejemplo que recupera páginas de error 404 de un sitio malicioso:

ErrorDocument 404 http://&lt;<span class="red-text"><em><strong>_malware-site_</strong></em></span>&gt;/index.html

Cuando esté todo listo para limpiar tu sitio, reemplaza los .htaccess archivos con una copia de seguridad segura conocida o eliminar las directivas no deseadas de ErrorDocument en la archivo(s) existente(s) .htaccess. Además, asegúrate de borrar los archivos con errores reales si que existen en tu sitio. Por último, reinicia el servidor web para asegurarte de que todos se aplican los cambios.

Carga de recursos desde un sitio comprometido o malicioso {compromised-resources}

Su sitio usa contenido o recursos de un sitio web conocido por incluir malicioso. Podrían ser archivos JavaScript, imágenes o algún otro archivo. Debido a esto, tu sitio se marcará por contener software malicioso cargado desde ese otro .

Diagnóstico

Visita algunas de las URL provistas como ejemplos en el informe de problemas de seguridad.

Corrige el problema

  1. Para confirmar el problema, explora algunas de las URLs de ejemplo que aparecen en la Informe de problemas de seguridad de Search Console Deberías ver una advertencia en el navegador.
  2. La advertencia del navegador te indicará el dominio del contenido cuestionable. Quita todas las referencias del sitio marcado que aparece en la advertencia del navegador. Si el contenido de un sitio marcado se incluyó sin que lo supieras, el problema es más grave. Lo más probable es que tu sitio haya sido vulnerado debería seguir examinando tu sitio en busca de otros hackeos y vulnerabilidades.
  3. Si incluiste intencionalmente contenido de un sitio legítimo que se volvió marcado y quieres volver a incluir el contenido después de que el sitio marcado puedes supervisar el estado del sitio marcado mediante el Página de diagnóstico de Navegación segura de Google para ese sitio (http://www.google.com/safebrowsing/diagnostic?site=www.example.com){:.external}. Los propietarios de sitios legítimos suelen limpiarlos rápidamente.

Investigación adicional

A continuación, comprueba si hay archivos maliciosos adicionales o cambios en el sistema. El hacker puede haber modificado páginas o registros de bases de datos existentes, creado nuevas páginas generadoras de spam, funciones escritas que muestran spam en páginas limpias o “puertas traseras” que le permitan al hacker reingresar a tu sitio, o que reingresen código malicioso que hayas quitado.

Si tu sitio está en línea, considera dejarlo sin conexión para esta investigación.

Si tienes una copia de seguridad buena y conocida de tu sitio, determina qué archivos se han que creaste o modificaste desde la copia de seguridad y, luego, investigarlos. En un sistema basado en Unix en sistemas, puedes usar un comando como el siguiente para buscar archivos nuevos:

diff -qr <current-directory> <backup-directory>

Por ejemplo:

diff -qr www/ backups/full-backup-20120124/

también:

md5sum <current-page> <backup-page>

Por ejemplo:

md5sum www/page.html backups/full-backup-20120124/page.html

Revisa los registros del servidor, el acceso y de errores para detectar cualquier actividad sospechosa, como intentos de acceso fallidos, historial de comandos (especialmente como raíz) y la creación de cuentas de usuario desconocidas. Ten en cuenta que el hacker podría haber alterado estos registros para sus propios fines. En el video se muestran algunos ejemplos de Identifica la vulnerabilidad.

Comprueba si hay redireccionamientos en los archivos de configuración. Tus archivos de configuración se generalmente se denominan .htaccess y httpd.conf. Los hackers suelen crear reglas según el usuario-agente, la hora del día o la URL de referencia. Si necesitas actualizar archivos de configuración, quizás debas reiniciar el servidor para que aplicar los cambios.

Comprueba si hay permisos de carpetas y archivos demasiado flexibles. Los hackers manipulan permisos porque, si el propietario del sitio no detecta los permisos flexibles, el hacker podrá volver a ingresar al sitio. Archivos de más de 644 (rw-r--r--) y las carpetas con más de 755 (rwxr-xr-x) pueden provocar seguridad problemas. Asegúrate de que los permisos más flexibles sean realmente necesarios. Activada Prueba lo siguiente con los sistemas basados en Unix:

find <your-dir> -type d -not -perm 755 -exec ls -ld {} \;

y:

find <your-dir> -type f -not -perm 644 -exec ls -la {} \;

Si tienes una base de datos, investiga registro a registro con una herramienta como phpMyAdmin.