Cisco IOS Switch L2S Security Technical Implementation Guide

  • Version/Release: V2R4
  • Published: 2023-09-14
  • Expand All:
  • Severity:
  • Sort:
Compare

Select any two versions of this STIG to compare the individual requirements

View

Select any old version/release of this STIG to view the previous requirements

This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DOD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via email to the following address: disa.stig_spt@mail.mil.
c
The Cisco switch must uniquely identify and authenticate all network-connected endpoint devices before establishing any connection.
IA-3 - High - CCI-000778 - V-220623 - SV-220623r863275_rule
RMF Control
IA-3
Severity
High
CCI
CCI-000778
Version
CISC-L2-000020
Vuln IDs
  • V-220623
  • V-101113
Rule IDs
  • SV-220623r863275_rule
  • SV-110217
Controlling LAN access via 802.1x authentication can assist in preventing a malicious user from connecting an unauthorized PC to a switch port to inject or receive data from the network without detection.
Checks: C-22338r507915_chk

Verify that the switch configuration has 802.1x authentication implemented for all access switch ports connecting to LAN outlets (i.e., RJ-45 wall plates) or devices not located in the telecom room, wiring closets, or equipment rooms. MAC Authentication Bypass (MAB) must be configured on switch ports connected to devices that do not support an 802.1x supplicant. Step 1: Verify that 802.1x is configured on all host-facing interfaces as shown in the example below: interface GigabitEthernet1/0 switchport access vlan 12 switchport mode access authentication port-control auto dot1x pae authenticator ! interface GigabitEthernet1/1 switchport access vlan 13 switchport mode access authentication port-control auto dot1x pae authenticator ! interface GigabitEthernet1/2 switchport access vlan 13 switchport mode access authentication port-control auto dot1x pae authenticator Step 2: Verify that 802.1x authentication is configured on the switch as shown in the example below: aaa new-model ! ! aaa group server radius RADIUS_SERVERS server name RADIUS_1 server name RADIUS_2 ! aaa authentication dot1x default group RADIUS_SERVERS … … … dot1x system-auth-control Step 3: Verify that the radius servers have been defined: SW1#show radius server-group RADIUS_SERVERS Note: Single-host is the default. Host-mode multi-domain (for VoIP phone plus PC) or multi-auth (multiple PCs connected to a hub) can be configured as alternatives. Host-mode multi-host is not compliant with this requirement. If 802.1x authentication or MAB is not configured on all access switch ports connecting to LAN outlets or devices not located in the telecom room, wiring closets, or equipment rooms, this is a finding.

Fix: F-22327r507916_fix

Configure 802.1 x authentications on all host-facing access switch ports. To authenticate devices that do not support 802.1x, MAC Authentication Bypass must be configured. Step 1: Configure the radius servers as shown in the example below: SW1(config)#radius server RADIUS_1 SW1(config-radius-server)#address ipv4 10.1.22.3 SW1(config-radius-server)#key xxxxxx SW1(config-radius-server)#exit SW1(config)#radius server RADIUS_2 SW1(config-radius-server)#address ipv4 10.1.14.5 SW1(config-radius-server)#key xxxxxx SW1(config-radius-server)#exit Step 2: Enable 802.1x authentication on the switch: SW1(config)#aaa new-model SW1(config)#aaa group server radius RADIUS_SERVERS SW1(config-sg-radius)#server name RADIUS_1 SW1(config-sg-radius)#server name RADIUS_2 SW1(config-sg-radius)#exit SW1(config)#aaa authentication dot1x default group RADIUS_SERVERS SW1(config)#dot1x system-auth-control Step 3: Enable 802.1x on all host-facing interfaces as shown in the example below: SW1(config)#int range g1/0 - 8 SW1(config-if-range)#switchport mode access SW1(config-if-range)#authentication host-mode single-host SW1(config-if-range)#dot1x pae authenticator SW1(config-if-range)#authentication port-control auto SW1(config-if-range)#end Note: Single-host is the default. Host-mode multi-domain (for VoIP phone plus PC) or multi-auth (multiple PCs connected to a hub) can be configured as alternatives.

b
The Cisco switch must authenticate all VLAN Trunk Protocol (VTP) messages with a hash function using the most secured cryptographic algorithm available.
IA-7 - Medium - CCI-000803 - V-220624 - SV-220624r539671_rule
RMF Control
IA-7
Severity
Medium
CCI
CCI-000803
Version
CISC-L2-000030
Vuln IDs
  • V-220624
  • V-101115
Rule IDs
  • SV-220624r539671_rule
  • SV-110219
