title: On affected platforms running Arista EOS, an authorized attacker with permissions to perform gNMI requests could craft a request allowing it to update arbitrary configurations in the switch.
description: On affected platforms running Arista EOS, an authorized attacker with permissions to perform gNMI requests could craft a request allowing it to update arbitrary configurations in the switch. This situation occurs only when the Streaming Telemetry Agent (referred to as the TerminAttr agent) is enabled and gNMI access is configured on the agent. Note: This gNMI over the Streaming Telemetry Agent scenario is mostly commonly used when streaming to a 3rd party system and is not used by default when streaming to CloudVision
problem types: CWE-284 Improper Access Control
affected:
{
vendor: Arista Networks
product: Terminattr
versions:
version: 1.23.0, status: affected
version: unspecified, lessThanOrEqual: 1.19.5, status: affected, versionType: custom
version: 1.24.0, status: affected, lessThanOrEqual: 1.24.3, versionType: custom
version: 1.22.0, status: affected, lessThanOrEqual: 1.22.1, versionType: custom
}
metrics:
cvssV3_1: [
version: 3.1
vectorString: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
attackVector: NETWORK
attackComplexity: LOW
privilegesRequired: LOW
userInteraction: NONE
scope: UNCHANGED
confidentialityImpact: HIGH
integrityImpact: HIGH
availabilityImpact: HIGH
baseScore: 8.8
baseSeverity: HIGH
]
solutions: While the steps listed above resolve the issue, the recommended long term solution 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.
There are two possible solutions:
Upgrade the Streaming Telemetry Agent
Customers can upgrade the Streaming Telemetry Agent to a fixed version, following the directions in https://arista.my.site.com/AristaCommunity/s/article/terminattr-upgrade-downgrade. Fixes are available in the following supported release trains:
TerminAttr 1.25.0 and later Terminattr versions
Users of 1.24.X and 1.23.X TerminAttr releases should upgrade to TerminAttr 1.25.0 or later.
TerminAttr 1.22.2 and later version in the TerminAttr 1.22.X train
TerminAttr 1.19.6 and later versions in the TerminAttr 1.19.X train
workarounds: The streaming telemetry agent can be configured in gRPC read-only mode by specifying -grpcreadonly as part of its configuration. For instance as follows:
switch# daemon TerminAttr
exec /usr/bin/TerminAttr -grpcreadonly -grpcaddr=... <other options...>
no shutdown
If TerminAttr is running, it must be restarted for the configuration to take effect. This can be done as follows:
switch# daemon TerminAttr
shutdown
wait-for-warmup
no shutdown
