ES2962828T3 - Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizandotécnica de huellas digitales TLS - Google Patents

Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizandotécnica de huellas digitales TLS Download PDF

Info

Publication number
ES2962828T3
ES2962828T3 ES21204075T ES21204075T ES2962828T3 ES 2962828 T3 ES2962828 T3 ES 2962828T3 ES 21204075 T ES21204075 T ES 21204075T ES 21204075 T ES21204075 T ES 21204075T ES 2962828 T3 ES2962828 T3 ES 2962828T3
Authority
ES
Spain
Prior art keywords
client
hash
tls
user agent
hello
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES21204075T
Other languages
English (en)
Inventor
Nicolò Pastore
Carmine Giangregorio
Andrea Sessa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cleafy SpA
Original Assignee
Cleafy SpA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cleafy SpA filed Critical Cleafy SpA
Application granted granted Critical
Publication of ES2962828T3 publication Critical patent/ES2962828T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0281Proxies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

La presente divulgación se refiere a un método para rastrear puntos finales maliciosos en comunicación directa con un back-end de aplicación usando técnicas de huellas digitales TLS, que comprende los pasos de: proporcionar un proxy inverso (1) configurado para interceptar el tráfico intercambiado entre un cliente (2) y un back-end de la aplicación; proporcionar una unidad de procesamiento (4) en la que reside un algoritmo predeterminado y colocada en comunicación de señales con el proxy inverso (1); interceptar (101) mediante el proxy inverso (1) cada HELLO de Cliente TLS dirigido al backend de la aplicación y generar (102) un hash HELLO de Cliente TLS mediante el algoritmo predeterminado; interceptar y procesar (103) por medio del proxy inverso (1) cada solicitud HTTP generada por el cliente (2) y dirigida al back-end de la aplicación para extraer el Agente de Usuario del Cliente de la solicitud HTTP interceptada; procesar (104) el Agente de Usuario del Cliente mediante el algoritmo predeterminado para generar un hash del Agente de Usuario del Cliente; procesar (105) por medio del algoritmo predeterminado el hash HELLO del Cliente TLS y el hash del Agente de Usuario del Cliente para determinar si el hash HELLO del Cliente TLS es común o anómalo para el hash del Agente de Usuario del Cliente (2); realizar (106) una o más acciones de protección contra ataques del tipo Man-In-The-Middle si el hash HELLO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente (2). (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizando técnica de huellas digitales TLS
CAMPO DE APLICACIÓN
La presente divulgación se refiere a un método para rastrear puntos finales maliciosos en comunicación directa con un servidor de aplicación utilizando técnicas de huellas dactilares TLS. En particular, la presente invención se refiere a un método para monitorizar y proteger la comunicación con un servidor de aplicación y que permite contrarrestar ataques del tipo hombre en el medio.
Descripción de los antecedentes técnicos
Es conocido en el estado de la técnica la utilización de software antivirus para contrarrestar ataques informáticos, también del tipo hombre en el navegador y/o hombre en el medio y/o ataque de robots.
Se conocen además métodos de detección que se aplican en el ordenador cliente o directamente en el tráfico intercambiado entre el cliente y el servidor web asociado con una aplicación web determinada, para identificar cualquier ataque del hombre en el navegador y/o o tipos de ataques hombre en el medio y/o robots.
La técnica de huella digital TLS es una técnica de detección de malware, aplicada especialmente para contrarrestar ataques del tipo hombre en el medio. Esta técnica incluye la obtención de una especie de huella de la acción delSALUDO de clienterealizada por el cliente (por ejemplo, navegador web) con el servidor (por ejemplo, servidor web) con protocolo SSL o TLS, de ahí el término "huella digital". El SALUDO de cliente, que se presenta al cliente en el servidor, es "huella digital", es decir, es posible obtener la llamada huella digital del SALUDO de cliente, esta última bien definida para un grupo determinado de clientes. Por lo tanto, la huella digital TLS es un método de detección real con el que es posible obtener una especie de huella digital del malware. Es un examen preliminar a las técnicas de detección generalizadas, ya que el SALUDO de cliente es la primera información que se recibe desde el servidor, por ejemplo cuando el cliente se conecta a un sitio web que reside en el servidor web mediante un navegador web.
En particular, el protocolo TLS y su predecesor SSL se utilizan para cifrar las comunicaciones de muchas aplicaciones HTTP. En particular, durante la etapa de inicialización, un cliente que desea establecer una conexión TCP hacia un servidor web enviará un paquete especial, llamado SALUDO de cliente TLS.
Este paquete y la manera en la que se genera está estrechamente relacionado con la forma en que se construyó la aplicación de cliente. Si se acepta la conexión TLS, el servidor web responderá con un paquete correspondiente, llamado Servidor SALUDO TLS, muy ligado también a su configuración y a las librerías utilizadas. Dado que las negociaciones previstas por el protocolo se transmiten "en texto claro", se puede obtener una huella digital y, por lo tanto, identificar la aplicación del cliente utilizando parte de la información contenida en el SALUDO de cliente TLS. Como se mencionó anteriormente, este tipo de huella digital se conoce en la literatura con el nombre de huella digital TLS. De manera similar, se puede obtener una huella digital del lado del servidor utilizando la información contenida en el Servidor SALUDO TLS, en este caso el resultado se conoce como huella digital del lado del servidor/TLS.
Los puntos finales pueden ser maliciosos porque están infectados con malware y pasan a formar parte de una red de robots o porque son utilizados por estafadores o piratas informáticos para realizar ciberataques y/o fraude.
Normalmente, un punto final se informa como malicioso en el sentido de, por ejemplo, uno o más intentos de fraude, evidencia de malware activo o comportamiento anómalo atribuible a patrones de fraude conocidos.
Una vez identificado un punto final malévolo, el problema es poder rastrearlo para anticipar los movimientos de los atacantes. Este rastreo se produce mediante técnicas de toma de huellas dactilares.
Las técnicas clásicas de toma de huellas dactilares requieren un componente activo presente dentro del punto final monitorizado capaz de recopilar una cantidad suficiente de parámetros que puedan usarse para obtener la propia huella dactilar.
El cálculo de una huella digital TLS requiere el acceso y el análisis de la información contenida en un paquete particular, denominado SALUDO de cliente TLS, intercambiado entre el cliente y el servidor web durante las etapas de negociación de una conexión TLS.
El documento US20180054455A1 divulga una arquitectura en la que las huellas digitales TLS se extraen y recopilan con el fin de detectar puntos finales cuyo número de transacciones maliciosas asociadas con la propia huella digital excede un umbral determinado. Los usuarios asociados con huellas dactilares anómalas están sujetos a políticas de inclusión en listas blancas o negras.
En lugar de ello, en el documento US20190190950A1, el objetivo del método divulgado se relaciona con la detección de robots mediante la recopilación de huellas digitales TLS. Posteriormente, a partir de las estadísticas derivadas de las huellas dactilares recopiladas, los puntos finales clasificados como robots son identificados y excluidos del uso del servicio.
Se describe un método para rastrear puntos finales maliciosos en comunicación directa con un servidor de aplicación utilizando técnicas de huellas digitales TLS en el documento Gabbi Fisher et Al. titulado "Monsters in the middleboxes: introducing two new tools for detecting HTTPS interception", encontrado en Internet en "The Cloudflare Blog" del 18 de marzo de 2019.
Problemas de la técnica anterior
Los sistemas conocidos no permiten detectar y posiblemente bloquear la acción de un malware o de un atacante de manera eficiente.
Por ejemplo, el método descrito en el documento US20180054455A1 recopila el hash SALUDO de cliente y, si se ha producido un fraude, lo marca como malicioso. Sin embargo, si el malware o el atacante modifica el SALUDO de cliente, el método no podrá reconocerlo como malicioso y aún así se producirá un ataque del tipo hombre en el medio.
Con respecto a los métodos que utilizan componentes activos, tales como sondas JavaScript en el mundo web o SDK en el mundo móvil, tales técnicas son a menudo invasivas y fácilmente identificables y evitables por un atacante muy decidido.
SUMARIO DE LA INVENCIÓN
El objetivo de la invención en cuestión es obtener un método para rastrear puntos finales maliciosos en comunicación directa con un servidor de aplicación utilizando técnicas de toma de huellas digitales TLS que sea capaz de superar los inconvenientes de la técnica anterior.
Un objetivo adicional de la presente invención es obtener un método que permita identificar y rastrear continuamente en el tiempo, con un alto grado de fiabilidad, los puntos finales maliciosos en comunicación directa con el servidor de la aplicación.
Ventajas de la invención
Gracias a un modo de realización, es posible obtener un método que permite identificar y rastrear en el tiempo, con un alto grado de fiabilidad, los puntos finales maliciosos en comunicación directa con el servidor de la aplicación.
En virtud de una realización adicional, es posible obtener un método de toma de huellas digitales TLS que no requiere ningún componente activo ni modificación del punto final monitorizado, basándose en parámetros de comunicación que pueden extrapolarse fuera del contexto del cliente. No es posible que un atacante detecte la presencia de dicho sistema de rastreo de huellas dactilares en el lado del terminal. Además, la propia naturaleza de los parámetros recogidos hace que la huella dactilar sea muy fiable y extremadamente difícil de modificar, incluso por atacantes decididos y dotados de los medios tecnológicos adecuados.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Las características y ventajas de la presente invención se pondrán de manifiesto a partir de la siguiente descripción detallada de una posible realización práctica de la misma, ilustrada a modo de ejemplo no limitativo en los dibujos adjuntos, en los que:
• Las figuras 1 y 2 muestran dos variantes de un sistema en el que se puede aplicar el método de la presente invención;
• La figura 3 muestra una representación esquemática de algunas etapas del método de la presente invención;
• La figura 4 muestra un diagrama de flujo de una secuencia de etapas del método de la presente invención.
• La figura 5 muestra un ejemplo de un paquete de datos SALUDO de cliente TLS.
DESCRIPCIÓN DETALLADA
La presente invención se refiere a un método para rastrear puntos finales maliciosos en comunicación directa con un servidor de aplicación utilizando técnicas de huellas dactilares TLS.
Las figuras 1 y 2 muestran una arquitectura típica en la que el usuario, el cliente 2 representado a la izquierda, inicia una conexión TLS hacia un servidor web de aplicaciones 3, representado a la derecha. El componente intermedio, en la figura indicado como proxy inverso 1, representa el punto en el que finaliza la conexión TLS y, por lo tanto, el punto ideal en el que recoger la información necesaria para el cálculo de la huella dactilar.
El método comprende la etapa de proporcionar un proxy inverso 1 configurado para interceptar el tráfico intercambiado entre un cliente 2 y un servidor de aplicación que reside en un servidor web 3.
Dentro del alcance de la presente invención, cliente 2 significa, por ejemplo, un navegador web que reside en un dispositivo cliente, una aplicación móvil, una llamada API, un dispositivo IoT, y en general cualquier herramienta conocida adaptada para generar y consumir solicitudes HTTP. Dispositivo cliente 2 significa un dispositivo para navegar por Internet colocado en comunicación de señal con el servidor web 3. El dispositivo cliente 2 es capaz de enviar solicitudes al servidor web 3 y recibir respuestas a través de una red de Internet. El dispositivo cliente 2 puede ser una tableta, un ordenador portátil, un ordenador de escritorio, un televisor inteligente, un reloj inteligente, un teléfono inteligente o cualquier otro dispositivo capaz de procesar, comunicarse con un servidor web 3 y mostrar contenido obtenido del servidor web 3, o contenido ya presente en el dispositivo cliente. El contenido podría verse desde un navegador u otro tipo de software. Dicho contenido podría estar en HTML, JavaScript u otros formatos similares de tipo conocido. Además, el dispositivo cliente 2 podría contener sistemas operativos conocidos tales como Android, iOS o Microsoft Windows.
El método comprende además la etapa de proporcionar una unidad de procesamiento 4 en la que reside un algoritmo predeterminado. Un algoritmo predeterminado es un algoritmo especialmente implementado, utilizado en la ejecución de etapas específicas del método de la presente invención, como será evidente a continuación. La unidad de procesamiento 4 se coloca en comunicación de señales con el proxy inverso 1 (figuras 1 y 2). Preferiblemente, la unidad de procesamiento 4, mostrada en la figura 1, está integrada en el proxy inverso 1. Alternativamente, la unidad de procesamiento 4, mostrada en la figura 2, es externa al tráfico interceptado por el proxy inverso 1.
El método comprende la etapa de interceptar 101 por medio del proxy inverso 1 cada SALUDO del Cliente TLS dirigido al servidor de la aplicación y generar 102 un hash SALUDO del Cliente TLS por medio del algoritmo predeterminado. Ventajosamente, dicho proxy inverso 1 representa el punto ideal en el que insertar la lógica de cálculo para la toma de huellas dactilares TLS. Dicha arquitectura es capaz de analizar y separar los paquetes individuales intercambiados durante la etapa de inicialización a través del protocolo TLS.
El diagrama mostrado en la figura 3 muestra el modo de integración. En la etapa inicial de negociación TLS, el cliente 2 y el proxy inverso 1, que se supone como el punto donde se produce la terminación de TLS, intercambian la información necesaria para establecer la conexión TLS, incluido el SALUDO de cliente TLS, que es analizado por el software integrado en el proxy inverso 1 (rastreador).
El método comprende la etapa adicional de interceptar y procesar 103 por medio del proxy inverso 1 cada solicitud HTTP generada por el cliente 2 y dirigida al servidor de la aplicación para extraer el Agente de Usuario del Cliente de la solicitud HTTP interceptada. Cada solicitud HTTP producida por el cliente 2 debe necesariamente ser procesada por el proxy inverso 1, antes de llegar al servidor de la aplicación.
El método comprende la etapa de procesar 104 el Agente de Usuario del Cliente por medio del algoritmo predeterminado para generar un hash del Agente de Usuario del Cliente.
El método comprende la etapa de procesar 105 por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente para determinar si el hash SALUDO del Cliente TLS es común o anómalo para el hash del Agente de Usuario del Cliente 2 . Específicamente, el hash SALUDO del Cliente TLS se debe considerar común para el hash del Agente de Usuario del Cliente del cliente 2 si dicho hash SALUDO del Cliente TLS se asocia frecuentemente con el hash del Agente de Usuario del Cliente 2 específico. Viceversa, el hash SALUDO del Cliente TLS debe considerarse anómalo para el hash del Agente de Usuario del Cliente del cliente 2 si dicho hash SALUDO del Cliente TLS rara vez o nunca se ha asociado con el hash del Agente de Usuario del Cliente 2 específico.
Una implementación de ejemplo del método se representa en las figuras 3 y 4, en las que cada solicitud HTTP es procesada por el proxy inverso 1, se calcula su huella digital y luego se envía a la unidad de procesamiento 4, es decir, a una estructura externa capaz de recopilar y procesar dichos datos de forma segura.
El método también comprende la etapa de realizar 106 una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente del cliente 2.
De acuerdo con una realización preferida de la invención, la etapa de procesar 105, mediante el algoritmo predeterminado, el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente, comprende la etapa de asociar mediante el algoritmo predeterminado el Hash SALUDO de cliente TLS con el hash Agente de Usuario de Cliente 2 y almacenar dicha asociación en una base de datos asociada con la unidad de procesamiento 4 si el algoritmo predeterminado determina que el hash SALUDO de cliente TLS es común al hash Agente de Usuario de Cliente del cliente 2.
Preferiblemente, la etapa de almacenar dicha asociación en una base de datos asociada con la unidad de procesamiento 4 si el algoritmo predeterminado determina que el hash SALUDO del Cliente TLS es común al hash del Agente de Usuario del Cliente 2, comprende la subetapa de incluir en la lista blanca cada asociación SALUDO del cliente TLS común para el hash del agente de usuario del cliente.
La etapa de procesar 105 por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente comprende la subetapa de calcular 107 el número de ocurrencias en las que el hash SALUDO del Cliente TLS está asociado con el hash de Agente de Usuario del Cliente para obtener un valor de frecuencia relativa, dicho valor de frecuencia relativa es utilizado por el algoritmo predeterminado para determinar si el hash SALUDO del cliente TLS es común o anómalo para el hash del agente de usuario del cliente 2. A modo de ejemplo, el hash SALUDO del Cliente TLS debe considerarse común para el hash del Agente de Usuario del Cliente 2 si el valor de frecuencia relativa es mayor que un valor umbral dado. Viceversa, el hash SALUDO del Cliente TLS debe considerarse anómalo para el hash del Agente de Usuario del Cliente 2 si el valor de frecuencia relativa es menor que dicho valor umbral dado.
Según la realización preferida de la invención, la etapa de procesar 105 por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente comprende la subetapa de determinar 108 que el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente del cliente 2 cuando el valor de frecuencia relativa es menor que un primer valor de umbral.
Aún preferiblemente, la etapa de procesar 105 por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente que comprende la subetapa de determinar 109 que el hash SALUDO del Cliente TLS es común para el hash del Agente de Usuario del Cliente del cliente 2 cuando el valor de frecuencia relativa es mayor que un segundo valor umbral.
Aún preferiblemente, el segundo valor umbral es mayor que el primer valor umbral.
Más preferiblemente, la etapa de procesar 105 por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente comprende la etapa de determinar 110 que el hash SALUDO del Cliente TLS es sospechoso para el hash del Agente de Usuario del Cliente del cliente 2 cuando el valor de frecuencia relativa está entre el primer valor umbral y el segundo valor umbral. Además, la etapa de realizar 106 una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente 2, comprende la subetapa de realizar una o más acciones de detección para ataques de tipo hombre en el medio si el hash SALUDO del cliente TLS es sospechoso para el hash del agente de usuario del cliente 2.
Preferiblemente, la etapa de realizar 105 una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS del cliente 2 es anómalo para el hash del Agente de Usuario del Cliente, comprende la subetapa de colocar en una lista negra relacionada con puntos finales maliciosos cada asociación anómala del SALUDO de cliente TLS para el hash del Agente de Usuario del Cliente.
Más preferiblemente, la etapa de realizar 105 una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente 2 comprende la subetapa de bloquear la comunicación del cliente 2 con el servidor cuando se detecta un hash SALUDO del Cliente TLS presente en la lista negra. En otras palabras, el método incluye realizar acciones de seguridad de bloqueo cuando el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente.
Aún preferiblemente, la etapa de realizar 105 una o más acciones de protección contra ataques de tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente 2, comprende una o más de las siguientes subetapas: i) enviar una señal de compromiso al servidor de la aplicación; ii) accionar un sistema de autenticación adicional del tipo autentificación de cliente fuerte o autentificación de factor múltiple, tal como SMS, notificaciones, correo electrónico, teléfono, enviar una notificación a una plataforma de seguridad y/o antifraude, enviar una señal de compromiso en un canal externo o un canal integrado con una plataforma de análisis de seguridad. En otras palabras, como alternativa o en combinación con las acciones de bloqueo antes mencionadas, el método incluye realizar acciones de seguridad sin bloqueo cuando el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente.
Según una realización preferida de la invención, la etapa de proporcionar una unidad de procesamiento 4 en la que reside un algoritmo predeterminado incluye proporcionar un algoritmo predeterminado que emplea técnicas de inteligencia artificial.
A continuación se describe una realización de ejemplo de algunos pasos del método de la presente invención, de acuerdo con el diagrama mostrado en la figura 4 y con especial atención a las etapas 105 y 106.
El algoritmo de análisis recibe los hash de SALUDO del Cliente TLS y del Agente de Usuario del Cliente como entrada, y luego calcula el número de ocurrencias en las que el hash SALUDO del Cliente de TLS está asociado con el hash del Agente de Usuario del Cliente, obteniendo un valor de frecuencia relativa (etapa 107).
Si el valor umbral es mayor que el umbral superior, es decir, el segundo valor umbral, el hash SALUDO del cliente TLS se reconocería como no anómalo porque estadísticamente a menudo se asociaría con el hash del Agente de Usuario del Cliente (etapa 109).
Si el valor umbral es menor que el umbral inferior, es decir, el primer valor umbral, el hash SALUDO del cliente TLS se reconocería como anómalo porque no está asociado estadísticamente con el hash de huella digital TLS específico (etapa 108).
En cambio, si el valor umbral está entre el primer y el segundo valor umbral, habría una situación ambigua que debería ser evaluada cuidadosamente, por ejemplo por un analista de inteligencia sobre amenazas (etapa 110).
En todos los casos enumerados anteriormente, el resultado del análisis convergería hacia la aplicación de políticas de listas negras/listas blancas apropiadas para que las apariciones posteriores del par de hash SALUDO del Cliente TLS y del hash del Agente de Usuario del Cliente puedan reconocerse adecuadamente (etapa 106).
Ventajosamente, el algoritmo predeterminado obtiene efectivamente un detector de valores atípicos que permite ampliar las capacidades de los métodos de detección conocidos, que emplean, por ejemplo, algoritmos de integridad DOM, que se pueden usar en combinación con el método de la presente invención. De hecho, a menudo, la modificación de información por parte de un malware o un hacker, como un IBAN utilizado durante una transacción, puede ocurrir sin una inyección real de código dentro de la página de la aplicación que se está monitorizando, siendo así invisible para el algoritmo de integridad DOM. Sin embargo, el método de la presente invención no basa su análisis en la presencia de inyección de código, y por tanto es capaz de detectar cualquier cambio en la capa 4 dentro del cliente HTTP utilizado por el cliente 2, exponiendo cualquier hombre en el medio dentro de la comunicación HTTP.
Con referencia al método divulgado en el documento US20180054455A1, cabe señalar que prevé recopilar el hash SALUDO de cliente y, si se detecta fraude, marcar dicho SALUDO de cliente como malicioso. Sin embargo, el agente de usuario tiene una familia de hashes SALUDO de cliente asociados. Por lo tanto, es posible que en la familia de hash SALUDO de cliente para un Agente de Usuario solo haya un hash malicioso que, al cambiarlo, no sería reconocido como malicioso mediante el método descrito en el documento US20180054455A1 a menos que haya ocurrido un fraude.
A continuación se describe un ejemplo del procesamiento SALUDO del Cliente TLS.
En la figura 5 se muestra un ejemplo del contenido de un paquete SALUDO de Cliente TLS. Los datos resaltados por las flechas representan los datos utilizados en el presente método en el cálculo de la huella digital TLS.
Cada uno de estos valores se convierte a su representación decimal y se concatena usando ",", para delimitar cada campo y "-" para delimitar cada valor dentro de un único campo.
El siguiente es un ejemplo de un hash SALUDO de cliente TLS:
769, 47-53-5-10-49161-49162-49171-49172-50-56-19-4, 0-10-11, 23-24-25,0
La cadena así obtenida se procesa mediante un algoritmo de hash, por ejemplo el algoritmo de resumen de mensajes MD5, produciendo una cadena correspondiente de 32 caracteres que constituye la huella digital TLS.
Por ejemplo, aplicar el algoritmo hash MD5 a la cadena anterior daría como resultado la siguiente huella digital: Ada70206e40642a3e4461f35503241d5
En cuanto al hash del Agente de Usuario de Cliente, este último es por ejemplo el hash del valor del Agente de Usuario obtenido mediante el algoritmo MD5. Por ejemplo, puede ser el hash de todo el valor del Agente de usuario enviado por el navegador web del cliente 2, es decir, una cadena generada por el navegador web y enviada al servidor 3 a través del encabezado HTTP. Alternativamente, puede ser una simplificación de este último, que consista, por ejemplo, en el tipo y la versión del navegador web, por ejemplo, "firefox68".
Con referencia a las figuras 3 y 4, a continuación se divulga un ejemplo de aplicación del método de la presente invención.
Inicialmente, el Cliente 2 establece un canal cifrado con servidores TLS o SSL, es decir, TCP o capa hash 4.
Se asigna el SALUDO de cliente, que define qué técnicas de cifrado son soportadas por el cliente 2, y es único para el cliente 2.
Con el rastreador, o proxy inverso 1, el SALUDO de cliente destinado al servidor de la aplicación es interceptado (etapa 101) y se somete a la unidad de procesamiento 4 que obtiene el hash del contenido de TI del SALUDO de cliente, es decir, una huella digital (etapa 102).
El cliente 2 establece un canal de comunicación cifrado, y es la primera acción que realiza conectándose al servidor web 3 del servidor de la aplicación. Luego, el cliente 2 establece un canal cifrado SSL o TLS con el servidor web 3 (capa 4) y envía un saludo al cliente, que es un mensaje que define qué técnicas de cifrado son compatibles con el cliente 2, por ejemplo: curvas elípticas admitidas, técnicas de cifrado, algoritmo de tipo asimétrico para poder intercambiar la clave, algoritmo simétrico para realizar el cifrado. El SALUDO de cliente es único para ese tipo de cliente 2, por lo que es posible identificar de forma única una determinada familia de clientes 2, como por ejemplo un navegador web específico.
Por lo tanto, la solicitud del cliente 2 va hacia el servidor web 3 y establece un canal de comunicación SSL.
Se envía la solicitud HTTP (capa 7) del cliente 2 que contiene el Agente de usuario y una cadena, generada automáticamente por el cliente 2, que define el navegador web (por ejemplo, la versión del navegador web) y el sistema operativo.
También en este caso, el proxy inverso 1 intercepta la solicitud HTTP y extrae el Agente de usuario del cliente (etapa 103), lo envía a la unidad de procesamiento 4 que construye el hash del Agente de usuario del cliente que define la cadena de agente de usuario específica (etapa 104).
Cabe señalar que la etapa 105 de detección de anomalías permite comparar el hash Agente de Usuario de Cliente, que define el cliente 2 que ha establecido la comunicación HTTP (capa 7), con el hash SALUDO de cliente TLS, indicativo de cómo funciona la comunicación de tipo TCP que se ha establecido (capa 4).
Luego en la etapa 105 de detección de anomalías se analizan los dos hashes de la cadena SALUDO de cliente y del Agente de Usuario, atribuyendo el hash UA al hash SALUDO de cliente, realizando un análisis de las ocurrencias y contando cuantas veces el Agente de Usuario tuvo el hash SALUDO de cliente, calculando un valor de frecuencia relativa (etapa 107). Si dicho valor es mayor que un umbral superior, por ejemplo, 80 % (segundo valor de umbral), entonces es común para el Agente de Usuario en cuestión. En este caso, de hecho, no se detecta ninguna anomalía porque el valor de frecuencia relativa es mayor que el valor umbral y, por lo tanto, el hash SALUDO del cliente es común para el agente de usuario. Si, en cambio, el valor de frecuencia relativa es menor que un valor de umbral inferior, como 10 % (el primer valor de umbral), el hash SALUDO de cliente es raro/no común para el agente de usuario. Por lo tanto, el hash SALUDO de cliente se reconoce como sospechoso y luego se analiza en detalle para verificar si el SALUDO de cliente (hash) es típico para el agente de usuario del cliente 2, es decir, si la solicitud realmente proviene del cliente o no, y en este último caso se reconoce un riesgo real. Por lo tanto, en caso de riesgo real, el método incluye continuar con la etapa 106, tomar una o más contramedidas de mitigación, tales como bloqueo de usuario, autenticación adicional, notificación al cliente 2 de posible amenaza, inclusión en la lista negra del hash sospechoso, por ejemplo, si el hash es atribuible a malware u otro objeto malicioso. Por lo tanto, se pasa de una situación sospechosa a una situación de riesgo real y cada vez que un cliente 2 intercambie información con ese hash SALUDO de cliente, automáticamente pasará a la lista negra.
Ventajosamente, el método de la presente invención permite comprender si, una vez iniciada la interacción SSL, el hash SALUDO del Cliente difiere del esperado si hay malware o un atacante que está actuando en medio de la comunicación/tráfico (hombre en el medio). El hombre en el medio quiere ver y modificar el contenido manipulando una comunicación para poder ver el contenido HTTP de la capa 7, rompiendo la comunicación cifrada entre el cliente 2 y el proxy inverso (capa 4), que en a su vez interrumpe la comunicación con el servidor web 3 del servidor de la aplicación.
El cliente 2 establece una comunicación SSL, pero el SALUDO de cliente es interceptado por el hombre en el medio y se establece una comunicación SSL entre el cliente 2 y el hombre en el medio. Este último envía su propio SALUDO de cliente al servidor de la aplicación, y no el del cliente 2. Sin embargo, el proxy inverso 1 intercepta el SALUDO de cliente generado por el intermediario.
Sin embargo, el Agente de Usuario es el mismo que el cliente 2 que está sufriendo el ataque, que aún debe iniciar su comunicación HTTP con el servidor web 3 para que el hombre en el medio pueda alterar el contenido intercambiado en el protocolo HTTP cifrado.
Ventajosamente, comparando el hash SALUDO de cliente y el hash Agente Usuario, es posible verificar si el hash SALUDO de cliente no es conocido para ese agente de usuario y, por lo tanto, si es sospechoso ya que el valor de frecuencia relativa está por debajo del menor. valor umbral (primer valor umbral). Por lo tanto, es posible tomar contramedidas, identificando cualquier anomalía para este cliente 2. Por ejemplo, el hash SALUDO de cliente se puede ingresar en una lista negra para bloquearlo automáticamente cada vez que sea interceptado.
Cabe señalar que, para que tal método sea particularmente efectivo, el proxy inverso 1 debería haber interceptado al menos una vez, en un paso de aprendizaje inicial, el cliente 2 y su SALUDO de cliente sin el hombre en el medio. Cabe señalar que el algoritmo predeterminado puede emplear técnicas de inteligencia artificial, de modo que con el tiempo pueda aprender si hay múltiples hashes de SALUDO de cliente conocidos para un cliente 2 específico. Tal etapa de aprendizaje incluye monitorizar el tráfico de solicitudes HTTP intercambiadas entre el cliente 2 y el servidor de la aplicación, y no las acciones o el contenido de información de las comunicaciones. De hecho, el objetivo del presente método es poder verificar si una determinada llamada HTTP proviene de un cliente 2 correcto o incorrecto tal como fue presentado (SALUDO).
Sin embargo, el hecho de que un SALUDO de cliente no coincida con la solicitud HTTP no es un indicador exacto de la presencia de un hombre en el medio. De hecho, podría ser una puerta de enlace web segura de tipo empresarial presente en la red, una puerta proxy en la red de la empresa. Por lo tanto, el análisis realizado en el presente método permite identificar la presencia de un proxy colocado frente al cliente 2 que genera la solicitud. Ventajosamente, si el algoritmo predeterminado identifica la presencia de un proxy y determina que se trata de un elemento no malicioso, dicho elemento puede insertarse en una lista blanca porque el SALUDO de cliente interceptado no es el del cliente 2, sino el de la puerta de enlace segura que difiere de los típicos SALUDO del Cliente para el agente de usuario del cliente 2. Por lo tanto, en la etapa de aprendizaje, el SALUDO de cliente del proxy se atribuye a ese agente de usuario específico del cliente 2 porque, aunque no fuera común, se ingresó en la lista blanca al estar asociado con el proxy seguro.
Ventajosamente, si el hash SALUDO de cliente se identifica como sospechoso, y el algoritmo predeterminado que emplea inteligencia artificial detecta que se han producido varios fraudes cuando se ha identificado el hash SALUDO de cliente específico, entonces ese hash se ingresa automáticamente en la lista negra.

