Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
thermoptic — Un proxy HTTP stealth di nuova generazione che maschera perfettamente le richieste come browser Chrome su tutti i livelli dello stack. | Kitploit
Strumenti/GitHubGitHub/mandatoryprogrammer/thermoptic
Proxy Web e IntercettazioneStrumenti di ImpersonificazioneRaccolta InformazioniBypass WAFCrawlerAnti-BotSpoofing dell'Impronta DigitaleBypass CAPTCHA
GitHubmandatoryprogrammer/thermoptic

thermoptic

Un proxy HTTP stealth di nuova generazione che maschera perfettamente le richieste come browser Chrome su tutti i livelli dello stack.

Vedi Repository
1.0k664015 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

thermoptic

"Non ci credo, camouflage termottico!"

Cos'è?

Questo è un proxy HTTP progettato per aggirare i servizi che utilizzano il fingerprinting come JA4+ per bloccare determinati client HTTP. Usando questo proxy, puoi utilizzare i tuoi client HTTP preferiti come curl e avere comunque magicamente fingerprint indistinguibili da un vero browser web (Chrome/Chromium). thermoptic include anche alcune funzionalità divertenti per mitigare il fingerprinting basato su JavaScript. Rende inoltre semplice eseguire scraping ibrido utilizzando insieme sia un browser web che client HTTP a basso livello.

Anche se non hai familiarità con il fingerprinting JA4+, se hai fatto un po' di scraping probabilmente sei già stato bloccato da esso. Servizi popolari come Cloudflare utilizzano tali tecniche (e altri trucchi) per rilevare l'uso di client HTTP "non umani" e bloccare le richieste. Questi servizi possono anche usare questo fingerprinting per rilevare se inizi una sessione con un browser reale e poi passi a un client a basso livello come curl in seguito. thermoptic risolve tutti questi problemi presentando un fingerprint unificato di un browser "reale" per tutte le richieste di scraping.

Esempio

Ecco un esempio di fingerprint JA4H (HTTP) di curl senza il proxy:

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

Questo è piuttosto diverso dall'impronta digitale che Chrome produce quando visiti direttamente l'URL:

ge11cn19enus_f2808f0d04cf_9a10d4221160_7068f58def6e

Tuttavia, quando utilizziamo il proxy per effettuare la richiesta, la nostra impronta JA4H è magicamente identica:

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

(Lo stesso vale anche per la nostra impronta JA4 TLS, ecc.).

Configurazione

Per avviare un proxy thermoptic che maschera il tuo traffico attraverso un'istanza Chrome containerizzata su Ubuntu 22.04:

Configurazione Docker standard (funziona su host senza runtime GPU):

docker compose up --build

Ecco fatto, ora puoi instradare il traffico attraverso di esso:

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

Note importanti:

  • Per impostazione predefinita il proxy viene eseguito senza autenticazione. Se prevedi di esporre il proxy esternamente, assicurati di impostare l'autenticazione con le variabili d'ambiente PROXY_USERNAME e PROXY_PASSWORD.
  • Se non vuoi usare ---insecure devi usare il file CA generato che si trova in ./ssl/rootCA.crt. Questo viene generato la prima volta che esegui thermoptic.
  • Puoi connettere thermoptic a qualsiasi istanza di Chrome/Chromium avviata con il flag --remote-debugging-port. Questo è essenziale poiché vorrai configurare e fare proxy attraverso ambienti più comunemente usati per mantenere il tuo fingerprint il più discreto possibile (ad es. Chrome su Windows).
  • L'override compose per la GPU è pensato per host NVIDIA che hanno già installato il runtime/toolkit NVIDIA di Docker. Riserva il dispositivo GPU, monta /dev/dri e consente al container Chrome incluso di passare al percorso di rendering NVIDIA/Vulkan. Per usarlo, esegui docker compose -f docker-compose.yml -f docker-compose.gpu.yml up --build.

Funzionalità

  • 🕵️ Proxy con parità rispetto al browser che riproduce le richieste attraverso una sessione Chrome reale per far corrispondere i fingerprint JA4 byte per byte.
  • 🤝 Poco o nessun codice personalizzato necessario per integrare il tuo client HTTP (ad es. curl, requests, ecc.) con thermoptic, basta impostare il proxy e i tuoi fingerprint vengono gestiti.
  • 🪝 Framework di hook per l'automazione before-request/after-request/on-start, così puoi pilotare l'intero browser per risolvere le sfide o catturare artefatti.
    • 📘 Un esempio di hook per risolvere Cloudflare turnstile è visibile in ./hooks/onstart.js.
  • 🖥️ UI di controllo del browser web (su http://127.0.0.1:14111) per controllare la finestra del browser Chrome dockerizzato. Utile per accedere manualmente ai siti e poi usare senza problemi il proxy per effettuare richieste come la tua sessione autenticata (e per il debug).
  • 🔌 Imposta un URI proxy HTTP o SOCKS upstream tramite la variabile d'ambiente UPSTREAM_PROXY in docker-compose.yml.
  • 🛡️ Health check integrati e ciclo di controllo del riavvio per rilevare browser bloccati e recuperare automaticamente senza supervisione dell'operatore.
  • ⚡ Supporta HTTP/1.1 e HTTP/2, consentendo al traffico di essere proxato su entrambi i protocolli. (Nota che puoi parlare HTTP/1.1 con il proxy, e il Chrome pilotato può negoziare con il sito finale su un protocollo diverso.)

Come funziona esattamente questo cloaking?

Esempio di diagramma visivo

  • Viene effettuata una richiesta HTTP usando un client HTTP come curl con thermoptic impostato come proxy.
  • thermoptic analizza la richiesta per determinare al meglio quale tipo di richiesta del browser dovrebbe essere (ad es. visita manuale di un URL? Invio di un form? Una richiesta fetch()?).
  • thermoptic usa il Chrome Debugging Protocol (CDP) per pilotare il browser e configurare una pagina che simula la richiesta esattamente come avverrebbe normalmente in un vero browser web.
  • thermoptic attiva la richiesta tramite il contesto simulato e cattura la risposta HTTP.
  • thermoptic invia la risposta HTTP al client.

Poiché il browser effettua effettivamente la richiesta usando il suo stack completo, i fingerprint JA4 risultanti sono identici.

NOTA: Poiché molti WAF impiegano il fingerprinting a livello JavaScript dei browser web, thermoptic espone anche degli hook per utilizzare il browser per passaggi chiave del processo di scraping. Vedi questa sezione per maggiori informazioni su questo.

Perché questo approccio rispetto ad altre soluzioni?

Per dirla senza giri di parole: altri approcci hanno difetti fondamentali che impediscono loro di essere una soluzione pratica a lungo termine al problema del fingerprinting del browser.

Molti altri tentativi di "battere" il fingerprinting JA4+ del browser lo fanno reimplementando i vari livelli dello stack del browser. Questo approccio presenta numerosi svantaggi seri, come:

Scarica lo strumento