Hey,

we performed pretty thorough Tests with the Stack (including the usual 
stuff like SYN-Floods) and found the TCP Options-bug.
I would give LwIP a pretty good grade there. The Stack itself is very 
robust.

The problematic part is always the driver implementation. And that is 
where LwIP could provide more help to developers (more documentation, 
tips, hints, best practices).
Because timing issues, flooding issues and all that stuff all arise in the 
driver. If your driver is not secure, the stack can't help crashing.

So debug your driver while under SYN flood and you'll probably find 
something overflowing.

Now on to the topic of filtering. Filtering packets in the MAC layer by 
whitelisting IPs is pretty much nonsense. It's basically the same 
simulation of security as MAC-ACLs in Wireless routers. An IP can easily 
be spoofed just like a MAC can. Building extensive packet filtering 
options and configuration options into LwIP will only increase complexity 
and code size. And if you want filtering on the lowest level it will be a 
driver issue anyways.

Network-security is a very complex topic and you can't try to make a 
single device ultra-secure and then never worry again. The whole network 
has to be taken into account. Also there are no statements about it that 
are correct under every circumstance (like using UDP because it's 
simpler).
You cannot judge the security of a device by the IP stack alone.

To close: you should probably never expose a device with such low 
resources that it uses a minimal Stack like LwIP _directly_ to the 
internet. This WILL starve your resources and DoS your device.
Packet-filtering should be done by appliances that are built for that. 
Firewalls, VPN-Tunnels, ...

regards,
Fabian
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to