VTP provides central management of VLAN domains, thus reducing administration in a switched network. When configuring a new VLAN on a VTP server, the VLAN is distributed through all switches in the domain. This reduces the need to configure the same VLAN everywhere. VTP pruning preserves bandwidth by preventing VLAN traffic (unknown MAC, broadcast, multicast) from being sent down trunk links when not needed (e.g., there are no access switch ports in neighboring switches belonging to such VLANs). An attack can force a digest change for the VTP domain, enabling a rogue device to become the VTP server. This could allow unauthorized access to previously blocked VLANs or allow the addition of unauthorized switches into the domain. Authenticating VTP messages with a cryptographic hash function can reduce the risk of the VTP domain being compromised.
Checks: C-22339r507918_chk

Review the switch configuration to verify that VTP is enabled using the show vtp status command as shown in the example below: Switch#show vtp status VTP Version capable : 1 to 3 VTP version running : 1 VTP Domain Name : VTP Pruning Mode : Disabled VTP Traps Generation : Disabled Device ID : 5e00.0000.8000 Feature VLAN: -------------- VTP Operating Mode : Off Maximum VLANs supported locally : 1005 Number of existing VLANs : 5 Configuration Revision : 0 MD5 digest : 0x57 0xCD 0x40 0x65 0x63 0x59 0x47 0xBD 0x56 0x9D 0x4A 0x3E 0xA5 0x69 0x35 0xBC Switch# If mode is set to anything other than off, verify that a password has been configured using the show vtp password command. Note: VTP authenticates all messages using an MD5 hash that consists of the VTP version plus the VTP Password plus VTP Domain plus VTP Configuration Revision. If VTP is enabled on the switch and is not authenticating VTP messages with a hash function using a configured password, this is a finding.

Fix: F-22328r507919_fix

Configure the switch to authenticate all VTP messages with a hash function using a configured password as shown in the example below: SW1(config)#vtp password xxxxxxxxx

b
The Cisco switch must manage excess bandwidth to limit the effects of packet-flooding types of denial-of-service (DoS) attacks.
SC-5 - Medium - CCI-001095 - V-220625 - SV-220625r539671_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-001095
Version
CISC-L2-000040
Vuln IDs
  • V-220625
  • V-101117
Rule IDs
  • SV-220625r539671_rule
  • SV-110221
Denial of service is a condition when a resource is not available for legitimate users. Packet-flooding DDoS attacks are referred to as volumetric attacks and have the objective of overloading a network or circuit to deny or seriously degrade performance, which denies access to the services that normally traverse the network or circuit. Volumetric attacks have become relatively easy to launch by using readily available tools such as Low Orbit Ion Cannon or botnets. Measures to mitigate the effects of a successful volumetric attack must be taken to ensure that sufficient capacity is available for mission-critical traffic. Managing capacity may include, for example, establishing selected network usage priorities or quotas and enforcing them using rate limiting, Quality of Service (QoS), or other resource reservation control methods. These measures may also mitigate the effects of sudden decreases in network capacity that are the result of accidental or intentional physical damage to telecommunications facilities (such as cable cuts or weather-related outages).
Checks: C-22340r507921_chk

Review the switch configuration to verify QoS has been enabled as shown below: mls qos If QoS has not been enabled, this is a finding.

Fix: F-22329r507922_fix

Enable QoS on the switch: SW1(config)#mls qos

a
The Cisco switch must have Root Guard enabled on all switch ports connecting to access layer switches.
SC-5 - Low - CCI-002385 - V-220629 - SV-220629r856223_rule
RMF Control
SC-5
Severity
Low
CCI
CCI-002385
Version
CISC-L2-000090
Vuln IDs
  • V-220629
  • V-101125
Rule IDs
  • SV-220629r856223_rule
  • SV-110229
Spanning Tree Protocol (STP) does not provide any means for the network administrator to securely enforce the topology of the switched network. Any switch can be the root bridge in a network. However, a more optimal forwarding topology places the root bridge at a specific predetermined location. With the standard STP, any bridge in the network with a lower bridge ID takes the role of the root bridge. The administrator cannot enforce the position of the root bridge but can set the root bridge priority to "0" in an effort to secure the root bridge position. The Root Guard feature provides a way to enforce the root bridge placement in the network. If the bridge receives superior STP Bridge Protocol Data Units (BPDUs) on a Root Guard-enabled port, Root Guard moves this port to a root-inconsistent STP state and no traffic can be forwarded across this port while it is in this state. To enforce the position of the root bridge, it is imperative that Root Guard is enabled on all ports where the root bridge should never appear.
Checks: C-22344r856221_chk

Review the switch topology as well as the configuration to verify that Root Guard is enabled on all switch ports connecting to access layer switches. interface GigabitEthernet0/0 spanning-tree guard root ! interface GigabitEthernet0/1 spanning-tree guard root … … … interface GigabitEthernet0/9 spanning-tree guard root If the switch has not enabled Root Guard on all switch ports connecting to access layer switches, this is a finding.

Fix: F-22333r856222_fix

Configure the switch to have Root Guard enabled on all ports connecting to access layer switches. SW1(config)#int range g0/0 - 9 SW1(config-if-range)#spanning-tree guard root

