निर्देश

Cómo se espía a los usuarios en Internet mediante JavaScript

  • 18 सित॰ 2023, 7:32 pm
  • 9 मिनट

Cómo se espía a los usuarios en Internet mediante JavaScript

Cuando usted visita YouTube, Netflix o Google Maps, los sitios web cargan automáticamente el contenido. Las páginas se adaptan siempre a su dispositivo y navegador. 

Los sitios detectan su dispositivo y cargan automáticamente el contenido utilizando JavaScript. Además de dar vida a los sitios, JavaScript recopila información personal de los usuarios, que luego puede ser utilizada por anunciantes o piratas informáticos.

En el cuarto artículo de nuestra serie de “Seguridad en Internet”, explicamos qué es JavaScript y cómo se utiliza para rastrear a las personas.


Qué es JavaScript

JavaScript es un lenguaje de programación que permite a los sitios web cobrar vida y crear contenidos dinámicos: menús, sonidos y otros elementos interactivos. En el pasado, este lenguaje se utilizaba para funciones sencillas. Por ejemplo, JavaScript ayudaba a comprobar que se habían rellenado todos los campos de registro antes de enviar un formulario. 

Ahora, JavaScript se utiliza para crear todo tipo de aplicaciones web. Por ejemplo, mapas interactivos, gráficos 2D/3D animados o reproductores de vídeo en el navegador.

El lenguaje funciona así: el usuario realiza una determinada acción → el navegador la detecta → se activa el código JS → se produce el cambio dado en la página.

JavaScript también puede utilizarse para averiguar información sobre el usuario que interactua con el script. 

Por ejemplo, los sitios web suelen especificar el navegador que usted utiliza. En las metaetiquetas hay enlaces a los scripts que se ejecutan al abrir la página. Cuando un usuario visita el sitio, el código se activa e identifica el navegador desde el que la persona está visitando la web.

Otros scripts pueden ejecutarse automáticamente y leer información de su pantalla o sus acciones en el sitio web.


Lo que JavaScript puede averiguar sobre usted

Con JavaScript es posible escribir otros códigos en el código del sitio web, que preguntan al navegador sobre todos los ajustes y datos específicos y únicos del navegador y del sistema informático. Por tanto, JavaScript ayuda a reconocer:

Las preferencias de Internet. Esto funciona a través del código de seguimiento. Permite a anunciantes, webmasters y profesionales del marketing analizar a los visitantes y sus acciones en un sitio web. Por ejemplo, en qué anuncios hacen clic los clientes, cuánto tiempo leen el material, etcétera.

Esta información se introduce en Google Analytics, Yandex.Metrics u otros sistemas de análisis.

Información sobre el dispositivo. En JavaScript existe un código llamado navigator. Contiene información completa sobre el navegador del visitante y el nombre del sistema operativo. Si se vincula el código a un botón de la web, el propietario del sitio sabrá la información del usuario cuando este pulse el botón.

La información sobre la pantalla del usuario se indica mediante el código screen. Permite a los propietarios del sitio web conocer el tamaño de la pantalla y los colores utilizados por el usuario.

Navigator.plugins recoge información sobre los plugins y sus versiones.

Las palabras que escribe. Si este código ya está integrado en el sitio o los piratas informáticos lo incorporaron, pueden rastrear los campos de texto que rellenan los usuarios.

Por ejemplo, así es como ellos pueden averiguar los datos de una tarjeta bancaria a través de un sitio de pago falso.

Información de la cámara. Mediante códigos especiales, los sitios web pueden acceder a la cámara o al micrófono, así como al vídeo y al audio captados por el dispositivo.

Por ejemplo, así es como los creadores de sitios web pueden acceder a la cámara frontal y trasera de un smartphone y observar lo que hace el usuario.

La relación entre Javascript y los sistemas de análisis

Los propietarios de sitios web pueden utilizar servicios de análisis para rastrear otra información: qué páginas vieron los usuarios, qué acciones realizaron, cómo interactuaron con los números de teléfono del sitio web y cuánto tiempo pasaron en la página. 

