Consider the default firewall configuration for Windows 10 Pro (Creators Update).
So, in a nutshell:
- Block inbound connections.
- Allow oubound connections.
- 223 inbound exception rules (some of which are disabled).
- 148 outbound exception rules (some of which are disabled).
Why allow so many exceptions inbound? That sounds like a blatant security vulnerability and defeats the point of having a firewall in the first place.
Sure, you can remove these, but most users won't.
Sure, the router NAT/firewall will block these, but then why have a Windows Firewall at all if you need to rely on another firewall?
Also, the vast majority of apps don't require to listen to inbound connections anyway.
Why add outbound exceptions at all? The default behavior is to just allow everything outbound anyway, so all the exceptions don't do anything. It's confusing and redundant.
I wonder if these are just poor design decisions from Microsoft, or if there are actually good reasons behind all this.