Security Advisory 0071 .CSAF
Date: January 11th, 2022
Revision | Date | Changes |
1.0 | January 11th, 2022 | Initial release |
Security Advisory 0071
The CVE-ID tracking this issue: CVE-2021-28500
CVSSv3.1 Base Score: 9.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H)
The CVE-ID tracking this issue: CVE-2021-28501
CVSSv3.1 Base Score: 9.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H)
The CVE-ID tracking this issue: CVE-2021-28506
CVSSv3.1 Base Score: 9.1 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H)
The CVE-ID tracking this issue: CVE-2021-28507
CVSSv3.1 Base Score: 5.5 (CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:H/A:N)
Description
This advisory documents the impact of several vulnerabilities related to OpenConfig transport protocols in Arista’s EOS software. Affected software releases are listed below.
CVE-2021-28500, CVE-2021-28501 - An issue has recently been discovered where the incorrect use of EOS's AAA API’s by the OpenConfig and TerminAttr agents could result in unrestricted access to the device for local users with nopassword configuration.
CVE-2021-28506 - Certain gNOI APIs incorrectly skip authorization and authentication which could potentially allow a factory reset of the device.
CVE-2021-28507 - Under certain conditions, the service ACL configured for OpenConfig gNOI and OpenConfig RESTCONF might be bypassed, which results in the denied requests being forwarded to the agent.
Acknowledgements
Arista would like to acknowledge and thank Miles Sutcliffe @ https://sutcliffe.it/ for responsibly reporting CVE-2021-28500
CVE-2021-28501, CVE-2021-28506 and CVE-2021-28507 were found internally at Arista on Arista devices.
None of the vulnerabilities are known to be actively used maliciously in the field.
Vulnerability Assessment
Affected Software
CVE-2021-28500
- 4.26.1F and below releases in the 4.26.x train
- 4.25.4M and below releases in the 4.25.x train
- 4.24.6M and below releases in the 4.24.x train
- 4.23.8M and below releases in the 4.23.x train
- 4.22.11M and below in 4.22.x train
- 4.21.14M and below in 4.21.x train
- All prior releases
CVE-2021-28501
- TerminAttr v1.16.1 and all prior releases
CVE-2021-28506
- 4.26.2F and below releases in the 4.26.x train
- 4.25.5.1M and below releases in the 4.25.5.x train
- 4.25.4M and below in the 4.25.4.x train
- All prior releases in 4.25.x train
- 4.24.7M and below to 4.24.2F in the 4.24.x train
CVE-2021-28507
- 4.26.2F and below releases in the 4.26.x train
- 4.25.5.1M and below releases in the 4.25.5.x train
- 4.25.4M and below in the 4.25.4.x train
- All prior releases in 4.25.x train
- 4.24.7M and below releases in the 4.24.x train
- 4.23.9M and below releases in the 4.23.x train
- All releases in 4.22.x train
- All releases in 4.21.x train
- All prior releases
Affected Platforms
This is a platform-independent vulnerability and affects all systems running EOS with the versions identified above.
The following product versions and platforms are not affected by this vulnerability:
- Arista Wireless Access Points
- CloudVision WiFi, virtual appliance or physical appliance
- CloudVision WiFi cloud service delivery
- CloudVision Portal, virtual appliance or physical appliance
- CloudVision as-a-Service
- Arista 7130 Systems running MOS
- Arista Converged Cloud Fabric and DANZ Monitoring Fabric (Formerly Big Switch Nodes for BCF and BMF)
- Awake Security Platform
Required Configuration for Exploitation
Configuration vulnerable to CVE-2021-28500
OpenConfig gNMI/gNOI is enabled, or
management api gnmi transport grpc default
OpenConfig RESTCONF is enabled
management api restconf transport https default
and no password remote login authentication is disabled
no aaa authentication policy local allow-nopassword-remote-login
and a local user exists whose authentication is with nopassword.
username admin privilege 1 role network-admin nopassword
Configuration vulnerable to CVE-2021-28501
TerminAttr gNMI is enabled
daemon TerminAttr exec /usr/bin/TerminAttr ... no shutdown
and no password remote login authentication is disabled
no aaa authentication policy local allow-nopassword-remote-login
and a local user exists whose authentication is with nopassword.
username admin privilege 1 role network-admin nopassword
Configuration vulnerable to CVE-2021-28506
OpenConfig gNMI/gNOI
management api gnmi transport grpc default
Configuration vulnerable to CVE-2021-28507
A service ACL is configured and
ip access-list standard oc-acl 10 permit host 10.1.1.1 20 permit host 172.16.1.1/24 30 deny any
gNMI/gNOI is configured with service ACL, or
management api gnmi transport grpc default ip access-group oc-acl
RESTCONF configured with service ACL.
management api restconf transport https default ip access-group oc-acl
Notes
Mutual TLS
If a mutual TLS certificate is configured for gNMI or TerminAttr, the server may not be affected by authentication vulnerabilities CVE-2021-28500, CVE-2021-28501 and CVE-2021-28506. This does not apply to RESTCONF.
OpenConfig gNMI is configured with SSL profile
management api gnmi transport grpc default ssl profile mtls-grpc-profile management security ssl profile mtls-grpc-profile certificate target.crt key target.key trust certificate ca.crt
TerminAttr is configured with SSL profile
daemon TerminAttr exec /usr/bin/TerminAttr -certfile /persist/secure/ssl/certs/target.crt -keyfile /persist/secure/ssl/keys/target.key -clientcafile /persist/secure/ssl/certs/ca.crt no shutdown
Symptoms
The following system logs at /var/log/messages may indicate vulnerability to CVE-2021-28500. When a gNMI Set is issued, the host should be recognized.
Nov 24 02:31:20 cd217 ConfigAgent: %SYS-5-CONFIG_SESSION_ENTERED: User admin entered configuration session session1068691224937 on GNMI (10.24.128.7:46054)
Nov 24 02:31:22 cd217 ConfigAgent: %SYS-5-CONFIG_SESSION_COMMIT_SUCCESS: User admin committed configuration session session1068691224937 successfully on GNMI (10.24.128.7:46054)
Nov 24 02:31:22 cd217 ConfigAgent: %SYS-5-CONFIG_SESSION_EXITED: User admin exited configuration session session1068691224937 on GNMI (10.24.128.7:46054)
The following symptoms may indicate vulnerability to this issue:
Check if the installed software is an affected version.
Terminattr
switch#show version detail | grep TerminAttr-core
TerminAttr-core v1.15.3 1
Mitigation
The following configuration changes may be made in order to remedy the exploitation of the listed vulnerabilities.
Disable affected agents:
On the affected versions, all vulnerabilities can be mitigated by disabling OpenConfig gNMI/gNOI and OpenConfig RESTCONF and TerminAttr. If use of these agents is required, a hotfix employing a proxy service can be deployed.
Disable OpenConfig gNMI
management api gnmi transport grpc default shutdown
Disable OpenConfig RESTCONF
management api restconf transport https default shutdown
Disable OpenConfig TerminAttr
daemon TerminAttr shutdown
CVE-2021-28500 and CVE-2021-28501
For local users whose authentication is with nopassword, enforce a password or remove the user.
Ensure that the following configuration does not exist where a local user is configured with nopassword.
username admin nopassword
Instead, a password can be enforced for the local user.
username admin secret 0 pass123
Please refer to the EOS user security manual for further information.
CVE-2021-28506 and CVE-2021-28507
No mitigation options available
For the final resolution, please refer to the resolution section which lists the details of the remediated software versions.
Resolution
The vulnerabilities listed below, as identified by their CVE numbers, are being tracked by the following bugs:
CVE-2021-28500 - BUG 601875
CVE-2021-28501 - BUG 604880
CVE-2021-28506 - BUG 606192
CVE-2021-28507 - BUG 606248
The recommended resolution is to upgrade to a remediated software version at your earliest convenience. Arista recommends customers move to the latest version of each release that contains all the fixes listed below.
CVE-2021-28500 has been fixed in the following releases:
- 4.26.2F and later releases in the 4.26.x train
- 4.25.5M and later releases in the 4.25.x train
- 4.25.4.1M and later releases in the 4.25.4.x train
- 4.24.7M and later releases in the 4.24.x train
- 4.23.9M and later releases in the 4.23.x train
- 4.22.12M and later releases in the 4.22.x train
- 4.21.15M and later releases in the 4.21.x train
CVE-2021-28501 has been fixed in the following releases:
- TerminAttr v1.16.2 and later releases
CVE-2021-28506 has been fixed in the following releases:
- 4.26.3M and later releases in the 4.26.x train
- 4.25.6M and later releases in the 4.25.x train
- 4.25.4.1M and later releases in the 4.25.4.x train
- 4.24.8M and later releases in the 4.24.x train
CVE-2021-28507 has been fixed in the following releases:
- 4.26.3M and later releases in the 4.26.x train
- 4.25.6M and later releases in the 4.25.x train
- 4.25.4.1M and later releases in the 4.25.4.x train
- 4.24.8M and later releases in the 4.24.x train
- 4.23.10M and later releases in the 4.23.x train
For immediate remediation until EOS can be upgraded, the following hotfix is available.
Hotfix
To mitigate CVE-2021-28500, CVE-2021-28501, CVE-2021-28506 and CVE-2021-28507 with the continued use of the affected agents, a hotfix employing a proxy service can be deployed. The proxy is configured behind the gNMI/gNOI or RESTCONF server.
OpenConfigProxy is a universal proxy for the OpenConfig gNMI/gNOI server, OpenConfig RESTCONF server or TerminAttr gNMI server. The proxy performs:
- IP ACL check
- Authentication
- Authorization (for gNMI/gNOI only, disabled by default)
Requests are forwarded to the OpenConfig gNMI/gNOI server or RESTCONF server or TerminAttr gNMI server. Responses are sent to the collector from the gNMI/gNOI server or RESTCONF server via the proxy.
Hotfix Notes:
- The hotfix employing a proxy service is version agnostic (i.e., the proxy can be installed on any affected version).
- The hotfix employing a proxy service does not require a restart of the OpenConfig/Octa agent. Only OpenConfig gNMI or RESTCONF configuration changes are required.
- The hotfix employing a proxy service installation is hitless and a reload of the switch is not required for the hotfix to take effect.
TerminAttr Note: For TerminAttr, it is recommended to update to TerminAttr v1.16.3 or above as its agent can be updated independently of the EOS version.
The following hotfix is available to remedy all CVE’s listed in this Security Advisory:
32 bit platform:
Version: 1.0
URL: OpenConfigProxy.i386.swix
SWIX hash: (SHA-512)
fef14efde0ba282ab90664ffbd5ff6d37172062ea5f97fc44b457d0b0922d4c7bc5780a0d0f89dbe540fd38e3daa875b46b5f7d57edb3973212d8b2f7f1ec7d6
64 bit platform:
Version: 1.0
URL: OpenConfigProxy.x86_64.swix
SWIX hash: (SHA-512)
db4488cb6328fb93bdcbcc11edfff95be92755b5acc263d0ecff70c879e52fe51471eb1783acb9dc53a9115f575dc7146b8984c26d4282806b37b0dc5ded18c2
For detailed information on installation and configuration of the OpenConfigProxy please refer to the documentation here
For More Information
If you require further assistance, or if you have any further questions regarding this security notice, please contact the Arista Networks Technical Assistance Center (TAC) by one of the following methods:
Open a Service Request:
Please visit Customer Support for up to date information on how to open a service request via email or telephone.