C'è uno strumento chiamato Firewalk progettato per raggiungere questo obiettivo. È un po 'vecchio ma dal momento che il networking non è cambiato molto in quel momento, mi aspetto che funzioni ancora.
Articolo , tutorial , home page del progetto .
Il whitepaper linkato dall'articolo è ora disponibile al link .
Il concetto generale è che finché c'è un hop dopo il firewall, è possibile impostare il TTL di un pacchetto in modo che ottenga un hop oltre il firewall e scada, causando una risposta ICMP da inviare all'utente. Se non si ottiene risposta, il firewall ha bloccato il pacchetto. Se ottieni una risposta, il firewall non ha bloccato il pacchetto (il che significa che l'host di destinazione deve essere).
Ci sono modi in cui questo potrebbe andare storto, come i messaggi ICMP in uscita negati dal firewall, un firewall diverso potrebbe bloccare il traffico in entrata o in uscita, la perdita generale dei pacchetti, l'host di destinazione inattivo o senza hop dopo il firewall prima che il server di destinazione, ma se si ottiene una risposta positiva da esso, allora sai che sarà accurato. Lo strumento Firewalk ha delle tecniche per provare a rilevare i falsi negativi.
Probabilmente puoi ottenere risultati simili con traceroute
anche se potresti aver bisogno di interferire con le opzioni come il tipo e la dimensione dei pacchetti che invii e dovrai inviare molti probe diversi per escludere i falsi negativi. Il whitepaper utilizza estensivamente traceroute
negli esempi.