Claims (10)

REIVINDICACIONES
1. Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizando técnicas de huellas digitales TLS, que comprende las etapas de:
- proporcionar un proxy inverso (1) configurado para interceptar el tráfico intercambiado entre un cliente (2) y un servidor de aplicación;
- proporcionar una unidad de procesamiento (4) en la que reside un algoritmo predeterminado y colocada en comunicación de señales con el proxy inverso (1);
- interceptar (101) mediante el proxy inverso (1) cada SALUDO de Cliente TLS dirigido al servidor de la aplicación y generar (102) un hash SALUDO de Cliente TLS mediante el algoritmo predeterminado;
- interceptar y procesar (103) por medio del proxy inverso (1) cada solicitud HTTP generada por el cliente (2) y dirigida al servidor de la aplicación para extraer el Agente de Usuario del Cliente de la solicitud HTTP interceptada; - procesar (104) el Agente de Usuario del Cliente mediante el algoritmo predeterminado para generar un hash del Agente de Usuario del Cliente;
- procesar (105) por medio del algoritmo predeterminado el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente calculando (107) el número de ocurrencias en las que el hash SALUDO del Cliente TLS está asociado con el hash del Agente de Usuario del Cliente para obtener un valor relativo valor de frecuencia, siendo utilizado dicho valor de frecuencia relativa por el algoritmo predeterminado para determinar si el hash SALUDO del Cliente TLS es común o anómalo para el hash del Agente de Usuario del Cliente (2);
- realizar (106) una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente (2).
2. Método según la reivindicación 1, en el que la etapa de procesar (105) el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente mediante el algoritmo predeterminado comprende la subetapa de:
- asociar el hash SALUDO del Cliente TLS con el hash del Agente de Usuario del Cliente (2) mediante el algoritmo de análisis y almacenar dicha asociación en una base de datos asociada con la unidad de procesamiento (4) si el algoritmo predeterminado determina que el hash SALUDO del Cliente TLS es común al hash del agente de usuario del cliente (2).
3. Método según la reivindicación 2, en el que la etapa de almacenar dicha asociación en una base de datos asociada con la unidad de procesamiento (4) si el algoritmo predeterminado determina que el hash SALUDO del Cliente TLS es común al hash del Agente de Usuario del Cliente (2), comprende la subetapa de:
- insertar en una lista blanca cada asociación común del SALUDO de cliente TLS para el hash del Agente de Usuario del Cliente.
4. Método según la reivindicación 1, en el que la etapa de procesar el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente mediante el algoritmo predeterminado comprende la subetapa de:
- determinar (108) que el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente (2) cuando el valor de frecuencia relativa es menor que un primer valor umbral.
5. Método según la reivindicación 4, en el que la etapa de procesar el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente mediante el algoritmo predeterminado comprende la subetapa de:
- determinar (109) que el hash SALUDO del Cliente TLS es común para el hash del Agente de Usuario del Cliente (2) cuando el valor de frecuencia relativa es mayor que un segundo valor umbral mayor que el primer valor umbral.
6. Método de acuerdo con la reivindicación 5, en el que:
la etapa de procesar (105) el hash SALUDO del Cliente TLS y el hash del Agente de Usuario del Cliente mediante el algoritmo predeterminado comprende la subetapa de:
- determinar (110) que el hash SALUDO del Cliente TLS es sospechoso para el hash del Agente de Usuario del Cliente (2) cuando el valor de frecuencia relativa está entre el primer valor umbral y el segundo valor umbral; - la etapa de realizar (106) una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente (2), comprende la subetapa de:
- realizar una o más acciones de detección para ataques hombre en el medio si se sospecha que el hash SALUDO del cliente TLS es el hash del agente de usuario del cliente (2).
7. Método según cualquiera de las reivindicaciones anteriores, en el que la etapa de realizar (106) una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente del cliente (2) comprende la subetapa de:
- insertar en una lista negra de puntos finales maliciosos cada asociación anormal del SALUDO de cliente TLS para el hash del agente de usuario del cliente.
8. Método según la reivindicación 7, en el que la etapa de realizar (106) una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente (2), comprende la subetapa de:
- bloquear la comunicación del cliente (2) con el servidor cuando se detecta un hash SALUDO del cliente TLS en la lista negra.
9. Método según cualquiera de las reivindicaciones anteriores, en el que la etapa de realizar (106) una o más acciones de protección contra ataques del tipo hombre en el medio si el hash SALUDO del Cliente TLS es anómalo para el hash del Agente de Usuario del Cliente del cliente (2) comprende una o más de las siguientes subetapas:
- enviar una señal de compromiso al servidor de la aplicación;
- activar un sistema de autenticación adicional del tipo Autentificación reforzada de cliente o Autentificación de factor múltiple;
- enviar una notificación a una plataforma de seguridad y/o antifraude;
- enviar una señal de compromiso a un canal externo o a un canal integrado con una plataforma de análisis de seguridad.
10. Método según cualquiera de las reivindicaciones anteriores, en el que la etapa de proporcionar una unidad de procesamiento (4) en la que reside un algoritmo predeterminado implica proporcionar un algoritmo predeterminado que emplea técnicas de inteligencia artificial.
ES21204075T 2020-10-23 2021-10-21 Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizandotécnica de huellas digitales TLS Active ES2962828T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT102020000025168A IT202000025168A1 (it) 2020-10-23 2020-10-23 Metodo per tracciare endpoint malevoli in diretta comunicazione con un back end applicativo utilizzando tecniche di tls fingerprinting

