Firewall Review Checklist

A proper firewall review, item by item: scope and config collection, rule-base review (any-any, shadowed/redundant/unused rules), default policy and cleanup rule, object/service hygiene, NAT, segmentation and egress filtering, management-plane and device hardening, VPN, logging and alerting, HA/backup, change management, and advanced threat prevention — plus Palo Alto / Cisco / FortiGate / Check Point / pfSense specifics. Each item: how to check (Nipper, vendor BPA, nmap, packet-tracer), the fin

LazyHackers.in — Checklist

🧱 Firewall Review Checklist

Ruleset & architecture, item by item: how to check · the finding · the fix

☰   How to use this guide

A firewall review is mostly a white-box config audit (read the running config and rule base) backed by active verification (prove from the wire what the rules actually do). The value isn't a dump of rules — it's finding the overly-permissive, shadowed, unused and unlogged rules that quietly widen the attack surface, and confirming the architecture enforces real segmentation. This guide turns every review item into how-to-check, vendor-agnostic first, then per-vendor.

Get a current, complete config export and the network/zone diagram up front. Automated tools (Nipper, vendor Best-Practice Assessment) give breadth; you still verify segmentation and high-risk rules by hand. Each section ends with a coverage table.
Authorised review only, on configs/devices you're scoped for. Active verification (nmap/firewalk through the firewall) must be in the RoE; coordinate so probes aren't mistaken for an attack.
# Automated config audit (offline, on the exported config)
nipper --input=running-config.txt --output=fw-report.html      # titania nipper-ng
# Vendor best-practice assessments:  Palo Alto BPA/Expedition · FortiGate Security Rating
#                                     Cisco Firepower reports · Check Point SmartEvent
# Active verification of what the ruleset really allows (in-scope only):
nmap -sS -p- -Pn <host-behind-firewall>        # which ports actually pass
firewalk -S1-1024 -i eth0 <gateway> <target>   # ACL/filter mapping

0   Scope & information gathering

Collect everything before judging anything: the full config, the topology, the asset/zone inventory, and the business justification source (change tickets).

# Pull a complete running config (examples)
# Cisco ASA:    show running-config            (or 'more system:running-config')
# FortiGate:    show full-configuration
# Palo Alto:    set cli config-output-format set ; configure ; show   (or export XML)
# Check Point:  policy in SmartConsole / $FWDIR/conf/*.W ; show configuration (Gaia)
# pfSense:      Diagnostics > Backup (config.xml) ; or  pfctl -sr / pfctl -sn
⚑ Report as: “Review baseline: complete config, topology and asset/zone inventory obtained”
🛡 Fix: Keep an authoritative, version-controlled config backup and a current network diagram; tie every rule to an owner and a justification (change ticket) so the review can flag the ones with neither.

Scope & information gathering — full coverage

Checklist itemHow to checkReport as
Complete current config exportshow running-config / exportConfig obtained
Network/zone topology diagramrequest diagramTopology mapped
Asset & zone/interface inventoryenumerate interfaces/zonesInventory built
Firmware/OS version + support statusshow versionVersion recorded
Rule justification source (tickets)request change recordsJustification source
RoE for active verificationconfirm scopeActive-test scope agreed

1   Rule base / policy review

The heart of the review. Hunt for overly-permissive rules, dead weight (shadowed/redundant/unused/expired), and rules with no logging or justification.

Overly-permissive & risky rules

  1. Flag any rule with any in source, destination or service — especially any→any and any rule permitting any service.
  2. Flag overly-broad objects (large subnets, whole zones) where a host/small group is intended.
  3. Flag permissive rules to/from the internet on sensitive ports (RDP 3389, SSH 22, SMB 445, DB 1433/3306/5432, mgmt).
  4. Confirm each risky rule's real effect with nmap/packet-tracer, not just by reading it.
# Grep an exported config for the worst offenders (Cisco ASA example)
grep -iE 'permit .* any any|permit ip any any' running-config.txt
# FortiGate: rules with 'all' service or 'all' address
grep -iE 'set (srcaddr|dstaddr|service) .?all' fortigate.conf
# Palo Alto: any/any in security rules (review 'show running security-policy')
# Then verify what truly passes:
nmap -sS -p3389,22,445,1433,3306 -Pn <internal-host>
⚑ Report as: “Overly-permissive firewall rule (any-any / any-service) on the rule base”
🛡 Fix: Least privilege per rule: specific source, destination and service; replace any with defined objects; remove internet exposure of management/DB/RDP/SSH; tier rules so the most specific match first.