b
The Cisco switch must have Bridge Protocol Data Unit (BPDU) Guard enabled on all user-facing or untrusted access switch ports.
SC-5 - Medium - CCI-002385 - V-220630 - SV-220630r856224_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000100
Vuln IDs
  • V-220630
  • V-101127
Rule IDs
  • SV-220630r856224_rule
  • SV-110231
If a rogue switch is introduced into the topology and transmits a BPDU with a lower bridge priority than the existing root bridge, it will become the new root bridge and cause a topology change, rendering the network in a suboptimal state. The STP PortFast BPDU Guard enhancement allows network designers to enforce the STP domain borders and keep the active topology predictable. The devices behind the ports that have STP PortFast enabled are not able to influence the STP topology. At the reception of BPDUs, the BPDU Guard operation disables the port that has PortFast configured. The BPDU Guard transitions the port into "errdisable" state and sends a log message.
Checks: C-22345r507936_chk

Review the switch configuration to verify that BPDU Guard is enabled on all user-facing or untrusted access switch ports as shown in the configuration example below: interface GigabitEthernet0/0 spanning-tree bpduguard enable ! interface GigabitEthernet0/1 spanning-tree bpduguard enable … … … interface GigabitEthernet0/9 spanning-tree bpduguard enable If the switch has not enabled BPDU Guard, this is a finding.

Fix: F-22334r507937_fix

Enable BPDU Guard on all user-facing or untrusted access switch ports as shown in the configuration example below: SW1(config)#int range g0/0 - 9 SW1(config-if-range)#spanning-tree bpduguard enable Note: BPDU Guard can also be enabled globally on all Port Fast-enabled ports by using the spanning-tree portfast bpduguard default command.

b
The Cisco switch must have Spanning Tree Protocol (STP) Loop Guard enabled.
SC-5 - Medium - CCI-002385 - V-220631 - SV-220631r856225_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000110
Vuln IDs
  • V-220631
  • V-101129
Rule IDs
  • SV-220631r856225_rule
  • SV-110233
The STP loop guard feature provides additional protection against STP loops. An STP loop is created when an STP blocking port in a redundant topology erroneously transitions to the forwarding state. In its operation, STP relies on continuous reception and transmission of BPDUs based on the port role. The designated port transmits BPDUs, and the non-designated port receives BPDUs. When one of the ports in a physically redundant topology no longer receives BPDUs, the STP conceives that the topology is loop free. Eventually, the blocking port from the alternate or backup port becomes a designated port and moves to a forwarding state. This situation creates a loop. The Loop Guard feature makes additional checks. If BPDUs are not received on a non-designated port and loop guard is enabled, that port is moved into the STP loop-inconsistent blocking state.
Checks: C-22346r507939_chk

Review the switch configuration to verify that STP Loop Guard is enabled as shown in the configuration example below: hostname SW2 … … … spanning-tree mode pvst spanning-tree loopguard default If STP Loop Guard is not enabled, this is a finding.

Fix: F-22335r507940_fix

Configure the switch to have STP Loop Guard enabled via the spanning-tree loopguard default global command.

b
The Cisco switch must have Unknown Unicast Flood Blocking (UUFB) enabled.
SC-5 - Medium - CCI-002385 - V-220632 - SV-220632r856226_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000120
Vuln IDs
  • V-220632
  • V-101131
Rule IDs
  • SV-220632r856226_rule
  • SV-110235
Access layer switches use the Content Addressable Memory (CAM) table to direct traffic to specific ports based on the VLAN number and the destination MAC address of the frame. When a router has an Address Resolution Protocol (ARP) entry for a destination host and forwards it to the access layer switch and there is no entry corresponding to the frame's destination MAC address in the incoming VLAN, the frame will be sent to all forwarding ports within the respective VLAN, which causes flooding. Large amounts of flooded traffic can saturate low-bandwidth links, causing network performance issues or complete connectivity outage to the connected devices. Unknown unicast flooding has been a nagging problem in networks that have asymmetric routing and default timers. To mitigate the risk of a connectivity outage, the UUFB feature must be implemented on all access layer switches. The UUFB feature will block unknown unicast traffic flooding and only permit egress traffic with MAC addresses that are known to exit on the port.
Checks: C-22347r507942_chk

Review the switch configuration to verify that UUFB is enabled on all access switch ports as shown in the configuration example below: interface GigabitEthernet0/0 switchport block unicast ! interface GigabitEthernet0/1 switchport block unicast … … … interface GigabitEthernet0/9 switchport block unicast If any access switch ports do not have UUFB enabled, this is a finding.

Fix: F-22336r507943_fix

Configure the switch to have UUFB enabled as shown in the configuration example below: SW1(config)#int range g0/0 - 9 SW1(config-if-range)#switchport block unicast