Publications (1)

Publication Number Publication Date
ES2962828T3 true ES2962828T3 (es) 2024-03-21

Family

ID=74194839

Family Applications (1)

Application Number Title Priority Date Filing Date
ES21204075T Active ES2962828T3 (es) 2020-10-23 2021-10-21 Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizandotécnica de huellas digitales TLS

Country Status (4)

Country Link
US (1) US20220131885A1 (es)
EP (1) EP3989519B1 (es)
ES (1) ES2962828T3 (es)
IT (1) IT202000025168A1 (es)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8689328B2 (en) * 2011-02-11 2014-04-01 Verizon Patent And Licensing Inc. Maliciouis user agent detection and denial of service (DOS) detection and prevention using fingerprinting
US10148664B2 (en) 2016-08-16 2018-12-04 Paypal, Inc. Utilizing transport layer security (TLS) fingerprints to determine agents and operating systems
US11271833B2 (en) * 2017-10-23 2022-03-08 Cisco Technology, Inc. Training a network traffic classifier using training data enriched with contextual bag information
US11184390B2 (en) 2017-12-18 2021-11-23 Akamai Technologies, Inc. Bot detection in an edge network using transport layer security (TLS) fingerprint
US10693893B2 (en) * 2018-01-16 2020-06-23 International Business Machines Corporation Detection of man-in-the-middle in HTTPS transactions independent of certificate trust chain

