Salta ai contenuti

Cattura per processo

Vuoi vedere il traffico di un solo programma, ma senza affrontare tutta la trafila del “cambio il proxy globale, installo un certificato, ripristino tutto dopo la cattura”? Fornisci un comando di avvio e lo strumento fa partire il programma per te, cattura soltanto quello e mostra il testo in chiaro fin dall’avvio, con zero interferenze verso gli altri software sul sistema. Il modo più leggero e pulito per catturare un singolo programma.


Passare un singolo programma attraverso un proxy di solito significa cambiare il proxy di sistema, installare un certificato apposito e ripristinare tutto in seguito, con il rischio di intaccare altri software se non si sta attenti. La cattura per processo salta tutto questo:

Passare un singolo programma per un proxy (approccio tradizionale) Cattura per processo
Proxy di sistema Va cambiato, e ripristinato dopo Intatto
Installare un certificato Va installato, e il programma deve fidarsene Non serve
Impatto sugli altri software Possibile (un proxy globale si ripercuote su tutto) Zero interferenze (interessa solo questo programma)
Vedere il testo in chiaro Solo se il programma si fida del certificato Testo in chiaro fin dall’avvio (decifratura automatica per i programmi comuni)
Pulizia dopo la cattura Va ripristinato il proxy / rimosso il certificato Basta fermarla, niente da ripristinare

In breve: la cattura via proxy tocca “l’intera macchina”, la cattura per processo tocca soltanto “questo programma”. Se vuoi vedere in modo pulito cosa invia un singolo programma, questo è il modo più immediato.


  • Cattura solo questo programma, zero intrusione: non cambia il proxy di sistema, non installa un certificato e non tocca la scheda di rete; viene catturato solo il programma che avvii. Gli altri software sul sistema restano del tutto inalterati, e dopo la cattura non c’è nulla da ripulire.
  • Testo in chiaro fin dall’avvio, copertura ampia: browser, app desktop in stile Electron, Node, Python, Java desktop e strumenti da riga di comando che usano librerie crittografiche comuni mostrano tutti il testo in chiaro nel momento in cui un comando li avvia, senza nulla da configurare nel programma e senza certificati da installare.
  • Processi figli seguiti in automatico: i processi figli che il programma genera internamente vengono catturati anch’essi, senza perderne nessuno.
  • Pronta quando lo sei tu: per eseguire il debug di uno script o verificare un’API, digiti un comando e inizi a catturare, molto più in fretta che allestire un proxy e installare un certificato.

In “Comando di avvio”, inserisci il comando che vuoi eseguire (per esempio python3 app.py) e lo strumento lo farà partire catturando solo il suo traffico. Sono integrati tre esempi con un clic; cliccane uno per compilarlo in automatico, poi modificalo come serve:

  • Esempio browser: avvia una finestra del browser separata e pulita (lasciando intatto il browser che usi ogni giorno) e la cattura direttamente; HTTP/3 (QUIC) è già stato impostato per ricadere su una connessione ordinaria al posto tuo, così è facile da catturare e decifrabile.
  • Esempio Python: invia una richiesta con un solo comando e vedi il testo in chiaro.
  • Esempio da riga di comando: una richiesta HTTPS fatta dalla riga di comando viene catturata immediatamente.

Nuova sessione · Cattura per processo: inserisci un comando di avvio e lo strumento fa partire il programma per te, cattura soltanto quello e lo decifra in automatico; sono integrati esempi con un clic per browser / Python / riga di comando

Se un altro programma che stai catturando usa anch’esso HTTP/3, attiva l’opzione a livello di sessione “Blocca HTTP/3” per farlo ricadere su una connessione ordinaria, che allo stesso modo lo rende facile da catturare e decifrabile.


4. Vedere il testo in chiaro: cosa funziona e cosa richiede un approccio diverso

Sezione intitolata “4. Vedere il testo in chiaro: cosa funziona e cosa richiede un approccio diverso”
  • Programmi comuni: testo in chiaro fin dall’avvio. Browser, app Electron, Node, Python, Java desktop e strumenti da riga di comando che usano librerie crittografiche comuni mostrano il testo in chiaro direttamente dopo l’avvio, senza passaggi aggiuntivi.

Risultato reale: un programma avviato con un solo comando ha la sua richiesta HTTPS catturata e decifrata; i dettagli mostrano TLS “Decifrato”, con le intestazioni della richiesta e la risposta JSON esposte in modo chiaro

  • Alcuni programmi non possono essere decifrati (catturabili, ma solo come testo cifrato): certi programmi che usano librerie crittografiche particolari non producono testo in chiaro con questo metodo. Il caso più tipico è il curl integrato in macOS (e gli strumenti basati sulla stessa libreria crittografica di sistema); alcuni programmi scritti interamente in Go si comportano allo stesso modo.

    Per vedere il testo in chiaro di un HTTPS inviato dalla riga di comando, l’“Esempio Python” è il più affidabile; oppure passa a un curl basato su OpenSSL.

  • Programmi che ignorano del tutto le impostazioni del proxy: questo metodo non riesce a catturarne il traffico.

Per questi programmi “blindati” o particolari, passa alla Cattura a livello applicativo, che legge il testo in chiaro direttamente dall’interno del programma e sa gestire allo stesso modo certificate pinning, crittografia proprietaria e librerie crittografiche di sistema.


I dati catturati passano attraverso la stessa elaborazione di ogni altro metodo di cattura, e sono altrettanto facili da capire e decodificare:

  • Modi diversi di visualizzazione: strutturato, testo abbellito, esadecimale e rilevamento automatico, commutabili in modo indipendente per ciascuna direzione. Vedi Ispeziona e decodifica per i dettagli.
  • Decompressione e rilevamento automatici: decomprime automaticamente gzip / brotli / deflate / zstd (compresi più livelli sovrapposti) e rileva e abbellisce in automatico JSON, XML, form, protobuf / gRPC e altro.
  • Codec personalizzati: per protocolli proprietari / interni, scrivi un breve script per insegnargli a leggerli. Vedi Decodifica di protocolli personalizzati per i dettagli.

6. Come scegliere tra i quattro metodi di cattura locale

Sezione intitolata “6. Come scegliere tra i quattro metodi di cattura locale”
La tua situazione Quale usare
Un programma normale che puoi avviare con un comando (browser / script / CLI) Cattura per processo (questa pagina, la più immediata)
Vuoi vedere tutto il traffico della macchina, il traffico non HTTP o tutto ciò che un programma fa sulla rete Cattura da scheda di rete
Un programma già in esecuzione / che usa certificate pinning / che ignora il proxy / che usa crittografia interna / che usa una libreria crittografica di sistema Cattura a livello applicativo
App di sistema integrate su macOS / app ostinate Cattura a livello di sistema

  • Debug di uno script / verifica di un’API: hai scritto uno script Python / Node e vuoi vedere esattamente cosa invia e riceve; digiti un comando e vedi il testo in chiaro direttamente.
  • Osservare un solo programma: senza cambiare le impostazioni di sistema né intaccare altri software, vedi solo con chi sta parlando questo programma.
  • Catturare una sessione di browser pulita: usa l’esempio per avviare una finestra del browser separata, libera dal rumore di tutti i plugin e le schede del tuo browser di tutti i giorni.

Correlati: Cattura via proxy · Cattura a livello applicativo · Ispeziona e decodifica