Cloudflare: herramientas de detección de intercepción HTTPS4 min read

Cloudflare

La compañía Cloudflare presentó la biblioteca mitmengine utilizada para detectar la intercepción de tráfico HTTPS, así como el servicio web Malcolm para el análisis visual de los datos acumulados en Cloudflare.

El código está escrito en el idioma Go y se distribuye bajo la licencia BSD. El monitoreo de tráfico de Cloudflare utilizando la herramienta propuesta mostró que aproximadamente el 18% de las conexiones HTTPS son interceptadas.

Intercepción HTTPS

En la mayoría de los casos, el tráfico HTTPS se intercepta en el lado del cliente debido a la actividad de varias aplicaciones antivirus locales, firewalls, sistemas de control parental, malware (para robar contraseñas, sustituir publicidad o lanzar código de minería) o sistemas de inspección de tráfico corporativo.

Dichos sistemas agregan su certificado TLS a la lista de certificados en el sistema local y lo utilizan para interceptar el tráfico de usuarios protegido.

Las solicitudes de los clientes se transmiten al servidor de destino en nombre del software de intercepción, después de lo cual se responde al cliente dentro de una conexión HTTPS separada establecida mediante el certificado TLS del sistema de intercepción.

En algunos casos, la intercepción se organiza en el lado del servidor cuando el propietario del servidor transfiere la clave privada a un tercero, por ejemplo, el operador de proxy inverso, el sistema de protección CDN o DDoS, que recibe solicitudes del certificado TLS original y las transmite al servidor original.

En cualquier caso, la intercepción de HTTPS socava la cadena de confianza e introduce un vínculo de compromiso adicional, lo que conduce a una disminución significativa en el nivel de protección de la conexión, mientras deja la apariencia de la presencia de protección y sin causar sospecha a los usuarios.

Sobre mitmengine

Para identificar la intercepción HTTPS por Cloudflare, se ofrece el paquete mitmengine, que se instala en el servidor y permite detectar la intercepción HTTPS, así como determinar qué sistemas se utilizaron para la intercepción.

La esencia del método para determinar la intercepción en la comparación de las características específicas del navegador del procesamiento TLS con el estado de conexión real.

Basado en el encabezado de User Agent, el motor determina el navegador y luego evalúa si las características de conexión TLS, como los parámetros predeterminados de TLS, las extensiones admitidas, el conjunto de cifrado declarado, el procedimiento de definición de cifrado, los grupos y los formatos de curva elíptica corresponden a este navegador.

La base de datos de firmas utilizada para la verificación tiene aproximadamente 500 identificadores de pila TLS típicos para navegadores y sistemas de intercepción.

Los datos se pueden recopilar en modo pasivo a través del análisis del contenido de los campos en el mensaje de ClientHello, que se transmite en forma abierta antes de instalar el canal de comunicación cifrado.

TShark del analizador de red Wireshark 3 se utiliza para capturar el tráfico.

El proyecto mitmengine también proporciona una biblioteca para integrar funciones de determinación de intercepción en manejadores de servidores arbitrarios.

En el caso más simple, es suficiente pasar los valores del Agente de usuario y TLS ClientHello de la solicitud actual y la biblioteca dará la probabilidad de interceptación y los factores en base a los cuales se realizó una u otra conclusión.

Basado en las estadísticas de tráfico que pasan a través de la red de entrega de contenido Cloudflare, que procesa aproximadamente el 10% de todo el tráfico de Internet, se lanza un servicio web que refleja el cambio en la dinámica de la intercepción por día.

Por ejemplo, hace un mes, se registraron intercepciones para el 13.27% de los compuestos, el 19 de marzo, la cifra fue del 17.53%, y el 13 de marzo alcanzó un pico del 19.02%.

Comparativas

El motor de intercepción más popular es el sistema de filtrado de Symantec Bluecoat, que representa el 94.53% de todas las solicitudes identificadas de intercepción.

A esto le sigue el proxy inverso de Akamai (4.57%), Forcepoint (0.54%) y Barracuda (0.32%).

La mayoría de los sistemas de control parental y antivirus no se incluyeron en la muestra de interceptores identificados, ya que no se recolectaron suficientes firmas para su identificación exacta.

En el 52,35% de los casos, se interceptó el tráfico de las versiones de escritorio de los navegadores y en el 45,44% de los navegadores para dispositivos móviles.

En términos de sistemas operativos, las estadísticas son las siguientes: Android (35.22%), Windows 10 (22.23%), Windows 7 (13.13%), iOS (11.88%), otros sistemas operativos (17.54%).

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas
1 votos