Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
thermoptic — Un proxy sigiloso HTTP de nueva generación que enmascara perfectamente las peticiones como el navegador Chrome en todas las capas de la pila. | Kitploit
Herramientas/GitHubGitHub/mandatoryprogrammer/thermoptic
Proxies Web e InterceptaciónHerramientas de SuplantaciónRecopilación de InformaciónEvasión de WAFCrawlerAnti-BotSuplantación de Huella DigitalBypass de CAPTCHA
GitHubmandatoryprogrammer/thermoptic

thermoptic

Un proxy sigiloso HTTP de nueva generación que enmascara perfectamente las peticiones como el navegador Chrome en todas las capas de la pila.

Ver Repositorio
1.0k6640hace 17 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

thermoptic

"¡No lo creo, camuflaje termoóptico!"

¿Qué es?

Este es un proxy HTTP diseñado para eludir servicios que utilizan fingerprinting como JA4+ para bloquear ciertos clientes HTTP. Usando este proxy, puedes usar tus clientes HTTP preferidos como curl y aún tener fingerprints mágicamente indistinguibles de un navegador web real (Chrome/Chromium). thermoptic también viene con algunas características divertidas para mitigar el fingerprinting basado en JavaScript. También facilita hacer scraping híbrido usando tanto un navegador web como clientes HTTP de bajo nivel juntos.

Incluso si no estás familiarizado con el fingerprinting JA4+, si has hecho algo de scraping probablemente ya te habrás encontrado bloqueado por él antes. Servicios populares como Cloudflare utilizan tales técnicas (y otros trucos) para detectar el uso de clientes HTTP "no humanos" y bloquear solicitudes. Estos servicios también pueden usar este fingerprinting para detectar si inicias una sesión con un navegador real y luego cambias a un cliente de bajo nivel como curl más tarde. thermoptic resuelve todos estos problemas presentando un fingerprint de navegador "real" unificado para todas las solicitudes de scraping.

Ejemplo

Aquí hay un ejemplo de fingerprint JA4H (HTTP) de curl sin el proxy:

$ curl https://ja4db.com/id/ja4h/
ge11nn090000_b6a016211e8a_000000000000_e3b0c44298fc

Esto es bastante diferente de la huella digital que produce Chrome cuando visitas la URL directamente:

ge11cn19enus_f2808f0d04cf_9a10d4221160_7068f58def6e

Sin embargo, cuando usamos el proxy para hacer la petición, nuestra huella JA4H es mágicamente idéntica:

$ curl --proxy http://thermoptic:1234 https://ja4db.com/id/ja4h/
ge11cn19enus_f2808f0d04cf_9a10d4221160_7068f58def6e

(Lo mismo ocurre con nuestra huella TLS JA4, etc.).

Configuración

Para iniciar un proxy thermoptic que oculta tu tráfico a través de una instancia de Chrome en contenedor sobre Ubuntu 22.04:

Configuración estándar de Docker (funciona en hosts sin un runtime de GPU):

docker compose up --build

Eso es todo, ahora puedes proxyar el tráfico a través de él:

curl --proxy http://127.0.0.1:1234 --insecure https://ja4db.com/id/ja4h/

Notas importantes:

  • Por defecto el proxy se ejecuta sin autenticación. Si planeas exponer el proxy externamente, asegúrate de establecer la autenticación con las variables de entorno PROXY_USERNAME y PROXY_PASSWORD.
  • Si no quieres usar ---insecure necesitas usar el archivo CA generado ubicado en ./ssl/rootCA.crt. Este se genera la primera vez que ejecutas thermoptic.
  • Puedes conectar thermoptic a cualquier instancia de Chrome/Chromium lanzada con el flag --remote-debugging-port. Esto es esencial, ya que querrás configurar y hacer proxy a través de entornos más comúnmente usados para mantener tu huella lo más discreta posible (p. ej. Chrome en Windows).
  • El override de compose para GPU está pensado para hosts NVIDIA que ya tienen instalado el runtime/toolkit de NVIDIA para Docker. Reserva el dispositivo GPU, monta /dev/dri y permite que el contenedor Chrome incluido cambie a la ruta de renderizado NVIDIA/Vulkan. Para usarlo, ejecuta docker compose -f docker-compose.yml -f docker-compose.gpu.yml up --build.

Características

  • 🕵️ Proxy con paridad de navegador que reproduce las solicitudes a través de una sesión real de Chrome para igualar las huellas JA4 byte por byte.
  • 🤝 Se requiere poco o ningún código personalizado para integrar tu cliente HTTP (p. ej. curl, requests, etc.) con thermoptic, solo configura el proxy y tus huellas quedan cubiertas.
  • 🪝 Framework de hooks para automatización antes de la solicitud/después de la solicitud/al inicio, de modo que puedas controlar el navegador completo para resolver desafíos o capturar artefactos.
    • 📘 Puedes ver un ejemplo de hook para resolver Cloudflare turnstile en ./hooks/onstart.js.
  • 🖥️ UI de control del navegador web (en http://127.0.0.1:14111) para controlar la ventana del navegador Chrome dockerizado. Útil para iniciar sesión manualmente en sitios y luego usar sin problemas el proxy para hacer solicitudes como tu sesión autenticada (y para depuración).
  • 🔌 Establece un URI de proxy HTTP o SOCKS upstream mediante la variable de entorno UPSTREAM_PROXY en docker-compose.yml.
  • 🛡️ Comprobaciones de estado integradas y bucle de control de reinicio para detectar navegadores congelados y recuperarse automáticamente sin supervisión del operador.
  • ⚡ Compatible con HTTP/1.1 y HTTP/2, lo que permite que el tráfico se proxee sobre cualquiera de los dos protocolos. (Ten en cuenta que puedes hablar HTTP/1.1 con el proxy, y el Chrome controlado puede negociar con el sitio final mediante un protocolo diferente.)

¿Cómo funciona exactamente este cloaking?

Ejemplo de diagrama visual

  • Se realiza una solicitud HTTP usando un cliente HTTP como curl con thermoptic configurado como proxy.
  • thermoptic analiza la solicitud para determinar lo mejor posible qué tipo de solicitud de navegador se supone que es (p. ej. ¿visita manual de URL? ¿Envío de formulario? ¿Una solicitud fetch()?).
  • thermoptic usa el Chrome Debugging Protocol (CDP) para controlar el navegador y configurar una página que simula la solicitud exactamente como ocurriría normalmente en un navegador web real.
  • thermoptic desencadena la solicitud a través del contexto simulado y captura la respuesta HTTP.
  • thermoptic envía la respuesta HTTP de vuelta al cliente.

Debido a que el navegador realmente realiza la solicitud usando su stack completo, las huellas JA4 resultantes son idénticas.

NOTA: Debido a que muchos WAF emplean fingerprinting a nivel de JavaScript de los navegadores web, thermoptic también expone hooks para utilizar el navegador en pasos clave del proceso de scraping. Consulta esta sección para más información sobre esto.

¿Por qué este enfoque frente a otras soluciones?

Para decirlo sin rodeos: otros enfoques tienen fallos fundamentales que les impiden ser una solución práctica a largo plazo para el problema del fingerprinting de navegadores.

Muchos otros intentos de "vencer" el fingerprinting JA4+ de navegadores lo hacen reimplementando las distintas capas del stack del navegador. Este enfoque tiene una serie de inconvenientes graves, como:

Descargar herramienta