Todos los artículos

El plugin Ensomedia Security para WordPress: qué revisa y cómo usarlo

Una guía pantalla por pantalla del plugin gratuito de ShieldWave para WordPress: el primer análisis, el Resumen, cómo solucionar un problema, la protección del inicio de sesión, el Historial y lo que no hace.

Radek, ENSOMEDIAPublicado 14 min de lecturaIn EnglishPo polskuAuf DeutschEn français中文بالعربية

Ensomedia Security es un plugin gratuito para WordPress que revisa su sitio desde dentro y le dice con palabras sencillas qué está mal y cómo arreglarlo. El directorio de WordPress.org lo publica como Ensomedia Security powered by shieldwave.io, y en su escritorio aparece como ShieldWave.

Sus 25 comprobaciones buscan malware y archivos manipulados, vulnerabilidades conocidas en plugins y temas, spam y scripts ocultos en su contenido, copias de seguridad que cualquiera puede descargar, y cuentas y ajustes de riesgo. También bloquea a quien intenta adivinar contraseñas y añade el inicio de sesión en dos pasos. Nunca cambia por sí solo sus archivos, usuarios o ajustes. La cuarentena, la vuelta al original de WordPress.org y la eliminación de código inyectado solo ocurren cuando usted pulsa un botón.

Las capturas muestran la versión 1.0.3 con el tema oscuro y la interfaz en inglés. Los botones de la cabecera del plugin la cambian al tema claro. En un WordPress en español, el plugin muestra sus pantallas en español, y en esta guía los nombres de botones y secciones aparecen tal como los muestra esa traducción.

Instálelo y ejecute el primer análisis

En su escritorio, vaya a Plugins > Añadir nuevo plugin, busque «Ensomedia Security» y haga clic en Instalar ahora y después en Activar. Necesita WordPress 6.2 y PHP 7.4 o superior. Al activarlo no se inicia ningún análisis ni se envía nada a ninguna parte.

Abra ShieldWave en el menú de la izquierda y pulse Iniciar el primer análisis.

El Resumen de ShieldWave durante un análisis: el título Comprobando tu sitio, una barra de progreso con el nombre de la comprobación en curso y su posición en la lista, y un enlace Detener el análisis.
El primer análisis se ejecuta en segundo plano. Puede cerrar la pestaña y volver más tarde. La captura muestra la interfaz en inglés.

El primer análisis suele tardar unos minutos, porque ShieldWave registra sus archivos como punto de referencia con el que comparar los análisis siguientes. Los siguientes son más rápidos, ya que un archivo limpio que no ha cambiado no se vuelve a analizar. Los análisis se ejecutan en segundo plano en pasos cortos, nunca mientras se carga la página de un visitante, así que puede cerrar la pestaña. A partir de entonces ShieldWave analiza cada día a las 03:00, hora de su sitio. En Ajustes se cambian la hora y la frecuencia.

Cómo leer el Resumen

El Resumen empieza con una de cuatro frases sobre su sitio. Tu sitio parece seguro. Tu sitio está bien, es decir, nada urgente pero hay cosas mejorables. 1 cosa necesita tu atención, o más, con la más urgente nombrada debajo. O Tu sitio tiene señales de intrusión, que se trata más abajo.

Debajo ve cuándo se hizo el último análisis, cuándo toca el siguiente y una puntuación sobre 100. En cada comprobación, el problema abierto más grave resta puntos: 30 si es crítico, 15 si es alto, 8 si es medio y 3 si es bajo.

El Resumen de ShieldWave con el tema oscuro: la frase Tu sitio está bien con el último análisis, el siguiente y la puntuación, un planeta con la dirección del sitio a la derecha, la lista de tareas agrupada en Conviene solucionar y A tener en cuenta, y al lado los paneles Protección y Protección en tiempo real.
El Resumen después de un análisis. Los disparos sobre el planeta son una simulación del tráfico típico de bots, no un registro de ataques a su sitio. La captura muestra la interfaz en inglés.