Algunos servicios populares son Google Analytics, Yandex.Metrika, Hotjar, Statcounter y otros.

Estos servicios muestran cuántas personas se registraron en el recurso, pagaron por algo, se conectaron, añadieron algo a la cesta, miraron productos, utilizaron la búsqueda, etc.

Información que el propietario del sitio web obtiene de Google Analytics



Estos sistemas están instalados en casi todos los sitios web. Están regulados por grandes empresas, son totalmente legales, sólo controlan el comportamiento de los clientes y no almacenan datos personales. Así que el propietario del sitio no tiene ni idea de quién es quién. Sólo ve datos agregados. Y si intenta averiguar los datos personales del usuario y venderlos, recibirá una multa o una prohibición en el sistema.

El objetivo de estos sistemas es hacer que los sitios sean cómodos y útiles. Informar a los propietarios de los recursos de lo que ocurre en un sitio cuando los usuarios lo visitan.


Por qué desactivar JavaScript

Cuando un usuario visita un sitio web, todos los programas JavaScript se ejecutan automáticamente. Si hay código malicioso incrustado en los scripts, una persona podría perder información confidencial o introducir un virus en su computadora. 

Por eso, desactivar JavaScript le protege de ser rastreado en Internet: los sitios no sabrán qué navegador y PC utiliza. Qué letras escribe y qué acciones realiza.

Si desactiva JavaScript, llegará a un Internet sin anuncios, sin interminables desplazamientos de página, sin molestas ventanas emergentes y sin que la página le pida que se registre en algo.

Qué ocurre si desactiva JavaScript

Si desactiva JavaScript, muchos sitios web dejan de funcionar correctamente. La mayoría de los sitios web utilizan código JS para interactuar con el usuario y mostrar contenidos personalizados. 

Por ejemplo, sin JavaScript, las web de vídeos no funcionarán, ya que la página de inicio no se cargará. Las redes sociales, los mapas en línea, los servicios de entrega de comida a domicilio y otros sitios no funcionarán, sólo mostrarán páginas vacías sin contenido.

Si desactiva JavaScript, puede protegerse de los curiosos y reducir la posibilidad de que le roben información confidencial. Deshabilitar JS no proporciona una protección total.

Una gran amenaza para los datos personales son las Cookies. Son archivos que pueden comprobar su historial de navegación, los datos que introduce en formularios y su ubicación. La cantidad de información depende de lo que los propietarios de los recursos quieran saber de usted. Sin embargo, los sitios pueden compartir información entre sí. Así, si una web conoce sus datos personales, puede comunicárselos a otra. Esto no es posible con JavaScript, porque cada sitio tiene su propio código.

Sin JavaScript, las métricas de los sistemas de análisis tampoco funcionarán. Se realizan en este lenguaje de programación y se cargan automáticamente cuando un usuario visita la web.

Los sistemas analíticos se colocan en los sitios web para optimizar la publicidad y hacerla más eficiente. Básicamente, para mostrar anuncios a un público interesado. Si se desactiva JS, el usuario verá anuncios poco interesantes y poco personalizados.

Google Analytics no sólo lo utilizan las pequeñas empresas, sino también las grandes. Por ejemplo, Uber, Spotify, AirBnb.

Las métricas también ayudan a identificar áreas problemáticas del sitio web o contenidos poco interesantes y corregirlos.

Por ejemplo, Hotjar ayuda a crear un mapa del sitio y ver con qué bloques interactúan más los clientes. Si un sitio tiene un elemento no clicable en el que los usuarios hacen clic con frecuencia, los desarrolladores lo verán y lo harán clicable.

Mapa de calor de una web desde Hotjar



Los sistemas de análisis muestran cómo interactúan los visitantes con la interfaz del sitio. Los propietarios de los recursos verán todos los clics, los movimientos del cursor, cuánto tiempo pasa una persona en cada parte de la página, qué problemas se producen en determinados navegadores o dispositivos. 

Por ejemplo, si una función no se ejecuta en un navegador, el propietario del sitio lo verá y solucionará el problema.

