diff --git a/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/ansible/shared.yml b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/ansible/shared.yml
new file mode 100644
index 000000000000..5e6ad7a3413f
--- /dev/null
+++ b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/ansible/shared.yml
@@ -0,0 +1,12 @@
+# platform = multi_platform_all
+# reboot = false
+# strategy = configure
+# complexity = low
+# disruption = low
+
+- name: Ensure firewalld default zone is drop
+ lineinfile:
+ path: /etc/firewalld/firewalld.conf
+ regexp: '^DefaultZone='
+ line: 'DefaultZone=drop'
+ create: yes
diff --git a/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/bash/shared.sh b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/bash/shared.sh
new file mode 100644
index 000000000000..f72edba49329
--- /dev/null
+++ b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/bash/shared.sh
@@ -0,0 +1,7 @@
+# platform = multi_platform_all
+# reboot = false
+# strategy = configure
+# complexity = low
+# disruption = low
+
+{{{ bash_replace_or_append('/etc/firewalld/firewalld.conf', '^DefaultZone', 'drop', '%s=%s') }}}
diff --git a/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/oval/shared.xml b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/oval/shared.xml
new file mode 100644
index 000000000000..24b0210c54a0
--- /dev/null
+++ b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/oval/shared.xml
@@ -0,0 +1,48 @@
+
+
+ {{{ oval_metadata("Firewalld Must Employ a Deny-all, Allow-by-exception Policy") }}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /etc/firewalld/firewalld.conf
+ ^DefaultZone=drop$
+ 1
+
+
+
+ ^DefaultZone=drop$
+
+
+
+
+
+
+
+
+
+
+
+ /etc/firewalld/zones
+ drop.xml
+ /zone[@target='DROP']
+
+
+
+ /usr/lib/firewalld/zones
+ drop.xml
+ /zone[@target='DROP']
+
+
+
\ No newline at end of file
diff --git a/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/correct.pass.sh b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/correct.pass.sh
new file mode 100644
index 000000000000..bcdeeadfb82f
--- /dev/null
+++ b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/correct.pass.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+# packages = firewalld
+# platform = multi_platform_all
+
+mkdir -p /etc/firewalld/zones
+touch /etc/firewalld/firewalld.conf
+if grep -q "^DefaultZone=" /etc/firewalld/firewalld.conf; then
+ sed -i "s/^DefaultZone=.*/DefaultZone=drop/" /etc/firewalld/firewalld.conf
+else
+ echo "DefaultZone=drop" >> /etc/firewalld/firewalld.conf
+fi
+
+cat << EOF > /etc/firewalld/zones/drop.xml
+
+
+ Drop
+ Unsolicited incoming network packets are dropped.
+
+EOF
+
diff --git a/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/wrong_zone.fail.sh b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/wrong_zone.fail.sh
new file mode 100644
index 000000000000..112810d2f08a
--- /dev/null
+++ b/linux_os/guide/system/network/network-firewalld/ruleset_modifications/configured_firewalld_default_deny/tests/wrong_zone.fail.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+# packages = firewalld
+# platform = multi_platform_all
+
+mkdir -p /etc/firewalld/zones
+touch /etc/firewalld/firewalld.conf
+if grep -q "^DefaultZone=" /etc/firewalld/firewalld.conf; then
+ sed -i 's/^DefaultZone=.*/DefaultZone=public/' /etc/firewalld/firewalld.conf
+else
+ echo "DefaultZone=public" >> /etc/firewalld/firewalld.conf
+fi
\ No newline at end of file