È possibile vedere un pacchetto prima della crittografia?

17

Voglio dire, se io sono, per esempio, su Facebook, ogni pacchetto che invio dalla mia NIC è crittografato. Ma ci deve essere la fase di quel pacchetto prima che sia crittografato. Il browser (credo) deve creare quel pacchetto e crittografarlo in seguito. Quindi, se sono sulla macchina a creare quei pacchetti, sono in grado di vederli prima della crittografia?

E se sì, ci sono malware in grado di farlo? Penso che con i privilegi di amministratore / root è sicuro che sia possibile, ma cosa succede senza di loro?

    
posta ShinobiUltra 25.12.2016 - 15:40
fonte

3 risposte

27

Con la disponibilità delle estensioni del browser, in realtà la lettura del traffico dovrebbe essere abbastanza fattibile. Se sia il malware che il browser Web vengono eseguiti come lo stesso utente (e quindi possono scrivere nella directory del profilo del browser), l'installazione delle estensioni del browser può essere eseguita in modo relativamente semplice.

Puoi anche aprire Strumenti per sviluppatori Web , generalmente accessibili premendo F12 e visitare la scheda Networking . Ciò ti mostrerà tutto il traffico prima che venga crittografato e inserito nella rete.

I metodi di cui sopra sono modi passivi che non interferiscono con le comunicazioni. I metodi attivi eseguono un attacco man in the middle (MitM) e modificano effettivamente i dati prima che vengano inoltrati (Tylerl descrive un esempio con Fiddler).

    
risposta data 25.12.2016 - 16:54
fonte
23

Il traffico di rete fuori dal tuo browser viene crittografato prima che il browser chiami send() per metterlo in rete. Quindi per intercettarlo prima della crittografia, dovresti intercettarlo prima che venga inviato a tutti - cioè, all'interno del browser stesso. Questo non è impossibile, ma è un sacco di lavoro.

Un'alternativa è impostare un proxy "Man In The Middle", come fiddler , che decrittografa il traffico prima di esso lascia la tua rete, la ispeziona e poi la ri-cripta mentre esce. Generalmente SSL è progettato per impedirlo, quindi avrai bisogno di una certa quantità di cooperazione da parte del tuo computer per permetterlo (cioè il tuo browser dovrà fidarsi della chiave pubblica del violinista) ma questo è tutto parte del modo in cui hai impostato il violinista, quindi è bene -assolutamente documentato.

    
risposta data 25.12.2016 - 16:48
fonte
4

The browser (I think) must create that packet and encrypt it afterwards. So if I am on the machine creating those packets, am I able to see them before encryption?

No, non è così che funziona. All'interno del browser, i dati vengono crittografati e vengono trasmessi solo i dati crittografati tra il browser e lo stack di rete. Lo stack di rete suddivide i dati crittografati in pacchetti e riassembli i dati crittografati ricevuti dai pacchetti nel flusso di dati che il browser decodifica. Semplicemente non ci sono pacchetti a livello del browser e il browser gestisce la crittografia e la decrittografia.

Quindi la tua domanda si basa su una premessa sbagliata.

    
risposta data 26.12.2016 - 01:30
fonte

Leggi altre domande sui tag