Debajo está su lista de tareas. Los problemas del mismo tipo comparten una fila, así que varios plugins desactualizados forman una sola tarea, no varias. Las filas se reparten en cuatro grupos:

  • Solucionar ahora: problemas que pueden dejar entrar a alguien en su sitio, o señales de que alguien ya entró.
  • Conviene solucionar: no es urgente, pero cada uno facilita un ataque.
  • Pide a tu desarrollador que lo revise: hallazgos de los que ShieldWave no está seguro, como un archivo PHP nuevo en un plugin premium que apareció sin una actualización. Alguien que conoce el sitio lo aclara en un minuto, y estos nunca generan un correo.
  • A tener en cuenta: pequeñas mejoras para cuando tenga tiempo.

La columna de la derecha enumera lo que protege el sitio: los análisis automáticos, las alertas por correo, la comprobación de vulnerabilidades conocidas, la protección del inicio de sesión, el inicio de sesión en dos pasos y el refuerzo. Todo lo que esté desactivado tiene un enlace Activar que lleva a Ajustes, y el número de la pestaña Ajustes indica cuántas cosas siguen desactivadas. Qué comprueba ShieldWave, bajo la lista, se despliega en todas las comprobaciones con su último resultado.

El planeta marca aproximadamente dónde está su sitio, con su dominio encima. La posición sale de la zona horaria configurada en WordPress, sin consultar nada en internet. Los disparos que lo sobrevuelan son una simulación del tráfico típico de bots, como dice la nota bajo el planeta, y no un registro de ataques a su sitio. El botón junto a la nota detiene el movimiento.

Cómo solucionar un problema

Haga clic en una fila para abrirla.

Una tarea abierta: la comprobación que la encontró y cuándo, qué se encontró, un recuadro Cómo solucionarlo y los botones para la pantalla de WordPress donde se hace la corrección, Copiar para tu desarrollador e Ignorar.
Una tarea abierta: qué se encontró, cómo solucionarlo y un botón a la pantalla donde se hace. La captura muestra la interfaz en inglés.

Una tarea abierta indica qué comprobación la encontró y cuándo, qué se encontró exactamente y, en su propio recuadro, Cómo solucionarlo. Si la corrección se hace en una pantalla de WordPress, el botón principal lleva allí: Abrir actualizaciones para plugins desactualizados, Abrir usuarios para un administrador que no esperaba, Abrir ajustes generales cuando quienes se registran en su sitio reciben demasiados permisos. Si uno de los interruptores del propio ShieldWave resuelve el problema, como con el editor de archivos o XML-RPC, el botón abre ese interruptor.

Algunas correcciones necesitan a alguien con acceso al servidor. Copiar para tu desarrollador deja en su portapapeles un mensaje listo: la dirección de su sitio, qué se encontró y dónde, los detalles técnicos y cómo solucionarlo. Péguelo en un correo y no tendrá nada que explicar. Para el resto de esa conversación, vea cómo hablar de seguridad con su desarrollador. Los detalles técnicos, al final, indican el archivo, la regla que coincidió y el código, o el número CVE de una vulnerabilidad y la versión que la corrige.

Si un hallazgo se refiere a algo que usted cambió a propósito, pulse Ignorar. Deja de contar para la puntuación y las alertas y pasa al enlace Ignoradas bajo la lista, donde Restaurar lo devuelve. Un archivo ignorado vuelve solo si cambia de nuevo.

Después de una corrección, pulse Analizar ahora. La tarea sale de la lista en cuanto un análisis deja de encontrar el problema.

Cuando dice que su sitio tiene señales de intrusión

Este titular necesita pruebas claras: código malicioso en un archivo, archivos PHP de WordPress, de plugins o de temas que difieren de la versión oficial, archivos PHP que no deberían estar ahí, una web shell (un script que permite controlar el servidor desde un navegador) en la carpeta de subidas, o una cuenta con poderes de administrador pero sin el rol de Administrador. Los hallazgos de los que ShieldWave no está seguro nunca lo activan.