b
The Cisco switch must have DHCP snooping for all user VLANs to validate DHCP messages from untrusted sources.
SC-5 - Medium - CCI-002385 - V-220633 - SV-220633r929007_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000130
Vuln IDs
  • V-220633
  • V-101133
Rule IDs
  • SV-220633r929007_rule
  • SV-110237
In an enterprise network, devices under administrative control are trusted sources. These devices include the switches, routers, and servers in the network. Host ports and unknown DHCP servers are considered untrusted sources. An unknown DHCP server on the network on an untrusted port is called a spurious DHCP server, any device (PC, wireless access point) that is loaded with DHCP server enabled. The DHCP snooping feature determines whether traffic sources are trusted or untrusted. The potential exists for a spurious DHCP server to respond to DHCPDISCOVER messages before the real server has time to respond. DHCP snooping allows switches on the network to trust the port a DHCP server is connected to and not trust the other ports. The DHCP snooping feature validates DHCP messages received from untrusted sources, filters out invalid messages, and rate-limits DHCP traffic from trusted and untrusted sources. The DHCP snooping feature builds and maintains a binding database, which contains information about untrusted hosts with leased IP addresses, and it uses the database to validate subsequent requests from untrusted hosts. Other security features, such as IP Source Guard and Dynamic Address Resolution Protocol (ARP) Inspection (DAI), also use information stored in the DHCP snooping binding database. Hence, it is imperative that the DHCP snooping feature is enabled on all VLANs.
Checks: C-22348r929006_chk

Review the switch configuration and verify that DHCP snooping is enabled on all user VLANs as shown in the example below: hostname SW2 … … … ip dhcp snooping vlan 2,4-8,11 ip dhcp snooping Note: Switchports assigned to a user VLAN would have drops in the area where the user community would reside; hence, the "untrusted" term is used. Server and printer VLANs would not be applicable. If the switch does not have DHCP snooping enabled for all user VLANs to validate DHCP messages from untrusted sources, this is a finding.

Fix: F-22337r507946_fix

Configure the switch to have DHCP snooping for all user VLANs to validate DHCP messages from untrusted sources as shown in the example below: SW2(config)#ip dhcp snooping SW2(config)#ip dhcp snooping vlan 2,4-8,11

b
The Cisco switch must have IP Source Guard enabled on all user-facing or untrusted access switch ports.
SC-5 - Medium - CCI-002385 - V-220634 - SV-220634r929009_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000140
Vuln IDs
  • V-220634
  • V-101135
Rule IDs
  • SV-220634r929009_rule
  • SV-110239
IP Source Guard provides source IP address filtering on a Layer 2 port to prevent a malicious host from impersonating a legitimate host by assuming the legitimate host's IP address. The feature uses dynamic DHCP snooping and static IP source binding to match IP addresses to hosts on untrusted Layer 2 access ports. Initially, all IP traffic on the protected port is blocked except for DHCP packets. After a client receives an IP address from the DHCP server, or after static IP source binding is configured by the administrator, all traffic with that IP source address is permitted from that client. Traffic from other hosts is denied. This filtering limits a host's ability to attack the network by claiming a neighbor host's IP address.
Checks: C-22349r929008_chk

Review the switch configuration to verify IP Source Guard is enabled on all user-facing or untrusted access switch ports as shown in the example below: interface GigabitEthernet0/0 ip verify source ! interface GigabitEthernet0/1 ip verify source … … … interface GigabitEthernet0/9 ip verify source Note: The IP Source Guard feature depends on the entries in the DHCP snooping database or static IP-MAC-VLAN configuration commands to verify IP-to-MAC address bindings. If the switch does not have IP Source Guard enabled on all untrusted access switch ports, this is a finding.

Fix: F-22338r507949_fix

Configure the switch to have IP Source Guard enabled on all user-facing or untrusted access switch ports: SW2(config)#int range g0/0 - 9 SW2(config-if-range)#ip verify source

b
The Cisco switch must have Dynamic Address Resolution Protocol (ARP) Inspection (DAI) enabled on all user VLANs.
SC-5 - Medium - CCI-002385 - V-220635 - SV-220635r929011_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
CISC-L2-000150
Vuln IDs
  • V-220635
  • V-101137
Rule IDs
  • SV-220635r929011_rule
  • SV-110241
DAI intercepts ARP requests and verifies that each of these packets has a valid IP-to-MAC address binding before updating the local ARP cache and before forwarding the packet to the appropriate destination. Invalid ARP packets are dropped and logged. DAI determines the validity of an ARP packet based on valid IP-to-MAC address bindings stored in the DHCP snooping binding database. If the ARP packet is received on a trusted interface, the switch forwards the packet without any checks. On untrusted interfaces, the switch forwards the packet only if it is valid.
Checks: C-22350r929010_chk