Dead weight — shadowed, redundant, unused, expired

Shadowed rules never match (a broader rule above them wins); redundant rules duplicate others; unused rules have zero hits; temporary rules outlive their purpose. All add risk and confusion.

# Hit counts reveal unused rules
# Cisco ASA:    show access-list  | include hitcnt=0
# FortiGate:    diagnose firewall iprope show  /  policy hit count in GUI
# Palo Alto:    show running rule-use rule-base security type unused vsys vsys1
# Check Point:  SmartConsole > Logs & Monitor > rule hit count
# Shadow/redundancy analysis: Nipper, or FireMon/Tufin/AlgoSec/Skybox in enterprise
⚑ Report as: “Shadowed / redundant / unused (zero-hit) firewall rules present”
🛡 Fix: Remove shadowed and redundant rules; review zero-hit rules with owners and retire the dead ones; give temporary rules an expiry date and review them; document every remaining rule.

Rule-base review — full coverage

Checklist itemHow to checkReport as
any → any rulegrep permit any anyAny-any rule
Rule permits any servicegrep service all/anyOverly-broad service
Overly-broad source/destinationreview objectsOverly-broad rule scope
Internet exposure of mgmt/DB/RDP/SSHreview + nmap verifySensitive service exposed
Shadowed rules (never match)Nipper / analyzerShadowed rule
Redundant/duplicate rulesanalyzerRedundant rule
Unused (zero-hit) ruleshit-count reviewUnused rule
Expired/temporary rules still activereview temp rulesStale temporary rule
Rules without loggingcheck log flagRule without logging
Rules without comment/justificationreview comments/ticketsUndocumented rule
Disabled rules left in placereview disabledDisabled-rule clutter
Permissive service objects (port ranges)review service objectsBroad service object

2   Default policy & cleanup rule

Everything not explicitly allowed must be denied — and that final deny should be logged so you can see what's being dropped.

⚑ Report as: “No explicit logged deny-all cleanup rule (default behaviour relied upon)”
🛡 Fix: End every rule base with an explicit deny-all (cleanup) rule with logging enabled; ensure the implicit default is deny; log denied traffic for visibility and incident response.

Default policy & cleanup rule — full coverage

Checklist itemHow to checkReport as
Default policy is deny (implicit)review default actionDefault-deny confirmed/missing
Explicit cleanup deny-all rulecheck last ruleMissing cleanup rule
Cleanup rule logs deniescheck log flagDenies not logged
No permit after the cleanup rulereview rule orderRule after cleanup

3   NAT review

NAT rules quietly publish internal services. Review every static/destination NAT (port forward) for whether it should be exposed, and whether a matching tight security rule guards it.

# Cisco ASA:   show nat ; show xlate
# FortiGate:   show firewall vip ; show firewall policy (with VIP as dstaddr)
# Palo Alto:   show running nat-policy
# pfSense:     pfctl -sn   (NAT rules) ; Firewall > NAT
⚑ Report as: “NAT/port-forward exposes an internal service without a tight matching rule”
🛡 Fix: Review every static/destination NAT against business need; pair each with a least-privilege security rule (specific source where possible); remove NAT for decommissioned services; avoid overly-broad inbound port forwards.

NAT review — full coverage

Checklist itemHow to checkReport as
Static/destination NAT (port forwards)show nat / VIP reviewNAT inventory
NAT without matching tight rulecorrelate NAT + policyUnguarded NAT
Internal service exposed via NATreview + nmap verifyService exposed via NAT
Stale NAT for decommissioned hostreview targetsStale NAT rule
Overly-broad inbound NATreview scopeBroad NAT exposure

4   Segmentation & zoning

The architecture question: are trust zones (internet / DMZ / internal / management / PCI / OT) properly separated, and are inter-zone flows least-privilege? Verify by trying to cross zones.

  1. Map every interface/zone and its trust level; confirm the DMZ can't freely reach internal.
  2. Review inter-zone rules: each should be specific, not zone-wide any.
  3. Verify by attempting reachability from each zone to the others (in scope).