El Resumen con el titular Tu sitio tiene señales de intrusión, un recuadro Qué hacer ahora con tres pasos y el archivo malicioso en Solucionar ahora.
Solo las pruebas claras producen este titular. Los tres pasos sobre la lista van primero. La captura muestra la interfaz en inglés.

Sobre la lista aparece entonces un recuadro Qué hacer ahora con tres pasos:

  1. No borre ni edite archivos todavía. Abra las tareas de Solucionar ahora para ver qué archivos o cuentas están implicados.
  2. Desde un ordenador de confianza, cambie las contraseñas de todos los administradores, de su cuenta de alojamiento y de la base de datos.
  3. Envíe los detalles a su desarrollador o a su proveedor de alojamiento con Copiar para tu desarrollador. Pueden restaurar los archivos desde una copia de seguridad limpia.

Borrar archivos con prisa destruye las huellas que muestran cómo entró el atacante, y la vía de entrada sigue abierta. Señales de que su sitio web ha sido pirateado explica con más detalle la primera hora.

Activar las protecciones en Ajustes

Ajustes es una sola página con un menú de secciones a la izquierda.

Los Ajustes de ShieldWave: el menú de secciones a la izquierda y, a la derecha, Análisis automáticos configurados a diario a las 03:00 y la sección Alertas por correo con sus interruptores.
Los análisis automáticos y las alertas por correo están activados desde el principio. Cada sección se guarda por separado. La captura muestra la interfaz en inglés.

Análisis automáticos y Alertas por correo están activados desde el principio. Tras un análisis programado recibe un correo solo sobre problemas nuevos o que han empeorado, al nivel que elija: Solo críticos, Graves (el predeterminado) o También los menores. Nunca dos veces sobre el mismo problema, como máximo cuatro al día, y ninguno tras un análisis que haya iniciado usted, porque ya está viendo el resultado. Un interruptor aparte le avisa por correo en el momento en que alguien pasa a ser administrador.

La sección Protección de inicio de sesión con Proteger el inicio de sesión activado, cinco intentos fallidos antes de un bloqueo de 20 minutos y una dirección de confianza, y debajo la sección Inicio de sesión en dos pasos con el botón Configurarla.
La protección del inicio de sesión está activada desde el principio en una instalación nueva. Cada administrador configura el inicio de sesión en dos pasos para su propia cuenta. La captura muestra la interfaz en inglés.

Protección de inicio de sesión está activada desde el principio en una instalación nueva. Si actualizó desde una versión anterior, actívela aquí. Cinco inicios de sesión fallidos desde una misma dirección (puede elegir entre 3 y 50) bloquean esa dirección durante 20 minutos, o durante el tiempo que usted fije. El bloqueo es siempre temporal, las direcciones de confianza nunca se bloquean, y la dirección desde la que activa la protección entra en la lista de confianza. El mismo interruptor mantiene privados sus nombres de usuario: el formulario de acceso deja de confirmarlos, y los visitantes sin sesión iniciada no pueden leerlos desde la API REST, el mapa del sitio ni con el truco ?author=.

Inicio de sesión en dos pasos lo configura cada administrador para su propia cuenta. Pulse Configurarla, añada la clave a una aplicación de autenticación como Google Authenticator o Authy y escriba el código de seis dígitos que muestra. El código solo se exige después de esa confirmación, y recibe diez códigos de recuperación de un solo uso por si pierde el móvil. ShieldWave los muestra una sola vez, así que guárdelos en un gestor de contraseñas.

