Firewall identification with Scapy
By evaluating the responses that are returned from select packet injections, it is possible to determine whether remote ports are filtered by a firewall device. In order to develop a thorough understanding of how this process works, we can perform this task at the packet level using Scapy.
Getting ready
To use Scapy to perform firewall identification, you will need a remote system running network services. Additionally, you will need to implement some type of filtering mechanism. This can be done with an independent firewall device or with host-based filtering such as Windows Firewall. By manipulating the filtering settings on the firewall device, you should be able to modify the responses for injected packets.
How to do it…
Let's use Scapy to perform firewall identification:
- To effectively determine whether a TCP port is filtered or not, both a TCP SYN packet and a TCP ACK packet need to be sent to the destination port. Based on the packets that are returned...