Discussione Domanda Sniffing funzionamento

Odisse0

Utente Bronze
29 Maggio 2022
58
8
33
32
Ciao a tutti,
volevo conoscere meglio il tema sniffing: in particolare, il funzionamento di base, cosa si può realisticamente "vedere", come iniziare a fare qualche prova.
Premetto che non cerco risposte del tipo "studia un po' di JAVA e un po' di HTML e un po' di ogni linguaggio esistente".
Vorrei intavolare una discussione come fossimo al bar tra amici per capire questo tema, grazie a tutti in anticipo
 

JunkCoder

Moderatore
5 Giugno 2020
1,111
22
962
458
Il tema sniffing riguarda la rete, nessun linguaggio di programmazione. Puoi iniziare a fare qualche prova con Wireshark: seleziona l'interfaccia di rete sulla quale vuoi fare sniffing (e.s. Wi-Fi) e vedrai apparire tutto lo stream dei pacchetti che passano da là. Puoi vedere qualunque comunicazione ma non è detto che puoi capirne il contenuto: in chiaro vedresti solo i protocolli non cifrati come richieste DNS, HTTP, FTP...
 
  • Mi piace
Reazioni: 0xbro

Odisse0

Utente Bronze
29 Maggio 2022
58
8
33
32
Il tema sniffing riguarda la rete, nessun linguaggio di programmazione. Puoi iniziare a fare qualche prova con Wireshark: seleziona l'interfaccia di rete sulla quale vuoi fare sniffing (e.s. Wi-Fi) e vedrai apparire tutto lo stream dei pacchetti che passano da là. Puoi vedere qualunque comunicazione ma non è detto che puoi capirne il contenuto: in chiaro vedresti solo i protocolli non cifrati come richieste DNS, HTTP, FTP...
Ho fatto le mie prove con Wireshark, tuttavia non si vedeva chiaramente nulla, nessun sito, nessun dato chiaro, solo stringhe illeggibili. E' normale?
 

JunkCoder

Moderatore
5 Giugno 2020
1,111
22
962
458
Ho fatto le mie prove con Wireshark, tuttavia non si vedeva chiaramente nulla, nessun sito, nessun dato chiaro, solo stringhe illeggibili. E' normale?

Si è normale, infatti una volta lo sniffing era una seria minaccia per carpire credenziali sul web, ma ormai da anni la maggior parte dei siti web (tutti i principali) lavorano solo su https (di solito porta 443). Quando è così puoi vedere dei pacchetti di negoziazione (handshake) tra client e server per stabilire che tipo di cipher suite usare (che hanno in comune) ad esempio TLS v1.3 TLS_AES_256_GCM_SHA384 che non puoi ovviamente pensare di crackare, poi il pacchetto per lo scambio di chiave di sessione (basato sul certificato con chiave pubblica trasmesso dal sito) tutto il resto dei pacchetti sono illegibili senza avere la chiave di sessione appena negoziata. Se tu riuscissi a reperirla puoi inserirla dentro wireshark per decifrarli in automatico e mostrare i pacchetti come fosse HTTP in chiaro. Ci sono dei tutorial su come estrarre queste chiavi ad esempio dai browser, che comunque cambia per ogni connessione.

In alternativa puoi usare programmi come Fiddler e installare la falsa Root Certificate Authority sul computer che gli permette di sostituirsi a qualunque sito, facendo man-in-the-middle, generando un certificato "valido" per esso. Semplificando: FakeRootCA, installato nel sistema, dice che il certificato firmato da Evil Inc. è valido per il sito facebook.com. Quindi tutto ok, il lucchetto resta verde ma sul tuo programma vedi tutto il traffico tra browser e facebook in chiaro.

Lo sniffing comunque tutt'ora è molto utile soprattutto in LAN per altri protocolli come DNS ma anche per i siti web locali aziendali, che spesso non sono cifrati, o che molto probabilmente hanno certificato self-signed e difficilmente qualcuno si accorgerebbe se cambiasse l'hash.
 
  • Mi piace
Reazioni: Psychonaut e 0xbro

Odisse0