Refuerzo tiene un interruptor para cada protección. Desactivar el editor de archivos quita del escritorio el editor de código de plugins y temas, de modo que una contraseña de administrador robada no sirva para colocar código a través de él. Las actualizaciones siguen funcionando. Desactivar XML-RPC cierra una interfaz antigua que los atacantes usan para adivinar contraseñas en masa. Si un plugin que usted utiliza la necesita, por ejemplo Jetpack, el ajuste lo nombra. Estos dos interruptores no cambian ningún archivo, y al desactivar uno todo vuelve a estar como antes al instante. Bloquear PHP en la carpeta de subidas añade un bloqueo al archivo .htaccess de la carpeta de subidas en Apache y LiteSpeed, y muestra la regla que hay que añadir en nginx e IIS. Comprobar ahora verifica que el bloqueo funciona. Enviar cabeceras de seguridad añade las cabeceras que su servidor todavía no envía. Los Parches virtuales detienen las peticiones que explotan un fallo conocido de un plugin instalado, cuando la fuente de amenazas tiene un parche para él. Las Actualizaciones de seguridad, que se eligen plugin por plugin en WordPress 6.6 o posterior, dejan que WordPress instale una versión que corrige una vulnerabilidad conocida de la suya y la revierta si la actualización falla.

Las Comprobaciones de inicio de sesión y las Trampas de spam están desactivadas hasta que usted las active. Puede permitir el acceso con una llave de acceso en lugar de contraseña, añadir una comprobación de bots a los formularios de inicio de sesión, registro y restablecimiento de contraseña (un pequeño acertijo que resuelve el navegador, o Cloudflare Turnstile con sus propias claves), rechazar contraseñas nuevas que aparecen en filtraciones de datos, llevar la página de acceso a una dirección que usted elija y detectar los formularios que rellena un programa en los comentarios, el registro, Contact Form 7 y WPForms. Si una de ellas le deja fuera, las preguntas frecuentes del plugin indican la línea para wp-config.php o el comando de WP-CLI que la desactiva.

El Cortafuegos de solicitudes también está desactivado. Revisa las peticiones en su servidor con reglas locales para las inyecciones habituales y la subida de archivos ejecutables, bloqueos por IP y por país y límites de peticiones, y no envía datos de las peticiones a ninguna parte. Póngalo en Solo registrar, mire qué habría detenido y, tras una o dos semanas, cámbielo a Bloquear. ¿Necesito un cortafuegos para WordPress? explica cómo encaja junto a un cortafuegos de su proveedor o de una CDN.

Protección en tiempo real tiene tres funciones, todas desactivadas hasta que usted las active, cada una con una nota Qué se envía:

  • Vulnerabilidades conocidas, incluidos los plugins premium le avisa cuando un plugin, un tema o la versión de WordPress que usa tiene un fallo de seguridad publicado, y nombra la actualización que lo corrige. Envía su versión de WordPress y los nombres y versiones de sus plugins y temas, nunca la dirección de su sitio.
  • Fuente de amenazas en tiempo real descarga nuevas reglas de malware y parches virtuales más o menos una vez por hora. No envía nada sobre su sitio.
  • Segunda opinión de la IA da un veredicto con lenguaje claro sobre un archivo que el escáner no puede valorar por sí solo, a partir de un fragmento breve del que antes se quitan la dirección de su sitio, las direcciones de correo y todo lo que parezca una contraseña o una clave. wp-config.php nunca se envía.

Tras la activación, el plugin pregunta una vez si quiere activar la protección. Activar la protección enciende la consulta de vulnerabilidades, la fuente de amenazas y los parches virtuales. La segunda opinión de la IA tiene allí su propia casilla y sigue desactivada si usted no la marca. Activar la protección en tiempo real, en el Resumen, activa las tres funciones, segunda opinión de la IA incluida, y los interruptores de Ajustes le permiten elegir. En un alojamiento barato o muy cargado, abra Comprobaciones adicionales, después Avanzado, y ponga Velocidad del análisis en Suave.

Historial

Historial registra cada análisis y cada cambio importante para la seguridad, día a día, en frases sencillas: problemas encontrados o solucionados, un administrador nuevo, plugins instalados, actualizados o borrados, un tema nuevo, actualizaciones de WordPress, bloqueos tras inicios de sesión fallidos, alertas enviadas y ajustes modificados. Desde la versión 1.1.27 registra también los inicios de sesión, las cuentas creadas y borradas, los cambios de rol y quién editó, publicó o envió a la papelera una entrada o una página, que se nombra por su título y nunca por su contenido. Los botones de arriba lo limitan a los análisis o a los cambios en el sitio.

