Los navegadores modernos admiten varios idiomas para la visualización de contenidos, la localización de interfaces y las preferencias del usuario. Esta funcionalidad, originalmente destinada a la comodidad del usuario, se ha convertido en una parte importante de los sistemas antifraude. El análisis de la configuración lingüística permite detectar posibles discrepancias entre el perfil declarado por un usuario y los parámetros reales de su dispositivo. #### ¿Qué son los idiomas de los navegadores? Los idiomas del navegador definen qué idioma se utiliza para mostrar las páginas web, la interfaz del navegador y otros elementos. Se representan como una lista de idiomas preferidos, que el navegador envía al servidor en la cabecera HTTP Accept-Language. La información sobre el idioma también puede obtenerse a través del objeto navigator.language o navigator.languages en JavaScript. #### ¿Cómo se forma una huella lingüística? La huella lingüística incluye los siguientes datos 1. **Accept-Language** - lista de idiomas preferidos y su prioridad. - Ejemplo: en-US,en;q=0.9,ru;q=0.8 2. **navigator.language** - idioma principal del navegador. - Ejemplo: en-US 3. **navigator.languages** - matriz de idiomas preferidos. - Ejemplo: [ «en-US», «en», «ru-RU» ] 4. **idioma de la interfaz del navegador** - el idioma en el que se muestra el propio navegador. 5. **Lenguaje del sistema operativo **- el lenguaje establecido a nivel del sistema operativo. Estos parámetros forman una combinación que puede utilizarse para identificar al usuario. #### Aplicación de las lenguas en los sistemas antifraude Los sistemas antifraude analizan los datos lingüísticos para identificar a usuarios potencialmente sospechosos. He aquí algunos escenarios clave para su uso: 1. **Detección de incoherencias:** - Si el idioma de la interfaz del navegador no coincide con el idioma del sistema operativo. - Si Accept-Language contiene idiomas no utilizados en la región del usuario. - Si los idiomas preferidos por el usuario cambian con demasiada frecuencia. 2. **Comprobación de la coincidencia de geolocalización:** - La configuración del idioma se compara con la ubicación geográfica del usuario determinada por la dirección IP o el GPS. - Por ejemplo, si la dirección IP apunta a Francia pero la configuración de idioma está establecida en chino, esto puede ser sospechoso. 3. **Detección de suplantación de parámetros:** - Si los parámetros navigator.language y navigator.languages son contradictorios. - Si el idioma del navegador cambia en cada nueva visita. ###### Métodos de suplantación de parámetros de idioma Los atacantes, en un intento de eludir los sistemas antifraude, pueden utilizar varios métodos para cambiar los parámetros de idioma: 1. **Intercambiar el encabezado HTTP Accept-Language:**. - Utilizando un proxy o un software especial, se cambia el contenido de la cabecera para que coincida con el perfil deseado. 2. **Cambiando la configuración del navegador:** - Utilizando navegadores antidetección que permitan establecer valores arbitrarios de navigator.language y navigator.languages. 3. **Emulación de localización:** - El navegador cambia el idioma de la interfaz para crear la ilusión de coincidencia de región. 4. **Enmascaramiento parcial:** - Añadir idiomas adicionales a Accept-Language para crear un perfil más universal. ###### ¿Cómo detectan los sistemas antifraude la suplantación de idioma? 1. **Análisis de coherencia - Comprobación de que todos los parámetros de idioma (cabecera HTTP, navigator.language, idioma de la interfaz) son coherentes. 2. **Comprobación de combinaciones raras:** - Identificar preferencias de idioma inusuales que raramente ocurren en la vida real (por ejemplo, en-GB,ar-KW,ja-JP). 3. **3. Comparación con datos de referencia - Utilizando una base de datos para comprobar la probabilidad de utilizar determinadas lenguas en una región concreta. 4. **Pruebas dinámicas:** - Cambiar la configuración lingüística de un sitio web y comprobar la respuesta del navegador. Por ejemplo, si el navegador no refleja el cambio, esto puede indicar suplantación de identidad. 5. **Localización de errores y mensajes:** - Analizar el idioma de los mensajes de sistema del navegador. Esto es difícil de falsificar, ya que el idioma de los mensajes depende de la configuración del sistema operativo. #### Análisis de las huellas lingüísticas Comprobemos qué datos puede obtener un sitio web sobre la ubicación de un usuario abriendo la página browserleaks.com/javascript en nuestro navegador Chrome:  Esta página ofrece al sitio información sobre la fecha y la hora en el dispositivo del usuario, la zona horaria, la configuración regional, el formato del reloj, el tipo de calendario, el sistema de grabación de números, los idiomas principal y preferido e información sobre las voces sintetizadas en la interfaz del controlador del servicio de voz. Comprobemos la información de localización por dirección ip, abramos la página browserleaks.com/ip  Esta página proporciona al sitio información detallada sobre la dirección ip y los idiomas del usuario en las cabeceras http. Veamos en nuestra página de prueba test-webapi.tech/language qué otra información de localización puede recoger el sitio del navegador del usuario, Abramos la página en el navegador Chrome en el servidor. Sección T**Comprobación de exactitud:**  En esta sección obtenemos la dirección IP del visitante, verificamos la ubicación utilizando un servicio de terceros contra la dirección IP, obtenemos las coordenadas y la zona horaria del navegador del usuario. **Importante:** en la página de prueba, todas las conclusiones sobre desajuste de parámetros no son exactas y se presentan sólo como ejemplo de análisis de los datos obtenidos. En la sección **Resultados de los servicios de geolocalización**, la página recupera información sobre direcciones ip de varias bases de datos y la compara con la información recuperada en la sección Comprobación de la exactitud de la hora:  En la sección **Información sobre la hora local**, vemos la hora, la fecha y la zona horaria directamente desde el navegador del visitante:  La sección **Configuración del idioma del navegador** define los idiomas del navegador utilizando JavaScript y las cabeceras http en el hilo principal, el web worker y el service worker, y luego compara los valores entre sí:  Obsérvese que la presencia del idioma ruso en un usuario de Finlandia ya puede ser detectada por los sistemas antifraude como un indicador atípico, especialmente en caso de registros masivos de cuentas. Consideremos la siguiente sección - **Análisis del idioma de los mensajes del sistema:**  Esta sección define el idioma de los mensajes de error, el idioma del texto de validación de los mensajes de formulario y el idioma de los mensajes del sistema en el navegador del usuario. En la sección **Detalles de internacionalización** vemos la configuración regional, el tipo de calendario, la zona horaria y el sistema numérico del navegador a partir de la configuración del sistema del dispositivo del usuario. También se definen los formatos de fecha y el formato de visualización de la moneda:  El formato de visualización de la moneda depende de la configuración de idioma del sistema   Pasemos a la última sección **Voces de síntesis de voz**. Esta sección comprueba las voces disponibles para la síntesis de voz en el navegador:  El conjunto de voces y su número difiere entre navegadores y dispositivos, y este parámetro permite a los sistemas antifraude identificar a los usuarios con bastante precisión e identificar visitas sospechosas, especialmente en comparación con la configuración de idioma del navegador. A continuación se muestran algunos ejemplos de diferentes dispositivos: PC Intel (navegador Chrome)  PC Intel (navegador Chromium)  Intel PC (navegador Firefox)  PC AMD (navegador Chrome)  PC AMD (navegador Chromium)  PC AMD (navegador Firefox)  En los resultados de la prueba, podemos ver que la lista de voces para la síntesis de voz difiere tanto entre los distintos dispositivos como en los distintos navegadores. Comprobemos el navegador antidetección, abramos la página sin perfil, con la configuración básica: . Hay algunas diferencias en los valores de los resultados de esta prueba: - El navegador anti-detect indica Zona Horaria - Europa/Moscú. - Representa el uso del idioma en-US solamente. - Utiliza sólo 2 Voces de Ru locale (similar al navegador Chromium). - Representado en la cabecera User-Agent por el navegador Chrome. Intentemos aplicar el perfil en el navegador antidetección y repitamos la prueba: . Después de aplicar el perfil, el navegador anti-detect sustituye correctamente todos los parámetros de idioma relativos a la ubicación especificada, excepto uno: el navegador muestra mensajes de validación de formularios en el idioma En -, lo cual es sospechoso cuando se utiliza el idioma principal Ru - en el navegador. #### Detección de idioma en el navegador del usuario en el ejemplo de Amazon y Google Vamos a comprobar qué información sobre los idiomas de nuestro navegador recibe el sitio Amazon. Abramos la página de inicio en el navegador Chrome:  Con un simple análisis de los archivos JavaScript, podemos ver que el sitio obtiene información sobre el idioma preferido y los idiomas disponibles en nuestro navegador. Comprobemos qué información recopila Google sobre los idiomas. Abramos el cuadro de búsqueda y observemos el código.  El sitio ha detectado con precisión que estamos utilizando el idioma ru, ten en cuenta que el navegador está abierto en un servidor ubicado en Alemania, que Google también detecta (ru-DE).   Google también recopila información sobre el idioma preferido y los idiomas disponibles. También analiza los eventos de cambio de idioma por voz, el idioma de traducción de destino y captura información sobre la elección del idioma sugerido. #### Conclusión El análisis de los parámetros de idioma del navegador proporciona a los sistemas antifraude una cantidad significativa de información para la autenticación del usuario. Estos parámetros ayudan a identificar incoherencias entre la configuración del navegador, la del sistema operativo, las cabeceras HTTP y la geolocalización, lo que permite reconocer comportamientos potencialmente sospechosos. Las pruebas han demostrado que los métodos de suplantación de la configuración de idioma, como el uso de navegadores antidetección o la modificación de las cabeceras HTTP, no siempre son eficaces. Incluso pequeñas diferencias, como el idioma de los mensajes del sistema, pueden levantar sospechas. Por ello, la configuración del idioma se convierte en un componente importante de una evaluación exhaustiva del perfil del usuario. Muchos sistemas antifraude utilizan activamente la huella lingüística como una de las principales métricas para el análisis del comportamiento, el cotejo de datos y la detección de suplantación de identidad. Las métricas lingüísticas de los navegadores son una potente herramienta que ayuda a los sistemas antifraude a identificar incoherencias y mejorar la seguridad de las comprobaciones. A pesar de los intentos de los atacantes de falsear los datos lingüísticos, los sistemas detectan tales manipulaciones analizando la coherencia de los parámetros y las combinaciones poco frecuentes. Las huellas lingüísticas generadas a partir de múltiples parámetros se utilizan ampliamente para identificar usuarios y detectar actividades sospechosas. El uso de estos datos en combinación con otros mecanismos, como la geolocalización y las zonas horarias, puede mejorar significativamente la precisión de la detección del fraude. En el próximo artículo continuaremos el análisis de las tecnologías de navegación utilizadas en los sistemas antifraude. *Bannykh M.V.*