Scripting entre sitios: una guía para usuarios de WordPress

Publicado: 2021-04-21

Si le preocupan las secuencias de comandos entre sitios y cómo afecta su sitio web de WordPress, definitivamente no está siendo paranoico. Si bien la vulnerabilidad de las secuencias de comandos entre sitios (también conocida como XSS) no es exclusiva de los propietarios de sitios de WordPress, es increíblemente importante comprender sus posibles impactos negativos en los sitios de WordPress.

En esta guía, desglosaremos las vulnerabilidades de secuencias de comandos entre sitios (XSS) que debe vigilar. Algo de esto se volverá un poco técnico, pero al final de la guía, podrá tomar una decisión informada sobre la seguridad general de su sitio de WordPress en lo que respecta a las secuencias de comandos entre sitios. Además, sabrá exactamente qué hacer para evitar un ataque.

Ahora, vamos a sumergirnos.

En esta guía

    ¿Qué es Cross-Site Scripting (XSS)?

    Cross-site scripting (XSS) es un tipo de ataque de malware que se ejecuta mediante la explotación de vulnerabilidades entre sitios en cualquier sitio de WordPress. De hecho, es la forma más común de piratear sitios de WordPress porque hay muchos complementos de WordPress que tienen vulnerabilidades XSS.

    Explicación de las secuencias de comandos entre sitios

    ¿Qué es la secuencia de comandos entre sitios en términos aún más técnicos?

    Las vulnerabilidades de secuencias de comandos entre sitios permiten que se lleve a cabo un código JavaScript externo en un sitio web. Esto puede ser muy difícil de detectar para los propietarios de sitios de WordPress porque los ataques que aprovechan la vulnerabilidad pueden ser de diferentes tipos.

    Esto es aún más cierto si está ejecutando un sitio de WordPress muy grande o complejo con muchos complementos que funcionan al unísono.

    Los diferentes tipos de ataques XSS se pueden resumir en dos categorías distintas:

    • Secuencia de comandos maliciosa que se ejecuta en el navegador del lado del cliente.
    • Secuencia de comandos maliciosa que se almacena y ejecuta en su servidor y luego se entrega a través de un navegador

    En cualquiera de estos casos, el hackeo utiliza un ataque de secuencia de comandos entre sitios para manipular la forma en que funciona su sitio, o incluso para robar datos críticos del sitio.

    ¿Qué hace que los ataques XSS sean comunes para los sitios web de WordPress?

    Como usuario de WordPress, es posible que ya sepa lo complejos que son algunos complementos de WordPress. De hecho, algunos complementos que está utilizando son incluso más complejos que el núcleo de WordPress.

    Desafortunadamente, cuanto más complejo sea el complemento de WordPress, mayor será la posibilidad de que enfrente problemas de seguridad. Los autores de complementos saben lo difícil que es protegerse contra los ataques XSS, y realmente hace que su trabajo sea todo un desafío.

    Algunos de los gigantes tecnológicos más estimados, como Facebook, Apple y Google, han sufrido ataques XSS en el pasado. De hecho, emplean equipos completos de seguridad dedicados para minimizar los riesgos de estos ataques.

    Eso debería ayudar a poner las cosas en una perspectiva más clara sobre la facilidad con la que un ataque puede colarse en un complemento de WordPress, con muchos menos recursos de seguridad de los que tienen los gigantes tecnológicos.

    Probablemente se esté preguntando qué tan vulnerable es su sitio a los ataques de secuencias de comandos de sitios cruzados.

    Primero, es importante tener en cuenta que si mantiene todos sus temas y complementos completamente actualizados, ya ha reducido significativamente su riesgo. Sin embargo, no existe una forma garantizada de protegerse completamente contra un ataque XSS.

    La mayoría de los sitios de WordPress tienen vulnerabilidades que no son públicas y los piratas informáticos pueden aprovecharlas. Debido a esto, las exploraciones periódicas de su sitio son de vital importancia. Más sobre eso más tarde.

    scripts de sitios cruzados WordPress

    Si bien el daño que los piratas informáticos pueden hacer con un ataque de secuencias de comandos entre sitios depende de los detalles exactos de su objetivo final, en el peor de los casos, todo su sitio puede ser tomado.

    En otros casos, los piratas informáticos realizarán cambios menores en un sitio web o incluso redirigirán un sitio a un sitio malicioso que hayan configurado.

    Para decirlo de otra manera, los piratas informáticos que explotan las vulnerabilidades de secuencias de comandos entre sitios de WordPress saben cómo:

    • Secuestrar las sesiones de sus usuarios detectando ID de sesión
    • Coloca redireccionamientos y ventanas emergentes que no autorizaste
    • Encabezar los ataques de phishing maliciosos
    • Grabe cada pulsación de tecla de su víctima instalando keyloggers
    • Robar su información financiera o la información financiera de un usuario del sitio.

    ¿Cuáles son los tipos de secuencias de comandos entre sitios?

    No todos los ataques XSS son igualmente peligrosos. De hecho, algunos son mucho más peligrosos que otros.

    En algunos ataques, los piratas informáticos tendrán acceso completo a su sitio de WordPress. En ese momento, básicamente pueden hacer lo que quieran con él.

    En otros casos, el ataque permitirá que un pirata informático modifique una parte de su sitio. Si bien no es tan peligroso como un pirateo XSS de sitio completo, también puede ser muy peligroso porque proporcionará malware a todos sus visitantes.

    Los diferentes ataques de secuencias de comandos entre sitios requieren que un pirata informático sea un miembro colaborador del sitio. En casos como estos, el peligro planteado es significativamente menor.

    ¿Cómo funciona la secuencia de comandos entre sitios?

    Los piratas informáticos experimentados encuentran las vulnerabilidades del sitio mediante el uso de herramientas automatizadas. Una vez que descubren las vulnerabilidades, se convierte en una simple cuestión de ejecutar el truco deseado.

    Desafortunadamente, los bots pueden realizar todo el proceso de piratería.

    Hay cinco formas diferentes en que los piratas informáticos utilizan XSS para llevar a cabo sus objetivos.

    1. Secuestrar una sesión de usuario

    Un ataque XSS puede ayudar a los piratas informáticos a obtener acceso a las cookies. El aspecto más peligroso de esto es que este tipo de ataque reveló el ID de sesión de un usuario.

    La mayoría de los sitios web utilizan sesiones para que cada usuario del sitio establezca un identificador único. Luego, las sesiones se almacenan dentro de las cookies de sesión mediante un script.

    Los piratas informáticos pueden enviar una cookie de sesión al sitio específico, por ejemplo, http://198.178.260.468/ y la solicitud se registra en el archivo access.log del servidor.

    Cuando el pirata informático usa la información de la sesión, puede iniciar sesión en cualquiera de las cuentas en las que haya iniciado sesión sin la necesidad de una contraseña.

    2. Ejecución de actividades no autorizadas

    En algunos casos, los piratas informáticos no pueden utilizar JavaScript para robar la cookie deseada. En estos casos, intentarán utilizar ataques XSS para ejecutar actividades que no están autorizadas.

    Por ejemplo, pueden utilizar un guión que haga que aparezca un mensaje en su sección de comentarios y continúe publicándose repetidamente.

    Este tipo de ataque de secuencias de comandos cruzadas generalmente toma la forma de una secuencia de comandos maliciosa que se propaga como un virus a sus usuarios. También se puede utilizar para desfigurar su sitio.

    3. Ataques de suplantación de identidad

    A menudo, las vulnerabilidades de secuencias de comandos de sitios cruzados de WordPress llevan a los piratas informáticos a un esquema mucho más grande que un simple ataque XSS.

    Los scripts de sitios cruzados pueden provocar ataques de phishing en su sitio.

    Por lo general, un script malicioso comienza a impulsar una estafa de phishing en su sitio de WordPress que engañará a los usuarios para que proporcionen información altamente confidencial.

    Este es un ataque muy peligroso.

    4. Instalación del registrador de teclas

    Este tipo de ataque involucra a un hacker que implementa un script que instalará un keylogger en un sitio vulnerable de WordPress.

    Cada vez que su usuario escribe algo, este keylogger almacena la información y la transmite al hacker. Es una forma rápida y fácil de robar información de tarjetas de crédito, contraseñas, información médica y mucho más.

    5. Robo de información sensible

    Hemos hablado de las cookies y cómo se roban. Pero este ataque en particular lleva este principio a un nivel diferente.

    Imagine un escenario en el que la página de "banca por Internet" de su cooperativa de ahorro y crédito está bajo un ataque XSS. Si un pirata informático utiliza un script en particular, un pirata informático podría iniciar sesión directamente en su cuenta corriente sin validación.

    Si bien este no es un concepto nuevo, es una extensión de lo que los piratas informáticos son capaces de realizar mediante el uso de cookies de sesión.

    ¿Cómo protejo mi sitio de WordPress de los ataques de secuencias de comandos entre sitios?

    El problema real es que los piratas informáticos profesionales continúan creando variaciones más inteligentes de texto malicioso que ahora pueden eludir incluso la mejor prevención de secuencias de comandos entre sitios.

    Realmente es una especie de juego del gato y el ratón.

    La mejor manera de detectar ataques XSS es usar un complemento como iThemes Security Pro iThemes Security Pro tiene varias características de seguridad de sitios web para construir su primera línea de defensa contra ataques de scripting entre sitios. (Más sobre esto en un momento).

    También es increíblemente importante combinar su defensa con un complemento de respaldo de WordPress como BackupBudy que puede restaurar un punto anterior en el historial de su sitio, si sucediera lo peor.

    Obviamente, en un mundo perfecto, hackeos como este nunca sucederían. Pero los ataques XSS son increíblemente difíciles de proteger, lo que hace que la seguridad reforzada de WordPress sea su máxima prioridad.

    Cómo funcionan los ataques XSS

    La forma en que funciona un ataque depende del tipo de ataque lanzado por el pirata informático. Y aunque existen varios tipos de secuencias de comandos entre sitios, todas utilizan JavaScript para propagar malware malicioso.

    Si no está familiarizado con JavaScript, es un lenguaje que se encuentra entre el código HTML de su sitio web. Es capaz de crear variables específicas que realizan cálculos robustos.

    A decir verdad, un desarrollador puede usar JavaScript para realizar casi cualquier función imaginable.

    Por ejemplo, un sitio de WooCommerce que acepta pagos y los almacena en una base de datos puede usar JavaScript para enviar información de inicio de sesión y detalles de pago a una persona diferente.

    Cuando los piratas informáticos aprovechan esta vulnerabilidad en el código de su sitio para ejecutar JavaScript, es un ataque XSS total. Este tipo de vulnerabilidad generalmente ocurrirá en casi cualquier lugar de su sitio web donde los usuarios ingresen datos, incluso en forma de:

    • Ventanas emergentes
    • Formularios de información
    • Barras de búsqueda
    • URLs

    Tenga en cuenta que el campo de entrada de datos no tiene que ser necesariamente visual. En algunos casos, puede ser una variable defectuosa dentro del código de su sitio que recupera datos no desinfectados de una base de datos o de cualquier otro archivo.

    Ataques XSS persistentes o almacenados

    Suponga por un momento que su sitio es un blog que tiene una sección de comentarios abierta. Si uno de sus usuarios le deja un comentario, esos datos se envían a la base de datos y se almacenan.

    Es importante que su sitio esté configurado para desinfectar esos datos antes de que se almacenen en su base de datos. En otras palabras, debe verificar si el usuario ingresó un comentario legítimo o si es un script malicioso.

    Sin esta verificación en su lugar, puede abrir una falla XSS en WordPress.

    Así es como funciona:

    1. El pirata informático localiza y aprovecha la vulnerabilidad

    Los piratas informáticos emplean escáneres que buscan en Internet y localizan sitios que tienen vulnerabilidades para ataques de secuencias de comandos entre sitios. Una vez que se encuentra un sitio, se colocan scripts maliciosos en la sección de comentarios del sitio.

    Sin ningún control, su sitio toma el script malicioso y lo envía a la base de datos.

    2. Los visitantes ven su página infectada

    Para un visitante promedio del sitio, los datos de un pirata informático parecen un comentario estándar. Lo que este visitante no sabe es que un simple comentario es un código ejecutable que robará cookies.

    Cualquiera que visite la página se verá afectado negativamente.

    3. Robo de cookies del navegador

    La mayoría de los usuarios suelen tener varias pestañas abiertas en sus navegadores en todo momento, para cosas como redes sociales, correo electrónico, Amazon, YouTube y el sitio web de su empleador.

    Cuando un usuario visita un sitio infectado y ve la página que contiene el comentario de un pirata informático, el código se ejecuta de inmediato y permite que un pirata informático robe las cookies del navegador.

    El ataque se denomina ataque entre sitios porque pueden robar las cookies de todos los sitios web que están abiertos en cualquier pestaña.

    4. Explotación de las cookies robadas

    Al usar las cookies robadas, un pirata informático se hace pasar por un usuario autenticado del sitio en, por ejemplo, sitios de compras para realizar compras ilegales.

    Los atacantes también pueden robar información de la cuenta, como contraseñas y nombres de usuario, y piratear correos electrónicos para enviar correos electrónicos de phishing a una lista de contactos completa.

    Las posibilidades maliciosas son aparentemente infinitas.

    Ataques XSS no persistentes o reflectantes

    Esto no es un ataque a los visitantes del sitio, sino un ataque al sitio web.

    Si es propietario de un sitio de WordPress, probablemente tenga muchas pestañas del navegador abiertas.

    A menudo, el panel de administración de WordPress es solo una de las muchas pestañas diferentes que dejas abiertas habitualmente. Y esto es exactamente lo que hace posibles los ataques reflectantes XSS.

    Así es como sucede:

    1. El propietario del sitio se dirige a un enlace malicioso

    En algunos casos, un pirata informático enviará un enlace malicioso a tu correo electrónico con la esperanza de que caigas en su pequeño truco.

    En otros casos, los piratas informáticos colocarán enlaces maliciosos en otros sitios.

    Si hace clic en uno de estos enlaces, se carga un script en su sitio de WordPress desde un sitio externo.

    2. Captura de cookies de sesión

    Cuando haces clic en el enlace malicioso, ejecutas el código que han empleado. Esto permitirá al pirata informático robar sus cookies y obtener acceso a la cuenta de administrador de su sitio web de WordPress.

    Una vez que hayan obtenido acceso administrativo completo al sitio, podrían robar fácilmente datos confidenciales y credenciales de inicio de sesión. Incluso podrían bloquearlo de su sitio o usarlo para ejecutar cualquier número de hacks diferentes.

    Lo que da miedo es que se harán en tu nombre.

    Un ataque XSS ejecutado correctamente tendrá consecuencias importantes para su negocio y sitio web, y podría dañar irreparablemente su credibilidad. Recuperarse de estos ataques puede requerir mucho de su valioso tiempo y del dinero que tanto le costó ganar.

    Por eso es tan importante tomar todas las precauciones posibles contra él.

    Prevención de secuencias de comandos entre sitios de WordPress: 5 pasos

    No hay una manera fácil de decir esto, pero no existe un plan infalible para evitar el ciberdelito. Lo mejor que puede hacer es tener un plan sólido para las auditorías de seguridad de WordPress de rutina. Su primer paso para evitar los ataques XSS es comenzar a prepararse ahora mismo con estos pasos.

    1. Descargue e instale el complemento iThemes Security Pro

    Para comenzar a asegurar y proteger su sitio, descargue e instale el complemento iThemes Security Pro.

    Obtenga iThemes Security Pro ahora

    2. Proteja a sus usuarios del secuestro de sesiones

    En pocas palabras: debe tener una protección contra el secuestro de sesiones para sus administradores y editores en su sitio web de WordPress.

    ¿Por qué? Como mencionamos anteriormente, ordPress genera una cookie de sesión cada vez que inicia sesión en su sitio web. Y digamos que tiene una extensión de navegador que el desarrollador ha abandonado y ya no publica actualizaciones de seguridad. Desafortunadamente para ti, la extensión del navegador desatendida tiene una vulnerabilidad. La vulnerabilidad permite a los delincuentes secuestrar las cookies de su navegador, incluida la cookie de sesión de WordPress mencionada anteriormente. Nuevamente, este tipo de hackeo se conoce como Session Hijacking . Por lo tanto, un atacante puede aprovechar la vulnerabilidad de la extensión para aprovechar su inicio de sesión y comenzar a realizar cambios maliciosos con su usuario de WordPress.

    La función de dispositivos de confianza de iThemes Security Pro hace que el secuestro de sesiones sea cosa del pasado. Si el dispositivo de un usuario cambia durante una sesión, iThemes Security cerrará automáticamente la sesión del usuario para evitar cualquier actividad no autorizada en la cuenta del usuario, como cambiar la dirección de correo electrónico del usuario o cargar complementos maliciosos.

    La función de Dispositivos de confianza en iThemes Security Pro funciona para identificar los dispositivos que usted y otros usuarios usan para iniciar sesión en su sitio de WordPress. Una vez que se identifican sus dispositivos, podemos evitar que los secuestradores de sesiones y otros actores maliciosos causen daños en su sitio web.

    Cuando un usuario ha iniciado sesión en un dispositivo no reconocido, Trusted Devices puede restringir sus capacidades de nivel de administrador. Esto significa que si un atacante pudiera ingresar al backend de su sitio de WordPress, no tendría la capacidad de realizar cambios maliciosos en su sitio web.

    En este escenario, recibirá un correo electrónico que le informará que alguien inició sesión en su sitio desde un dispositivo no reconocido. El correo electrónico incluye una opción para bloquear el dispositivo del pirata informático. Entonces puedes reír y reír, sabiendo que arruinaste el día de un chico malo.

    Otro beneficio de Trusted Devices es que hace que el secuestro de sesiones sea cosa del pasado. Si el dispositivo de un usuario cambia durante una sesión, iThemes Security cerrará automáticamente la sesión del usuario para evitar cualquier actividad no autorizada en la cuenta del usuario, como cambiar la dirección de correo electrónico del usuario o cargar complementos maliciosos.

    Para comenzar a usar dispositivos de confianza, habilítelos en la página principal de la configuración de seguridad y luego haga clic en el botón Configurar configuraciones .

    En la configuración de Dispositivos confiables, decida qué usuarios desea usar la función y habilite las funciones Restringir capacidades y Protección contra el secuestro de sesiones .

    Después de habilitar la nueva configuración de Dispositivos confiables, los usuarios recibirán una notificación en la barra de administración de WordPress sobre dispositivos pendientes no reconocidos. Si su dispositivo actual no se ha agregado a la lista de dispositivos de confianza, haga clic en el enlace Confirmar este dispositivo para enviar el correo electrónico de autorización.

    Haga clic en el botón Confirmar dispositivo en el correo electrónico de inicio de sesión no reconocido para agregar sus dispositivos actuales a la lista Dispositivos confiables.

    Una vez que Trusted Devices está habilitado, los usuarios pueden administrar dispositivos desde su página de perfil de usuario de WordPress. Desde esta pantalla, puede aprobar o rechazar dispositivos de la lista de Dispositivos confiables.

    Además, tiene la opción de registrarse en algunas API de terceros para mejorar la precisión de la identificación de los dispositivos confiables y utilizar mapas de imágenes estáticas para mostrar la ubicación aproximada de un inicio de sesión no reconocido. Consulte la configuración de Dispositivos confiables para ver qué integraciones están disponibles,

    3. Active la administración de versiones para mantener sus temas y complementos actualizados

    Es difícil hacer un seguimiento de todas las vulnerabilidades de WordPress reveladas; las hacemos un seguimiento y las compartimos en nuestros Resumen de vulnerabilidades de WordPress, y comparamos esa lista con las versiones de complementos y temas que ha instalado en su sitio web. Sin embargo, esto no impide que los piratas informáticos de WordPress apunten a complementos y temas con vulnerabilidades conocidas. Tener software con vulnerabilidades conocidas instalado en su sitio les brinda a los piratas informáticos los planos que necesitan para hacerse cargo de su sitio web.

    La función de administración de versiones en iThemes Security Pro le permite actualizar automáticamente WordPress, complementos y temas. Más allá de eso, Version Management también tiene opciones para fortalecer su sitio web cuando está ejecutando software obsoleto y busca sitios web antiguos.

    Para comenzar a usar la Administración de versiones, habilite el módulo en la página principal de la configuración de seguridad.

    Ahora haga clic en el botón Configurar configuración para ver más de cerca la configuración.

    4. Active el escaneo del sitio de seguridad de iThemes

    IThemes Security Pro Site Scan comprueba su sitio web en busca de vulnerabilidades conocidas de WordPress, plugins y temas y aplica un parche cuando hay uno disponible.

    Para habilitar el escaneo del sitio en nuevas instalaciones, navegue hasta la configuración de iThemes Security Pro y haga clic en el botón Habilitar en el módulo de configuración del escaneo del sitio .

    Para activar un escaneo del sitio manual, haga clic en el botón Escanear ahora en el widget de escaneo del sitio ubicado en la barra lateral derecha de la configuración de seguridad.

    Los resultados de Site Scan se mostrarán en el widget.

    Si Site Scan detecta una vulnerabilidad, haga clic en el enlace de la vulnerabilidad para ver la página de detalles.

    En la página de vulnerabilidades de Site Scan, verá si hay una solución disponible para la vulnerabilidad. Si hay un parche disponible, puede hacer clic en el botón Actualizar complemento para aplicar la corrección en su sitio web.

    Puede haber una demora entre la disponibilidad de un parche y la actualización de la base de datos de vulnerabilidades de seguridad de iThemes para reflejar la solución. En este caso, puede silenciar la notificación para no recibir más alertas relacionadas con la vulnerabilidad.

    Importante: No debe silenciar una notificación de vulnerabilidad hasta que haya confirmado que su versión actual incluye una solución de seguridad o que la vulnerabilidad no afecte su sitio.

    5. Active la detección de cambios de archivos

    Para comenzar a monitorear los cambios de archivos, habilite la Detección de cambios de archivos en la página principal de la configuración de seguridad.

    Configuración de detección de cambios de archivos de seguridad de WordPress

    Una vez que la Detección de cambios de archivos esté habilitada, iThemes Security Pro comenzará a escanear todos los archivos de su sitio web en trozos . Escanear sus archivos en trozos ayudará a reducir los recursos necesarios para monitorear los cambios en los archivos.

    El escaneo de cambio de archivo inicial creará un índice de los archivos de su sitio web y sus hashes de archivo. Un hash de archivo es una versión abreviada y no legible por humanos del contenido del archivo.

    Una vez que se completa el escaneo inicial, iThemes Security Pro continuará escaneando su archivo en trozos. Si el hash de un archivo cambia en uno de los análisis posteriores, eso significa que el contenido del archivo ha cambiado.

    También puede ejecutar un cambio de archivo manual haciendo clic en el botón Escanear archivos ahora en la configuración de Detección de cambio de archivo

    Botón de escaneo de seguridad de WordPress para cambios de archivo

    Conclusión: creación de scripts entre sitios y protección de su sitio de WordPress

    Esperamos que esta guía le haya ayudado a comprender el riesgo de las secuencias de comandos entre sitios en su sitio de WordPress. Al implementar algunas de las mejores prácticas de seguridad de WordPress, junto con los 5 pasos anteriores, tendrá una mejor línea de defensa.

    Obtenga el contenido adicional: una guía para la seguridad de WordPress
    Descarga la guía

    scripts de sitios cruzados WordPress