Review the switch configuration to verify that the DAI feature is enabled on all user VLANs: hostname SW2 … … … ip arp inspection vlan 2,4-8,11 Note: DAI depends on the entries in the DHCP snooping binding database to verify IP-to-MAC address bindings in incoming ARP requests and ARP responses. If DAI is not enabled on all user VLANs, this is a finding.

Fix: F-22339r507952_fix

Configure the switch to have DAI enabled on all user VLANs as shown in the example below: SW2(config)#ip arp inspection vlan 2,4-8,11

a
The Cisco switch must have Storm Control configured on all host-facing switchports.
CM-6 - Low - CCI-000366 - V-220636 - SV-220636r648763_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
CISC-L2-000160
Vuln IDs
  • V-220636
  • V-101139
Rule IDs
  • SV-220636r648763_rule
  • SV-110243
A traffic storm occurs when packets flood a LAN, creating excessive traffic and degrading network performance. Traffic storm control prevents network disruption by suppressing ingress traffic when the number of packets reaches a configured threshold levels. Traffic storm control monitors ingress traffic levels on a port and drops traffic when the number of packets reaches the configured threshold level during any one-second interval.
Checks: C-22351r648761_chk

Review the switch configuration to verify that storm control is enabled on all host-facing interfaces as shown in the example below: interface GigabitEthernet0/3 switchport access vlan 12 storm-control unicast level bps 62000000 storm-control broadcast level bps 20000000 Note: Bandwidth percentage thresholds (via level parameter) can be used in lieu of PPS rate. If storm control is not enabled at a minimum for broadcast traffic, this is a finding.

Fix: F-22340r648762_fix

Configure storm control for each host-facing interface as shown in the example below: SW1(config)#int range g0/2 - 8 SW1(config-if-range)#storm-control unicast bps 62000000 SW1(config-if-range)#storm-control broadcast level bps 20000000 Note: The acceptable range is 10000000 -1000000000 for a gigabit Ethernet interface, and 100000000-10000000000 for a 10-gigabit interface. Storm control is not supported on most FastEthernet interfaces.

a
The Cisco switch must have IGMP or MLD Snooping configured on all VLANs.
CM-6 - Low - CCI-000366 - V-220637 - SV-220637r539671_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
CISC-L2-000170
Vuln IDs
  • V-220637
  • V-101141
Rule IDs
  • SV-220637r539671_rule
  • SV-110245
IGMP and MLD snooping provide a way to constrain multicast traffic at Layer 2. By monitoring the IGMP or MLD membership reports sent by hosts within a VLAN, the snooping application can set up Layer 2 multicast forwarding tables to deliver specific multicast traffic only to interfaces connected to hosts interested in receiving the traffic, thereby significantly reducing the volume of multicast traffic that would otherwise flood the VLAN.
Checks: C-22352r507957_chk

Review the switch configuration to verify that IGMP or MLD snooping has been configured for IPv4 and IPv6 multicast traffic respectively. The example below shows the steps to verify that IGMP snooping is enabled for each VLAN. Step 1: Verify that IGMP or MLD snooping is enabled globally. By default, IGMP snooping is enabled globally; hence, the following command should not be in the switch configuration: no ip igmp snooping Step 2: Verify that IGMP snooping is not disabled for any VLAN as shown in the example below: no ip igmp snooping vlan 11 Note: When IGMP snooping is globally enabled, it is also enabled by default on all VLANs but can be disabled on a per-VLAN basis. If global snooping is disabled, VLAN snooping cannot be enabled. If the switch is not configured to implement IGMP or MLD snooping for each VLAN, this is a finding.

Fix: F-22341r507958_fix

Globally configure IGMP or MLD snooping for IPv4 and IPv6 multicast traffic respectively: SW1(config)#ip igmp snooping

b
The Cisco switch must implement Rapid Spanning Tree Protocol (STP) where VLANs span multiple switches with redundant links.
CM-6 - Medium - CCI-000366 - V-220638 - SV-220638r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000180
Vuln IDs
  • V-220638
  • V-101143
Rule IDs
  • SV-220638r539671_rule
  • SV-110247
STP is implemented on bridges and switches to prevent Layer 2 loops when a broadcast domain spans multiple bridges and switches and when redundant links are provisioned to provide high availability in case of link failures. Convergence time can be significantly reduced using Rapid STP (802.1w) instead of STP (802.1d), resulting in improved availability. Rapid STP should be deployed by implementing either Rapid Per-VLAN-Spanning-Tree (Rapid-PVST) or Multiple Spanning-Tree Protocol (MSTP). The latter scales much better when there are many VLANs.
Checks: C-22353r507960_chk

In cases where VLANs do not span multiple switches, it is a best practice to not implement STP. Avoiding the use of STP will provide the most deterministic and highly available network topology. If STP is required, review the switch configuration to verify that Rapid STP has been implemented: hostname SW2 … … … spanning-tree mode rapid-pvst Note: MSTP can be configured as an alternate mode. MSTP uses RSTP for rapid convergence and enables multiple VLANs to be grouped into and mapped to the same spanning-tree instance, thereby reducing the number of spanning-tree instances needed to support a large number of VLANs. If either RSTP or MSTP has not been implemented where STP is required, this is a finding.