# From a host in one zone, test reachability into another (in-scope verification)
nmap -sS -p 22,445,3389,1433,3306 -Pn <other-zone-host>
# Cisco ASA: confirm a specific flow's verdict precisely
packet-tracer input dmz tcp 10.1.1.5 1234 10.0.0.10 445
⚑ Report as: “Network segmentation weakness — DMZ/user zone reaches internal/sensitive zone”
🛡 Fix: Enforce least-privilege between zones (DMZ cannot initiate to internal; user cannot reach server/management/PCI/OT beyond what's needed); isolate management, PCI and OT; verify isolation, don't assume it.

Segmentation & zoning — full coverage

Checklist itemHow to checkReport as
Interfaces/zones + trust levels mappedenumerate zonesZones mapped
DMZ → internal reachablepacket-tracer / nmapDMZ-to-internal access
User → server/mgmt zone over-permittedreview inter-zone rulesOver-permitted zone flow
Management zone not isolatedreview mgmt rulesManagement zone exposed
PCI/sensitive zone not isolatedreview PCI rulesPCI isolation gap
OT/ICS reachable from ITreview OT rulesIT-to-OT reachability
Zone-wide any inter-zone rulesreview rulesBroad inter-zone rule

5   Egress / outbound filtering

Outbound is the forgotten direction. Unrestricted egress lets malware exfiltrate and C2 phone home. The firewall should allowlist outbound, not permit any-out.

# Look for permissive outbound from internal/user zones
grep -iE 'permit .*inside.* any|permit ip <internal> any' running-config.txt
# Verify what can actually leave (in-scope egress test):
for p in 53 80 443 4444 8080 6667; do nc -zvw2 <external-ip> $p; done
⚑ Report as: “No egress filtering (any outbound permitted) — exfiltration/C2 friendly”
🛡 Fix: Default-deny egress with an allowlist of required destinations/ports; restrict outbound DNS/HTTP(S) to approved resolvers/proxies; block known-bad and unneeded protocols; log outbound denies to catch beaconing.

Egress filtering — full coverage

Checklist itemHow to checkReport as
Unrestricted outbound (any-out)review egress rulesNo egress filtering
Outbound DNS/HTTP not via proxy/resolverreview egressUnrestricted DNS/web egress
Unneeded protocols allowed outreview egressExcessive outbound protocols
Egress denies not loggedcheck loggingEgress denies unlogged
Covert-channel ports open outegress testCovert egress possible

6   Management plane & administrative access

How the firewall itself is administered. Management reachable from anywhere, weak/default creds, no MFA, cleartext protocols and no RBAC are the high-impact findings.

# Cisco ASA: who/where can manage, and how
show run | include ^(ssh|http|telnet|enable|username|aaa)
# FortiGate: admin access + trusthosts + protocols
grep -iE 'set (trusthost|allowaccess|admin-https|telnet)' fortigate.conf
# Flags: telnet/http (cleartext), management on untrusted iface, no trusthost ACL,
#        default/shared admin accounts, no MFA, SNMP community public/private
⚑ Report as: “Firewall management reachable from untrusted networks / weak admin auth / no MFA”
🛡 Fix: Restrict management to a dedicated network/jump host (trusthost ACLs); enforce MFA and per-admin accounts with RBAC; use SSH/HTTPS only (no Telnet/HTTP); central AAA (TACACS+/RADIUS); no default/shared creds; SNMPv3 only.

Management plane & admin access — full coverage

Checklist itemHow to checkReport as
Management reachable from untrusted netreview mgmt accessManagement plane exposed
Cleartext mgmt (Telnet/HTTP)check protocolsCleartext management
Default/shared admin credentialsreview accountsDefault/shared credentials
No MFA on admin accesscheck MFANo admin MFA
No RBAC / least-privilege admin rolesreview rolesMissing admin RBAC
No central AAA (TACACS+/RADIUS)check AAANo centralised AAA
SNMP v1/v2c / default communitycheck SNMPWeak SNMP
No mgmt trusthost/source ACLcheck trusthostNo management ACL
Idle/admin session timeout missingcheck timeoutNo session timeout

7   Device hardening & secure config

The device's own posture: firmware currency, secure services, time sync, banners and disabled junk. Map against the vendor CIS benchmark.

# Version + support/EoL status
# Cisco: show version   FortiGate: get system status   Palo Alto: show system info
# Benchmark the config against CIS:
#   CIS-CAT Pro (vendor benchmark)  or  Nipper's hardening section
⚑ Report as: “Outdated firewall firmware with known CVEs / insecure services enabled”
🛡 Fix: Run a supported, patched firmware (track EoL); disable unused services and interfaces; enforce SSH/HTTPS with strong ciphers; configure NTP, login banners, password policy; baseline against the vendor CIS benchmark.

Device hardening — full coverage

Checklist itemHow to checkReport as
Outdated/EoL firmware (CVE)show version + advisoriesOutdated firmware
Unused services/interfaces enabledreview configUnnecessary services
Weak SSH/TLS ciphers on mgmtssh-audit / testsslWeak management crypto
No NTP / time synccheck NTPNo time synchronisation
No login bannercheck bannerMissing login banner
Weak password policyreview policyWeak password policy
Config not CIS-benchmarkedCIS-CAT / NipperHardening gaps vs CIS

8   VPN review (site-to-site & remote access)

Site-to-site and remote-access VPNs terminating on the firewall: weak crypto (IKEv1/aggressive mode, DES/3DES/MD5), split tunneling, no MFA, and over-broad access once connected.

# Cisco ASA: review IKE/IPsec proposals + tunnel-groups
show run crypto ; show run | include (ikev1|ikev2|group-policy|split-tunnel)
# Flags: IKEv1 aggressive mode, DES/3DES/MD5/DH group 1-2, PSK reuse,
#        split-tunnel enabled, no MFA, VPN pool with any-any access
⚑ Report as: “Weak VPN crypto (IKEv1 aggressive / DES-3DES / weak DH) / remote-access VPN without MFA”
🛡 Fix: IKEv2 with strong crypto (AES-GCM, SHA-256+, DH group 14+/ECDH); no aggressive mode or weak PSKs; enforce MFA + certificate auth on remote access; disable split tunneling (or tightly control); least-privilege access for VPN pools, not any-any.

VPN review — full coverage

Checklist itemHow to checkReport as
IKEv1 aggressive modereview IKE configIKEv1 aggressive mode
Weak ciphers (DES/3DES/MD5)review proposalsWeak VPN ciphers
Weak DH group (1/2/5)review DHWeak DH group
Reused/weak pre-shared keyreview PSKWeak/reused PSK
No MFA on remote accesscheck authNo VPN MFA
Split tunneling enabledcheck split-tunnelSplit tunnelling
VPN pool over-broad accessreview group-policyOver-broad VPN access
No cert-based auth where expectedcheck authMissing certificate auth

9   Logging, monitoring & alerting

Can the firewall tell you what happened? Logs going off-box, retained, and alerted-on for denies and config changes.

⚑ Report as: “Insufficient firewall logging / no off-box log retention or alerting”
🛡 Fix: Log permits (where useful) and all denies; ship logs to a central SIEM/syslog (immutable, retained per policy); alert on denied bursts, rule changes and admin logins; sync time so logs correlate.

Logging, monitoring & alerting — full coverage

Checklist itemHow to checkReport as
Logging enabled on rulesreview log flagsInsufficient rule logging
Logs sent off-box (syslog/SIEM)check syslog configNo central logging
Log retention per policycheck retentionInsufficient retention
Alerting on denies/anomaliescheck alertsNo alerting
Config-change auditingcheck change logsNo change auditing
Admin-login loggingcheck auth logsNo admin-login logging
Time sync for correlationcheck NTPNo time sync

10   High availability & backup

Resilience and recoverability: HA pairing, config backups, and a tested restore path.

⚑ Report as: “No high availability / no current tested config backup”
🛡 Fix: Deploy HA (active/standby or active/active) for critical firewalls; take automated, version-controlled config backups stored securely off-box; periodically test restore; document rollback.

High availability & backup — full coverage

Checklist itemHow to checkReport as
HA configured for critical firewallscheck HA statusNo high availability
HA sync healthycheck sync stateHA sync issue
Automated config backupscheck backup jobNo automated backup
Backups stored securely off-boxcheck storageInsecure backup storage
Restore testedreview restore testUntested restore

11   Change management & rule lifecycle

Governance: every rule should trace to a request, an owner and an approval, and the rule base should be reviewed on a cadence (PCI-DSS requires at least every 6 months).

⚑ Report as: “No rule lifecycle / change management — rules lack owner, justification or review”
🛡 Fix: Require documented requests, business justification, owner and approval for every rule; review the rule base on a schedule (PCI-DSS: ≤6 months); decommission rules when the need ends; reconcile rules against tickets.

Change management & rule lifecycle — full coverage

Checklist itemHow to checkReport as
Rules trace to a request/ticketreconcile vs ticketsUntracked rule change
Each rule has an ownerreview ownershipRule without owner
Change approval processreview processNo change approval
Periodic rule-base review (≤6 mo)check review cadenceNo periodic review
Decommission process for stale rulesreview lifecycleNo decommission process

12   Advanced threat prevention (NGFW)

On a next-gen firewall, the L3/L4 rules are only half the story. Review whether IPS, application control, URL filtering, TLS inspection, threat intel and geo-blocking are enabled and tuned — profiles attached to rules, not just licensed.

⚑ Report as: “NGFW threat-prevention profiles licensed but not applied to rules / not tuned”
🛡 Fix: Attach IPS/AV/anti-spyware, application-control and URL-filtering profiles to the relevant rules (not just enabled globally); keep signatures/feeds updated; enable TLS inspection where policy allows; use threat intel and geo-blocking; tune to reduce false negatives.

Advanced threat prevention — full coverage

Checklist itemHow to checkReport as
IPS/IDS enabled & profiles on rulesreview security profilesIPS not applied/tuned
Antivirus/anti-malware inspectionreview AV profilesAV not applied
Application control (App-ID)review app rulesNo application control
URL/web filteringreview URL profilesNo URL filtering
TLS/SSL inspection (where allowed)check decryption policyNo TLS inspection
Threat-intel feeds updatedcheck feedsStale threat feeds
Geo-blocking / IP reputationreview geo rulesNo geo/reputation control
DNS security / sinkholingreview DNS securityNo DNS security
Signature/content updates currentcheck update statusOutdated signatures
Vendor-specific checks

A   Palo Alto (PAN-OS)

Palo Alto (PAN-OS): App-ID and the Best Practice Assessment do a lot of the work; watch for application-default vs any-service, unused rules, and decryption coverage.

show running security-policy
show running rule-use rule-base security type unused vsys vsys1   # unused rules
test security-policy-match from trust to untrust source 10.0.0.5 destination 8.8.8.8 \
  protocol 6 destination-port 443                                 # verify a flow
# Run Expedition / BPA against a tech-support file for a full best-practice report
⚑ Report as: “Palo Alto: rules using any service instead of application-default / unused rules / no decryption”
🛡 Fix: Use App-ID with application-default services; remove unused rules (rule-use report); enable decryption where policy permits; attach security profiles (vulnerability/AV/anti-spyware/URL/WildFire) to allow rules; run BPA and remediate.

Palo Alto (PAN-OS) — full coverage

Checklist itemHow to checkReport as
any service instead of application-defaultreview security rulesService not application-default
Unused rules (rule-use)show running rule-useUnused rule
No security profiles on allow rulesreview profilesMissing security profile
Decryption not configuredreview decryption policyNo SSL decryption
Default admin / weak mgmtreview adminsWeak management
BPA not run / findings openrun BPAOpen BPA findings

B   Cisco ASA / Firepower (FTD)

Cisco ASA/Firepower (FTD): classic ACLs — check for permit ip any any, zero-hit ACEs, weak crypto and management exposure. packet-tracer is your verification tool.

show running-config
show access-list | include hitcnt=0          # unused ACEs
show run | include ^(http|ssh|telnet|enable|aaa|snmp-server)
packet-tracer input outside tcp 1.2.3.4 1234 10.0.0.10 443   # verify a flow
⚑ Report as: “Cisco ASA: permit ip any any ACE / zero-hit ACLs / Telnet or weak SNMP enabled”
🛡 Fix: Replace any-any ACEs with specific ACLs; remove zero-hit ACEs; SSH/HTTPS only (no Telnet); SNMPv3; restrict management with ACLs; strong IKEv2 crypto; verify flows with packet-tracer.

Cisco ASA / Firepower (FTD) — full coverage

Checklist itemHow to checkReport as
permit ip any any ACEgrep ACLAny-any ACE
Zero-hit ACEsshow access-list hitcnt=0Unused ACE
Telnet/HTTP managementshow runCleartext management
SNMP v1/v2c / default communityshow run snmpWeak SNMP
Weak VPN crypto (IKEv1/3DES)show run cryptoWeak VPN crypto
Management not ACL-restrictedreview ssh/http ACLsManagement exposed

C   FortiGate (FortiOS)

FortiGate (FortiOS): check for policies using all address/service, missing UTM/security profiles, broad trusthosts, and the built-in Security Rating.

get system status                                 # version
show full-configuration | grep -iE 'set (srcaddr|dstaddr|service) .?all'
diagnose firewall iprope show                      # policy/hit info
# Run the GUI 'Security Rating' (Security Fabric) for a best-practice score
⚑ Report as: “FortiGate: policy using all address/service / no security profiles / admin without trusthost”
🛡 Fix: Use specific address/service objects (not all); attach security profiles (IPS/AV/web filter/app control) to policies; set admin trusthosts; HTTPS/SSH mgmt only; run Security Rating and remediate.

FortiGate (FortiOS) — full coverage

Checklist itemHow to checkReport as
Policy uses all address/servicegrep configOverly-broad policy
No security/UTM profiles on policyreview policiesMissing security profile
Admin without trusthostcheck trusthostNo admin trusthost
Cleartext mgmt (telnet/http)check allowaccessCleartext management
Unused policiesreview hit countsUnused policy
Security Rating not runrun ratingOpen Security Rating issues

D   Check Point

Check Point: layered policy — check for an Any/Any/Accept rule, missing cleanup rule, disabled logging (track=None), and rule hit counts in SmartConsole.

⚑ Report as: “Check Point: Any/Any/Accept rule / missing cleanup rule / rules with Track=None”
🛡 Fix: Remove Any/Any/Accept rules; ensure an explicit cleanup (drop + log) rule at the end; set Track=Log on rules; use the hit-count column to retire unused rules; tighten implied rules; apply IPS/Threat Prevention profiles.

Check Point — full coverage

Checklist itemHow to checkReport as
Any/Any/Accept rulereview policyAny-any-accept rule
Missing cleanup (drop+log) rulecheck last ruleMissing cleanup rule
Rules with Track=Nonereview track columnRule not logged
Unused rules (hit count)SmartConsole hit countUnused rule
Permissive implied rulesreview implied rulesPermissive implied rule
Threat Prevention not appliedreview profilesNo threat prevention

E   pfSense / OPNsense

pfSense/OPNsense: per-interface rules — check for allow-any rules, missing logging, default WebGUI exposure, and that outbound isn't wide open.

pfctl -sr            # show active filter rules
pfctl -sn            # show NAT rules
# Flags: 'pass ... from any to any', WebGUI on WAN, no rule logging, default creds
⚑ Report as: “pfSense: allow any-any rule / WebGUI exposed on WAN / default admin credentials”
🛡 Fix: Least-privilege per-interface rules (no allow any-any); enable logging on rules; restrict WebGUI/SSH to LAN/mgmt; change default admin creds + MFA; default-deny with explicit allows; tighten outbound.

pfSense / OPNsense — full coverage

Checklist itemHow to checkReport as
Allow any-any rulepfctl -srAny-any rule
Rules without loggingreview rule loggingRule without logging
WebGUI/SSH exposed on WANreview mgmt accessManagement exposed
Default admin credentialscheck adminDefault credentials
No MFA on WebGUIcheck MFANo admin MFA
Outbound wide openreview LAN rulesNo egress filtering

✓   Coverage map & how to run it

Work the universal sections (0–12) on every firewall review, then the vendor block. The rule-base review (§1) and segmentation (§4) carry the most risk; management/hardening (§6–7) carry the easiest criticals.

SectionRun onFocus
Universal 0–12Every firewall reviewScope, rule base, default policy, NAT, segmentation, egress, mgmt, hardening, VPN, logging, HA, change mgmt, threat prevention
Palo AltoPAN-OSApp-ID/application-default, rule-use, decryption, BPA
Cisco ASA/FTDASA/Firepowerany-any ACEs, zero-hit ACLs, packet-tracer, crypto
FortiGateFortiOSall address/service, security profiles, trusthost, Security Rating
Check PointCheck PointAny/Any/Accept, cleanup rule, Track=Log, hit count
pfSensepfSense/OPNsenseany-any rules, WebGUI exposure, logging, egress

Core principle: a firewall review is config audit + active verification. Don't just read the rule base — prove from the wire what it actually permits (nmap/packet-tracer), and tie every finding to least privilege, segmentation impact and the rule's missing justification. Map results to PCI-DSS req 1, NIST 800-41 and the vendor CIS benchmark, and tick a box only when you've verified it.

Reactions

Related Articles