Utente Bronze
29 Maggio 2022
58
8
33
32
Si è normale, infatti una volta lo sniffing era una seria minaccia per carpire credenziali sul web, ma ormai da anni la maggior parte dei siti web (tutti i principali) lavorano solo su https (di solito porta 443). Quando è così puoi vedere dei pacchetti di negoziazione (handshake) tra client e server per stabilire che tipo di cipher suite usare (che hanno in comune) ad esempio TLS v1.3 TLS_AES_256_GCM_SHA384 che non puoi ovviamente pensare di crackare, poi il pacchetto per lo scambio di chiave di sessione (basato sul certificato con chiave pubblica trasmesso dal sito) tutto il resto dei pacchetti sono illegibili senza avere la chiave di sessione appena negoziata. Se tu riuscissi a reperirla puoi inserirla dentro wireshark per decifrarli in automatico e mostrare i pacchetti come fosse HTTP in chiaro. Ci sono dei tutorial su come estrarre queste chiavi ad esempio dai browser, che comunque cambia per ogni connessione.

In alternativa puoi usare programmi come Fiddler e installare la falsa Root Certificate Authority sul computer che gli permette di sostituirsi a qualunque sito, facendo man-in-the-middle, generando un certificato "valido" per esso. Semplificando: FakeRootCA, installato nel sistema, dice che il certificato firmato da Evil Inc. è valido per il sito facebook.com. Quindi tutto ok, il lucchetto resta verde ma sul tuo programma vedi tutto il traffico tra browser e facebook in chiaro.

Lo sniffing comunque tutt'ora è molto utile soprattutto in LAN per altri protocolli come DNS ma anche per i siti web locali aziendali, che spesso non sono cifrati, o che molto probabilmente hanno certificato self-signed e difficilmente qualcuno si accorgerebbe se cambiasse l'hash.
Quindi mi pare di capire che non esiste attualmente un modo (oltre il semplice phishing) di scoprire credenziali di rete, (il brute force lo escludo a priori visto che dopo 3 tentativi ti si blocca tutto ormai).
 

ghost141

Utente Iron
11 Novembre 2022
19
4
9
8
Quindi mi pare di capire che non esiste attualmente un modo (oltre il semplice phishing) di scoprire credenziali di rete, (il brute force lo escludo a priori visto che dopo 3 tentativi ti si blocca tutto ormai).
L'unico metodo che funzionerà sempre l'ingegneria sociale. In più nessun sistema è sicuro, quindi un modo lo si trova sempre, guarda solo la notizia riportata da @0xbro:
https://www.inforge.net/forum/threa...di-rubare-le-credenziali-degli-utenti.613279/
 
  • Mi piace
Reazioni: 0xbro

Psychonaut

Utente Jade
17 Giugno 2012
1,362
85
615
744
Quindi mi pare di capire che non esiste attualmente un modo (oltre il semplice phishing) di scoprire credenziali di rete, (il brute force lo escludo a priori visto che dopo 3 tentativi ti si blocca tutto ormai).
Se crei un automatismo che dopo 3 richieste cambia l'indirizzo sorgente non si blocca niente :), poi c'è da vedere a cosa applichi l'attacco bruteforce, se è per aprire un file protetto puoi fare tutte le richieste che vuoi, per violare un account o una rete è già diverso, Wireshark inoltre non è usato semplicemente per sniffare la rete e fare L'H4ckKéRx, è usato moltissimo per fare analisi sulla rete, per vedere cosa chiede un'applicazione o come risponde il sistema o l'applicazione stessa.Mentre il phishing non è detto che funzioni sempre, anche qui come dice @ghost141 è fondamentale l'ingegneria sociale.
 
  • Mi piace
Reazioni: ghost141

haxo

Helper
8 Maggio 2020
306
17
162
156
come già riferito, lo "sniffing" non è correlato ai linguaggi di programmazione.
Riguardo wireshark, siamo nel 2022 e ogni singola informazioni è criptata, non è più possibile rubare password attraverso la rete, se non in caso di assenza di crittografia

"When data is transmitted across networks, if the data packets are not encrypted, the data within the network packet can be read using a sniffer."
Brevemente ti sta dicendo che se le informazioni sono criptate, non puoi fare nulla :)