Fix: F-22342r507961_fix

Configure Rapid STP or MSTP to be implemented at the access and distribution layers where VLANs span multiple switches as shown in the examples below: SW2(config)#spanning-tree mode rapid-pvst or SW1(config)#spanning-tree mode mst

b
The Cisco switch must enable Unidirectional Link Detection (UDLD) to protect against one-way connections.
CM-6 - Medium - CCI-000366 - V-220639 - SV-220639r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000190
Vuln IDs
  • V-220639
  • V-101145
Rule IDs
  • SV-220639r539671_rule
  • SV-110249
In topologies where fiber optic interconnections are used, physical misconnections can occur that allow a link to appear to be up when there is a mismatched set of transmit/receive pairs. When such a physical misconfiguration occurs, protocols such as STP can cause network instability. UDLD is a Layer 2 protocol that can detect these physical misconfigurations by verifying that traffic is flowing bidirectionally between neighbors. Ports with UDLD enabled periodically transmit packets to neighbor devices. If the packets are not echoed back within a specific time frame, the link is flagged as unidirectional and the interface is shut down.
Checks: C-22354r507963_chk

If any of the switch ports have fiber optic interconnections with neighbors, review the switch configuration to verify that UDLD is enabled globally or on a per-interface basis as shown in the examples below: hostname SW2 … … … udld enable or interface GigabitEthernet0/1 udld port Note: An alternative implementation when UDLD is not supported by connected device is to deploy a single member Link Aggregation Group (LAG) via IEEE 802.3ad Link Aggregation Control Protocol (LACP). If the switch has fiber optic interconnections with neighbors and UDLD is not enabled, this is a finding.

Fix: F-22343r507964_fix

Configure the switch to enable UDLD to protect against one-way connections: SW2(config)#udld enable or SW2(config)#int g0/1 SW2(config-if)#udld port

b
The Cisco switch must have all trunk links enabled statically.
CM-6 - Medium - CCI-000366 - V-220640 - SV-220640r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000200
Vuln IDs
  • V-220640
  • V-101147
Rule IDs
  • SV-220640r539671_rule
  • SV-110251
When trunk negotiation is enabled via Dynamic Trunk Protocol (DTP), considerable time can be spent negotiating trunk settings (802.1q or ISL) when a node or interface is restored. While this negotiation is happening, traffic is dropped because the link is up from a Layer 2 perspective. Packet loss can be eliminated by setting the interface statically to trunk mode, thereby avoiding dynamic trunk protocol negotiation and significantly reducing any outage when restoring a failed link or switch.
Checks: C-22355r507966_chk

By default, DTP is enabled on all Cisco switches. Review the switch configuration to verify that trunk links will not form a trunk via negotiation as shown in the example below: SW2#show interfaces switchport Name: Gi0/0 Switchport: Enabled Administrative Mode: dynamic auto Operational Mode: static access Administrative Trunking Encapsulation: negotiate Operational Trunking Encapsulation: native Negotiation of Trunking: On If trunk negotiation is enabled on any interface, this is a finding.

Fix: F-22344r507967_fix

Configure the switch to enable trunk links statically as shown in the configuration below: SW2(config-if)#switchport trunk encapsulation dot1q SW2(config-if)#switchport mode trunk SW2(config-if)#switchport nonegotiate

b
The Cisco switch must have all disabled switch ports assigned to an unused VLAN.
CM-6 - Medium - CCI-000366 - V-220641 - SV-220641r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000210
Vuln IDs
  • V-220641
  • V-101149
Rule IDs
  • SV-220641r539671_rule
  • SV-110253
A disabled port that is assigned to a user or management VLAN may become enabled by accident or by an attacker and as a result may gain access to that VLAN as a member.
Checks: C-22356r507969_chk

Step 1: Review the switch configurations and examine all access switch ports. Each access switch port not in use should have membership to an inactive VLAN. interface GigabitEthernet0/0 switchport access vlan 999 shutdown ! interface GigabitEthernet0/1 switchport access vlan 999 shutdown … … … interface GigabitEthernet0/9 switchport access vlan 999 shutdown Step 2: Verify that traffic from the inactive VLAN is not allowed on any trunk links as shown in the example below: interface GigabitEthernet1/1 switchport trunk allowed vlan 1-998,1000-4094 switchport trunk encapsulation dot1q switchport mode trunk Note: Switch ports configured for 802.1x are exempt from this requirement. If any access switch ports are not in use and not in an inactive VLAN, this is a finding.

Fix: F-22345r507970_fix