El Historial de ShieldWave: entradas agrupadas por día, cada análisis con lo que encontró, cómo se inició, cuánto tardó y la puntuación, los cambios en el sitio entre ellos, y arriba los filtros Todo, Análisis y Cambios en el sitio.
El Historial le dice qué pasó y cuándo, en frases sencillas. La captura muestra la interfaz en inglés.

Si aparece un administrador que nadie recuerda haber añadido, el Historial muestra cuándo ocurrió, que es lo primero que le preguntará su desarrollador o su proveedor de alojamiento.

Qué es gratis y qué necesita una cuenta

Todo lo de esta guía funciona sin cuenta, y las comprobaciones, los análisis programados y las alertas por correo no tienen límites. El plugin no hace peticiones externas cuando lo activa ni cuando abre sus pantallas. Durante un análisis pide a WordPress.org las sumas de verificación oficiales y solicita unas pocas direcciones de su propio sitio. Las funciones de protección en tiempo real y la conexión de la cuenta solo contactan con shieldwave.io después de que usted las active. La comprobación de contraseñas filtradas consulta el servicio Have I Been Pwned y Cloudflare Turnstile consulta a Cloudflare, también solo después de que usted los active.

La cuenta sirve para cuidar sus sitios en un solo lugar. En Ajustes > Cuenta de ShieldWave pulse Conectar con shieldwave.io, inicie sesión o cree una cuenta gratuita y confirme: vuelve a WordPress con el sitio conectado, sin ninguna clave que copiar. El panel de shieldwave.io muestra entonces el sitio con su puntuación y sus problemas abiertos, junto al análisis externo del mismo sitio. Todas las cuentas, también la gratuita, muestran todos los sitios conectados. Mientras el sitio está conectado, el plugin añade una etiqueta invisible a su página de inicio que permite a shieldwave.io confirmar que el dominio es suyo. La conexión solo envía resultados: el panel no puede cambiar ningún ajuste ni iniciar nada en su sitio, y al desconectar se eliminan de shieldwave.io el sitio y sus resultados. Si lo prefiere, sigue pudiendo pegar una clave de API en Usar una clave de API en su lugar. La página del plugin indica qué envía cada servicio opcional.

Lo que el plugin no hace

  • No es un cortafuegos de aplicaciones web completo. Su Cortafuegos de solicitudes aplica reglas locales en su servidor y no sustituye a un filtro de su proveedor o de una CDN. Recién instalado, el plugin solo rechaza un inicio de sesión fallido y a un desconocido que pide su lista de usuarios. Todo lo demás lo rechaza solo cuando usted lo activa: las peticiones que bloquean el cortafuegos o un parche virtual, los formularios que no superan la comprobación de bots o caen en una trampa de spam, las contraseñas que aparecen en filtraciones, las visitas a la antigua dirección de acceso, el editor de archivos y XML-RPC.
  • No limpia un sitio hackeado. Muestra dónde está el malware y qué hacer. El código inyectado en un tema, un plugin propio, la carpeta de subidas, las entradas o las opciones lo quita solo cuando usted aprueba cada cambio, con una copia de seguridad y la posibilidad de deshacerlo. Los demás cambios los hace usted, su desarrollador o su proveedor de alojamiento.
  • No hace copias de seguridad. La comprobación Copias de seguridad busca un plugin de copias y avisa cuando la más reciente tiene más de 7 días. Restaurar un sitio tras una intrusión exige una copia limpia guardada fuera del servidor.
  • No añade nada a las páginas que ven sus visitantes, salvo la etiqueta de verificación invisible en la página de inicio mientras el sitio está conectado a una cuenta. Si usted las activa, la comprobación de bots añade un acertijo o Cloudflare Turnstile a los formularios de acceso, y las trampas de spam añaden un campo oculto a los formularios de comentarios, registro y contacto.

Conviene también borrar los plugins que ya no usa. Plugins de WordPress desactualizados explica qué actualizar primero y qué eliminar.