3.2.2 Ensure ICMP redirects are not accepted

Information

ICMP redirect messages are packets that convey routing information and tell your host (acting as a router) to send packets via an alternate path. It is a way of allowing an outside routing device to update your system routing tables. By setting net.ipv4.conf.all.accept_redirects and net.ipv6.conf.all.accept_redirects to 0, the system will not accept any ICMP redirect messages, and therefore, won't allow outsiders to update the system's routing tables.

Rationale:

Attackers could use bogus ICMP redirect messages to maliciously alter the system routing tables and get them to send packets to incorrect networks and allow your system packets to be captured.

Solution

Run the following command to set the active kernel parameters and persist the settings:

# apiclient apply <<EOF
[settings.kernel.sysctl]
"net.ipv4.conf.all.accept_redirects" = "0"
"net.ipv4.conf.default.accept_redirects" = "0"
"net.ipv6.conf.all.accept_redirects" = "0"
"net.ipv6.conf.default.accept_redirects" = "0"
EOF

Run the following commands to flush the routing caches:

# sysctl -w net.ipv4.route.flush=1
# sysctl -w net.ipv6.route.flush=1

See Also

https://workbench.cisecurity.org/benchmarks/6709

Item Details

Category: CONFIGURATION MANAGEMENT, SYSTEM AND SERVICES ACQUISITION

References: 800-53|CM-1, 800-53|CM-2, 800-53|CM-6, 800-53|CM-7, 800-53|CM-7(1), 800-53|CM-9, 800-53|SA-3, 800-53|SA-8, 800-53|SA-10, CSCv7|5.1

Plugin: Unix

Control ID: d78be357483509bb439e3e03bca4b1ef1b7fcb40469bf11a709aab9015055e5d