Also Published As

Publication number Publication date
IT202000025168A1 (it) 2022-04-23
US20220131885A1 (en) 2022-04-28
EP3989519B1 (en) 2023-08-09
EP3989519A1 (en) 2022-04-27

Similar Documents

Publication Publication Date Title
US10298610B2 (en) Efficient and secure user credential store for credentials enforcement using a firewall
US11201876B2 (en) Malicious software identification
US10425387B2 (en) Credentials enforcement using a firewall
US10891377B2 (en) Malicious software identification
US10931689B2 (en) Malicious network traffic identification
US10419454B2 (en) Malicious encrypted traffic inhibitor
EP3111614B1 (en) Malicious encrypted network traffic identification
EP3111612B1 (en) Profiling for malicious encrypted network traffic identification
US10157280B2 (en) System and method for identifying security breach attempts of a website
Anderson et al. OS fingerprinting: New techniques and a study of information gain and obfuscation
US20240089301A1 (en) Method and system for capture of visited links from encrypted and non-encrypted network traffic
Biju et al. Cyber attacks and its different types
EP3395035B1 (en) Malicious network traffic identification
Huang et al. An authentication scheme to defend against UDP DrDoS attacks in 5G networks
ES2962828T3 (es) Método para rastrear puntos finales maliciosos en comunicación directa con el servidor de una aplicación utilizandotécnica de huellas digitales TLS
Schneider et al. Mobile devices vulnerabilities
Warmer Detection of web based command & control channels
RU183015U1 (ru) Средство обнаружения вторжений
Baranov et al. Securing information resources using web application firewalls
Orucho et al. Security threats affecting user-data on transit in mobile banking applications: A review
JP2022541250A (ja) インラインマルウェア検出
US10182071B2 (en) Probabilistic tracking of host characteristics
KR102239762B1 (ko) 암호화 트래픽 가시성을 제공하는 패킷 기반 위협 탐지 방법
Tariq et al. Evaluating the Effectiveness and Resilience of SSL/TLS, HTTPS, IPSec, SSH, and WPA/WPA2 in Safeguarding Data Transmission
Gürsoy et al. DNS Tunnel Problem In Cybersecurity