CVE-2017-6738: Cisco IOS and IOS XE Software SNMP Remote Code Execution Vulnerability
The Simple Network Management Protocol (SNMP) subsystem of Cisco IOS 12.0 through 12.4 and 15.0 through 15.6 and IOS XE 2.2 through 3.17 contains multiple vulnerabilities that could allow an authenticated, remote attacker to remotely execute code on an affected system or cause an affected system to reload. An attacker could exploit these vulnerabilities by sending a crafted SNMP packet to an affected system via IPv4 or IPv6. Only traffic directed to an affected system can be used to exploit these vulnerabilities. The vulnerabilities are due to a buffer overflow condition in the SNMP subsystem of the affected software. The vulnerabilities affect all versions of SNMP: Versions 1, 2c, and 3. To exploit these vulnerabilities via SNMP Version 2c or earlier, the attacker must know the SNMP read-only community string for the affected system. To exploit these vulnerabilities via SNMP Version 3, the attacker must have user credentials for the affected system. All devices that have enabled SNMP and have not explicitly excluded the affected MIBs or OIDs should be considered vulnerable. Cisco Bug IDs: CSCve89865, CSCsy56638.
Other sources
The Simple Network Management Protocol (SNMP) subsystem of Cisco IOS and IOS XE contains a vulnerability that could allow an authenticated, remote attacker to remotely execute code.
— CISA
The Simple Network Management Protocol (SNMP) subsystem of Cisco IOS and IOS XE Software contains multiple vulnerabilities that could allow an authenticated, remote attacker to remotely execute code on an affected system or cause an affected system to reload. An attacker could exploit these vulnerabilities by sending a crafted SNMP packet to an affected system via IPv4 or IPv6. Only traffic directed to an affected system can be used to exploit these vulnerabilities. The vulnerabilities are due to a buffer overflow condition in the SNMP subsystem of the affected software. The vulnerabilities affect all versions of SNMP - Versions 1, 2c, and 3. To exploit these vulnerabilities via SNMP Version 2c or earlier, the attacker must know the SNMP read-only community string for the affected system. To exploit these vulnerabilities via SNMP Version 3, the attacker must have user credentials for the affected system. A successful exploit could allow the attacker to execute arbitrary code and obtain full control of the affected system or cause the affected system to reload. Customers are advised to apply the workaround as contained in the Workarounds section below. Fixed software information is available via the Cisco IOS Software Checker. All devices that have enabled SNMP and have not explicitly excluded the affected MIBs or OIDs should be considered vulnerable. There are workarounds that address these vulnerabilities.
— NVD
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Disable SNMP on devices where SNMP is not required (for example, remove or disable SNMP configuration/agents on the device). Devices with SNMP enabled are considered vulnerable.
Cisco IOS SNMP subsystem SNMP enabled = false - Configuration
If SNMP must remain enabled, explicitly exclude the affected MIBs or OIDs from SNMP access (configure SNMP to deny access to the affected MIBs/OIDs).
Cisco IOS SNMP subsystem MIB/OID exclusion = exclude affected MIBs/OIDs - Compensating control
Restrict SNMP access to trusted hosts/networks only using ACLs or firewall rules; block SNMP traffic from untrusted networks (IPv4 and IPv6) to affected devices (e.g., deny UDP 161/162 from untrusted sources). Only allow management traffic from trusted IPs.
- Operational
Change/rotate SNMP credentials: replace SNMPv2c read-only community strings and SNMPv3 user credentials/passwords/keys with new values to reduce the risk from compromised or known credentials.
Event History
Frequently Asked Questions
What is the severity of CVE-2017-6738?
CVE-2017-6738 has a critical severity rating due to the potential for remote code execution.
How do I fix CVE-2017-6738?
To fix CVE-2017-6738, upgrade to a non-vulnerable version of Cisco IOS or IOS XE as specified in Cisco's security advisory.
What versions of Cisco IOS are affected by CVE-2017-6738?
CVE-2017-6738 affects Cisco IOS versions 12.0 through 12.4 and 15.0 through 15.6, as well as IOS XE versions 2.2 through 3.17.
Can CVE-2017-6738 be exploited remotely?
Yes, CVE-2017-6738 can be exploited by authenticated remote attackers to execute code on affected Cisco devices.
Is there a workaround for CVE-2017-6738?
Disabling SNMP or restricting access to SNMP interfaces can serve as a temporary workaround for CVE-2017-6738 until an upgrade can be applied.