Assign all switch ports not in use to an inactive VLAN. Step 1: Assign the disabled interfaces to an inactive VLAN: SW3(config)#int range g0/0 – 9 SW3(config-if-range)# switchport access vlan 999 Step 2: Configure trunk links to not allow traffic from the inactive VLAN: SW3(config)#int g1/1 SW3(config-if)#switchport trunk allowed vlan except 999

b
The Cisco switch must not have the default VLAN assigned to any host-facing switch ports.
CM-6 - Medium - CCI-000366 - V-220642 - SV-220642r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000220
Vuln IDs
  • V-220642
  • V-101151
Rule IDs
  • SV-220642r539671_rule
  • SV-110255
In a VLAN-based network, switches use the default VLAN (i.e., VLAN 1) for in-band management and to communicate with other networking devices using Spanning-Tree Protocol (STP), Dynamic Trunking Protocol (DTP), VLAN Trunking Protocol (VTP), and Port Aggregation Protocol (PAgP) - all untagged traffic. As a consequence, the default VLAN may unwisely span the entire network if not appropriately pruned. If its scope is large enough, the risk of compromise can increase significantly.
Checks: C-22357r507972_chk

Review the switch configurations and verify that no access switch ports have been assigned membership to the default VLAN (i.e., VLAN 1). VLAN assignments can be verified via the show vlan command: SW1#show vlan VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active 10 User VLAN active Gi0/3, Gi1/0, Gi1/1, Gi1/2 Gi1/3, Gi2/1 20 Management VLAN active Gi0/2 999 VLAN0999 active Gi2/0 If access switch ports are assigned to the default VLAN, this is a finding.

Fix: F-22346r507973_fix

Remove the assignment of the default VLAN from all access switch ports.

b
The Cisco switch must have the default VLAN pruned from all trunk ports that do not require it.
CM-6 - Medium - CCI-000366 - V-220643 - SV-220643r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000230
Vuln IDs
  • V-220643
  • V-101153
Rule IDs
  • SV-220643r539671_rule
  • SV-110257
The default VLAN (i.e., VLAN 1) is a special VLAN used for control plane traffic such as Spanning-Tree Protocol (STP), Dynamic Trunking Protocol (DTP), VLAN Trunking Protocol (VTP), and Port Aggregation Protocol (PAgP). VLAN 1 is enabled on all trunks and ports by default. With larger campus networks, care must be taken about the diameter of the STP domain for the default VLAN. Instability in one part of the network could affect the default VLAN, influencing control-plane stability and therefore STP stability for all other VLANs.
Checks: C-22358r507975_chk

Review the switch configuration and verify that the default VLAN is pruned from trunk links that do not require it: SW1#show interfaces trunk Port Mode Encapsulation Status Native vlan Gi0/1 on 802.1q trunking 1 Gi0/2 on 802.1q trunking 1 Port Vlans allowed on trunk Gi0/1 1-998,1000-4094 Gi0/2 1-4094 If the default VLAN is not pruned from trunk links that should not be transporting frames for the VLAN, this is a finding.

Fix: F-22347r507976_fix

Prune VLAN 1 from any trunk links as necessary: SW1(config)#int g0/2 SW1(config-if)#switchport trunk allowed vlan except 1 Verify that VLAN 1 is not allowed on the trunk link: SW1#show interfaces trunk Port Mode Encapsulation Status Native vlan Gi0/1 on 802.1q trunking 1 Gi0/2 on 802.1q trunking 1 Port Vlans allowed on trunk Gi0/1 1-998,1000-4094 Gi0/2 2-4094

b
The Cisco switch must not use the default VLAN for management traffic.
CM-6 - Medium - CCI-000366 - V-220644 - SV-220644r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000240
Vuln IDs
  • V-220644
  • V-101155
Rule IDs
  • SV-220644r539671_rule
  • SV-110259
Switches use the default VLAN (i.e., VLAN 1) for in-band management and to communicate with directly connected switches using Spanning-Tree Protocol (STP), Dynamic Trunking Protocol (DTP), VLAN Trunking Protocol (VTP), and Port Aggregation Protocol (PAgP) - all untagged traffic. As a consequence, the default VLAN may unwisely span the entire network if not appropriately pruned. If its scope is large enough, the risk of compromise can increase significantly.
Checks: C-22359r507978_chk

Review the switch configuration and verify that the default VLAN is not used to access the switch for management: interface Vlan22 description Management VLAN ip address 10.1.22.3 255.255.255.0 If the default VLAN is being used for management access to the switch, this is a finding.

Fix: F-22348r507979_fix

Configure the switch for management access to use a VLAN other than the default VLAN: SW1(config)#int vlan 22 SW1(config-if)#ip add 10.1.22.3 255.255.255.0 SW1(config-if)#no shut

b
The Cisco switch must have all user-facing or untrusted ports configured as access switch ports.
CM-6 - Medium - CCI-000366 - V-220645 - SV-220645r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000250
Vuln IDs
  • V-220645
  • V-101157
