Bug #729
closedif_bridge unpredictable filter interface selection
0%
Description
This bug is regarding traffic leaking when using bridges interfaces. I have been able to produce this bug on 2 seperate systems. One system was an independant test best which was not connected to any other network. I was using the 2.0 snampshot on 7th July 2010.
1 ) Setup pfsense with 2 interfaces. WAN and LAN
2 ) Bridge WAN and LAN together (They will share the same subnet).
3 ) Make sure that the WAN interface is assigned an IP, but the LAN interface is not
5 ) Connect a host to the LAN interface (We will call this Z) and assign an ip to it. Also connect a host to the WAN interface, and assign an IP to it. We will use the host connected to the WAN interface for accessing the web GUI/shell.
6 ) In the WAN tab on pfsense, make sure that the only rule there is "allow all". I appreciate that you wouldn't do this in production, but this is just here to prove a point.
7 ) In the LAN tab, make sure the only rule listed is a "block all". This is important, as the assumption in this test is that hosts on the LAN interface will not be able to access anything.
8 ) Reset state table
9) Reset ARP table (arp -d -a)
10 ) Try and ping the pfsense WAN interface IP from Z. You would expect this to fail, as the only rule on the LAN tab is block all. However, for about 5 minutes, it will allow all traffic depending on the rules in the WAN tab.
What I feel is happening, is that once the arp table and states tables are cleared, pfsense thinks that traffic coming from the LAN interface is actually from the WAN interface. Hence, it evaluates the WAN rules instead of the LAN rules.
I have also tested the above with 3 interfaces (with LAN and WAN bridged together, and OPT1 as a standard subnet). During the inital 5 minutes, provided that the LAN host is using the pfsense WAN ip as its default gateway (!), it is able to access everything behind OPT1.
This is very worrying, as the states and arp tables are empty upon pfsense booting, so this problem would manifest itself then.
If you need any more tests done, or more information, please do ask and I will do whatever I can to help
Many Thanks
Files