Fix FWP_E_NULL_DISPLAY_NAME (0x80320023) in Windows Firewall
Windows Firewall rule got corrupted with a blank display name. Usually happens after a failed third-party firewall uninstall or registry cleanup gone wrong.
Ran into the FWP_E_NULL_DISPLAY_NAME (0x80320023) error on a client's Windows 11 machine last week. Took me longer than I'd like to admit before I remembered the exact fix. The error pops up when you try to open Windows Defender Firewall or run something like wf.msc. It's almost always a corrupted rule—a rule that has a blank display name in the Windows Filtering Platform (WFP). Usually happens after a third-party firewall uninstall didn't clean up after itself, or after someone ran a registry cleaner on the firewall keys.
Cause 1: A firewall rule with a blank display name
The most common cause is a rule where the DisplayData.name field is empty. That's the human-readable name you see in the firewall MMC snap-in. When it's missing, WFP throws the 0x80320023 error. You won't see it in the GUI—the whole pane either crashes or shows nothing.
The fix: Use netsh advfirewall to list rules that have a blank name, then delete them. Here's the command that works every time:
netsh advfirewall firewall show rule name=all verbose | find /i "DisplayName"
That prints every rule's display name. But you're looking for a blank one—it'll show DisplayName: with nothing after it. Once you find it, note the rule's GUID or name. Then run:
netsh advfirewall firewall delete rule name=""
If that doesn't work (sometimes the rule has a GUID instead of a name), use PowerShell instead. Open PowerShell as admin and run:
Get-NetFirewallRule | Where-Object { $_.DisplayName -eq "" } | Remove-NetFirewallRule
That nukes any rule with a blank display name. Had a client last month whose entire print queue died because of this—turns out the firewall rule blocking the print spooler's port had a blank name. Removed it, rebooted, and the queue came back.
Cause 2: Third-party firewall uninstall left garbage
Second common scenario: you uninstalled a third-party firewall like Norton, McAfee, or Comodo, and it didn't clean up its WFP filter rules. Those orphaned rules can have blank display names because the uninstaller deleted the display name registry value but left the rule itself.
The fix: Run the vendor's cleanup tool first. McAfee has the MCPR tool. Norton has the Norton Remove and Reinstall tool. Comodo has a removal tool. Run that, then do the PowerShell cleanup from Cause 1. If that still doesn't clear it, check the registry directly. Open regedit and go to:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
Look for any entry with a Name that's blank or looks weird (like @ or just numbers). Right-click and delete it. Export the key before you start deleting—ask me how I know. I once deleted the wrong rule and lost remote access to a server. Not fun.
Cause 3: Corrupted Windows Filtering Platform store (rare but happens)
If neither of the above fixes it, the WFP store itself might be corrupted. This is less common but I've seen it on systems that went through multiple version upgrades (Windows 7 to 10, then to 11). The WFP store lives in %SystemRoot%\System32\drivers\ and its backup files can get borked.
The fix: Reset the Windows Firewall rules completely. Run this from an elevated command prompt:
netsh advfirewall reset
That wipes all custom rules and resets to default. Backup your rules first if you have any custom ones you care about:
netsh advfirewall export "C:\firewall-backup.wfw"
After the reset, reboot and test. This fixed it for a client whose machine had been in use since Windows 8 and had accumulated years of messed-up firewall state. After the reset, the error was gone and the firewall MMC opened clean.
Quick-reference summary
| Cause | Fix | Difficulty |
|---|---|---|
| Blank display name in a rule | Remove-NetFirewallRule with blank DisplayName |
Intermediate |
| Third-party firewall remnants | Vendor cleanup tool + registry check | Intermediate |
| Corrupted WFP store | netsh advfirewall reset after backing up |
Advanced |
That's it. No need to reinstall Windows, no need to run SFC or DISM (waste of time for this specific error). Just find the blank display name rule and kill it. If you're in a hurry, skip straight to the PowerShell one-liner—that's fixed 8 out of 10 of these I've seen.
Was this solution helpful?