Rule IDs
  • SV-220645r539671_rule
  • SV-110261
Double encapsulation can be initiated by an attacker who has access to a switch port belonging to the native VLAN of the trunk port. Knowing the victim's MAC address and with the victim attached to a different switch belonging to the same trunk group, thereby requiring the trunk link and frame tagging, the malicious user can begin the attack by sending frames with two sets of tags. The outer tag that will have the attacker's VLAN ID (probably the well-known and omnipresent default VLAN) is stripped off by the switch, and the inner tag that will have the victim's VLAN ID is used by the switch as the next hop and sent out the trunk port.
Checks: C-22360r507981_chk

Review the switch configurations and examine all user-facing or untrusted switchports. The example below depicts both access and trunk ports: interface GigabitEthernet0/1 switchport trunk encapsulation dot1q switchport mode trunk negotiation auto ! interface GigabitEthernet0/2 switchport access vlan 11 negotiation auto ! interface GigabitEthernet0/3 switchport access vlan 12 negotiation auto If any of the user-facing switch ports are configured as a trunk, this is a finding.

Fix: F-22349r507982_fix

Disable trunking on all user-facing or untrusted switch ports: SW1(config)#int g0/6 SW1(config-if)#switchport mode access SW1(config-if)#end

b
The Cisco switch must have the native VLAN assigned to an ID other than the default VLAN for all 802.1q trunk links.
CM-6 - Medium - CCI-000366 - V-220646 - SV-220646r539671_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
CISC-L2-000260
Vuln IDs
  • V-220646
  • V-101159
Rule IDs
  • SV-220646r539671_rule
  • SV-110263
VLAN hopping can be initiated by an attacker who has access to a switch port belonging to the same VLAN as the native VLAN of the trunk link connecting to another switch that the victim is connected to. If the attacker knows the victim’s MAC address, it can forge a frame with two 802.1q tags and a Layer 2 header with the destination address of the victim. Because the frame will ingress the switch from a port belonging to its native VLAN, the trunk port connecting to the victim’s switch will remove the outer tag because native VLAN traffic is to be untagged. The switch will forward the frame on to the trunk link, unaware of the inner tag with a VLAN ID of which the victim’s switch port is a member.
Checks: C-22361r507984_chk

Review the switch configurations and examine all trunk links. Verify the native VLAN has been configured to a VLAN ID other than the ID of the default VLAN (i.e., VLAN 1) as shown in the example below: interface GigabitEthernet0/1 switchport trunk encapsulation dot1q switchport trunk native vlan 44 switchport mode trunk negotiation auto Note: An alternative to configuring a dedicated native VLAN is to ensure that all native VLAN traffic is tagged. This will mitigate the risk of VLAN hopping because there will always be an outer tag for native traffic as it traverses an 802.1q trunk link. If the native VLAN has the same VLAN ID as the default VLAN, this is a finding.

Fix: F-22350r507985_fix

To ensure the integrity of the trunk link and prevent unauthorized access, the ID of the native VLAN of the trunk port must be changed from the default VLAN (i.e., VLAN 1) to its own unique VLAN ID. SW1(config)#int g0/1 SW1(config-if)#switchport trunk native vlan 44 Note: The native VLAN ID must be the same on both ends of the trunk link; otherwise, traffic could accidentally leak between broadcast domains.

a
The Cisco switch must not have any switchports assigned to the native VLAN.
CM-6 - Low - CCI-000366 - V-220647 - SV-220647r539671_rule
RMF Control
CM-6
Severity
Low
CCI
CCI-000366
Version
CISC-L2-000270
Vuln IDs
  • V-220647
  • V-101161
Rule IDs
  • SV-220647r539671_rule
  • SV-110265
Double encapsulation can be initiated by an attacker who has access to a switch port belonging to the native VLAN of the trunk port. Knowing the victim’s MAC address and with the victim attached to a different switch belonging to the same trunk group, thereby requiring the trunk link and frame tagging, the malicious user can begin the attack by sending frames with two sets of tags. The outer tag that will have the attacker’s VLAN ID (probably the well-known and omnipresent default VLAN) is stripped off by the switch, and the inner tag that will have the victim’s VLAN ID is used by the switch as the next hop and sent out the trunk port.
Checks: C-22362r507987_chk

Review the switch configurations and examine all access switch ports. Verify that they do not belong to the native VLAN as shown in the example below: interface GigabitEthernet0/1 switchport trunk encapsulation dot1q switchport trunk native vlan 44 switchport mode trunk negotiation auto ! interface GigabitEthernet0/2 switchport access vlan 11 negotiation auto ! interface GigabitEthernet0/3 switchport access vlan 12 negotiation auto ! If any access switch ports have been assigned to the same VLAN ID as the native VLAN, this is a finding.

Fix: F-22351r507988_fix

Configure all access switch ports to a VLAN other than the native VLAN.