Los sistemas de análisis son útiles para los propietarios de sitios porque muestran las áreas problemáticas y ayudan a mejorar el rendimiento de la web y la experiencia del cliente. Los usuarios se benefician de estos servicios porque les ayudan a recibir contenidos personalizados.

Cómo roban información los hackers a través de JavaScript

Внедряют вредоносный код. Это называется межсайтовым скриптингом (XSS). Хакеры встраивают вредоносный код JavaScript в сайт. Он может обрабатывать и сохранять конфиденциальную пользовательскую информацию.

Например, такой код на сайте интернет-банкинга может запомнить данные для входа в банковский аккаунт или другую пользовательскую информацию.

Introducir código malicioso. Esto se denomina sitios cruzados o Cross-site scripting (XSS, por sus siglas en inglés). Los piratas informáticos introducen código JavaScript malicioso en un sitio web. Puede procesar y almacenar información sensible del usuario.

Por ejemplo, un código de este tipo en un sitio de banca en línea puede recordar las credenciales de inicio de sesión u otra información del usuario.

Unos estafadores atacaron British Airways en 2018 y robaron unos 380.000 datos de tarjetas bancarias.Los atacantes modificaron un script para enviar los datos de los clientes a un servidor malicioso con un nombre de dominio similar a British Airways. El servidor falso tenía un certificado SSL, por lo que los clientes pensaban que estaban comprando billetes en un servidor seguro. Al final, los piratas informáticos obtuvieron los datos de 380.000 tarjetas bancarias.

Crear una inyección SQL. La inyección SQL es una técnica de hacking en la que los piratas informáticos acceden a las bases de datos de un sitio web. Pueden cambiar o robar información del usuario en las bases de datos.

En 2019, un hacker robó cientos de miles de datos de tarjetas bancarias utilizando inyecciones SQL. Robó información de tarjetas de pago de bases de datos de sitios web y luego la vendió en mercados ilegales en línea.Poco después, otros hackers robaron 8,3 millones de correos electrónicos y contraseñas de usuarios del sitio web Flaticon. El ataque también se llevó a cabo mediante inyección SQL.

Ataques de falsificación de petición en sitios cruzados (CSRF). CSRF es un ataque a un sitio que utiliza una web o script fraudulento. Obliga al navegador de un usuario a realizar una acción no deseada en un sitio de confianza en el que el usuario inició sesión. Para que el ataque funcione, el usuario debe hacer clic en el enlace pirata.

Por ejemplo, una persona inicia sesión en el sitio web de un banco y abre accidentalmente un enlace fraudulento que solicita transferir dinero a la cuenta del ladrón. El banco procesa la transacción sin que el cliente lo sepa, ya que está autorizado en su cuenta personal.

Otro tipo de fraude es la minería oculta. En 2021, Coinhive incrustó un minero de criptomonedas en un sitio web mediante código JavaScript. Cuando los usuarios accedían al sitio, el minero se activaba y minaba de forma encubierta la criptomoneda. El director regional de Microsoft, Troy Hunt, calcula que los estafadores llegaron a ganar hasta 250.000 dólares al mes.

Cómo protegerse contra el robo de información mediante JavaScript

Visite sitios que utilicen cifrado HTTPS/SSL. Los hackers no pueden incrustar su código JS en tales sitios, por lo que no pueden robar nada. Pero si un sitio HTTPS contiene inicialmente código JS malicioso, no hay forma de protegerse.

Otra ventaja de los recursos con cifrado HTTPS son las cookies seguras. Se trata de archivos que solo pueden enviarse a un servidor web a través del protocolo HTTPS y son más difíciles de descifrar.

Cómo desactivar la vigilancia mediante JavaScript

Desactivar JavaScript hará que la mayoría de las páginas dejen de abrirse. Por lo tanto, no es buena idea desactivar los scripts por completo: la mayoría de los sitios dejarán de funcionar correctamente.

Para deshacerte de parte de la vigilancia, utilice extensiones bloqueadoras de anuncios. Por ejemplo AdBlock, uBlock Origin, Ghostery, AdGuard y otros.

Bloquean los scripts innecesarios y dejan los que ayudan a mejorar el rendimiento del sitio y la publicidad.