In che modo gli utenti esperti testano il firewall di stato con TCP / IPv6?
Il mio test case include:
- echo reply senza richiesta
- tcp ack senza syn
Ci sono altri casi di test, specialmente con IPv6?
NAT Traversal
Un metodo per due client, ciascuno isolato da firewall separati che funzionano in NAT, può stabilire una comunicazione tra loro, anche se la connessione è esplicitamente consentita.
I pacchetti UDP non contengono alcun stato. Quando un pacchetto UDP iniziale lascia il firewall con NAT, consentirà il ritorno del traffico UDP attraverso la stessa "sessione".
Quando i client iniziano l'invio di massa di pacchetti udp l'uno all'altro (stessa tupla di origine / destinazione), ad un certo punto, entrambi i firewall crederanno di aver avviato il traffico e di consentire il traffico tra i due client, ciascuno isolato da un Firewall NAT.
Monitoraggio delle connessioni
Alcuni firewall non traccia solo le connessioni basate sullo stato della connessione TCP, ma anche la richiesta del protocollo dell'applicazione per inviare un file su irc o ftp. Anche se questa è una funzionalità quando funziona come previsto, può anche essere utilizzata per rendere il firewall aperto per le connessioni indesiderate.
Un esempio di questo è l'attacco XC IRC DCC: link
Sembra che vorrai ambientarti con una tazza di caffè, una copia della specifica e le pagine man di libpcap.
Non dovrebbe essere troppo difficile scrivere un programma che realizzerà e trasmetterà questi pacchetti per te. Il flusso ad alto livello sarà
Dopo averlo creato per ciascuno dei casi di test, puoi semplicemente eseguire l'app e osservare il firewall per un comportamento corretto. Vorrei, naturalmente, catturare il traffico e assicurarmi che qualcosa come Wirehark lo decida correttamente come parte del processo di test / qa.