Cisco IOS XR Software Management Interface ACL Bypass Vulnerability
TL;DR π
- A vulnerability in the management interface access control list (ACL) processing feature in Cisco IOS XR Software could allow an unauthenticated, remote attacker to bypass configured ACLs for the SSH, NetConf, and gRPC features. This vulnerability exists because management interface ACLs have not been supported on Cisco IOS XR Software Packet I/O infrastructure platforms forβ¦
- Highest CVSS: 5.3 (Medium).
- Check the advisory for fixed releases β remediation detail is in the vendor link below.
- CVEs: CVE-2025-20159.
What it is
CVE-2025-20159 is a management-plane ACL bypass in Cisco IOS XR Software. It affects the Packet I/O infrastructure that IOS XR uses to hand traffic off to Linux-based processes. On the affected platforms, an ACL configured on the management interface is not enforced against Linux-handled services β specifically SSH (CiscoSSH), NETCONF, and gRPC. An administrator who has applied an IPv4 or IPv6 ingress ACL to the management interface, expecting it to restrict who can reach these services, gets no such protection.
The access path is straightforward: an unauthenticated, remote attacker simply sends traffic to the management interface of an affected device. There is no need for credentials or user interaction (CVSS vector AV:N/AC:L/PR:N/UI:N). The impact is that the ACL is bypassed, exposing SSH, NETCONF, and gRPC to hosts that the ACL was meant to block. Cisco rates this 5.3 (Medium); the vector records low integrity impact and no confidentiality or availability impact, so this is a filtering failure rather than a route to direct compromise on its own.
Cisco splits affected hardware into two groups. “Native Packet I/O” platforms have always used this infrastructure and are affected on any software image earlier than the first fixed release: 8000 Series Routers, IOS XRd vRouters, NCS 540 Series Routers (NCS540L base image), NCS 1010 Platforms, NCS 1014 Platforms, and NCS 5700 Series Routers (NCS5700 base image). “Migrated Packet I/O” platforms only became affected from the release in which they moved to this infrastructure: ASR 9000 Series (24.1.1 and later), IOS XR White box/IOSXRWBD (7.9.1 and later), IOS XRv 9000 Routers (24.1.1 and later), NCS 540 Series (NCS540-iosxr base image, 7.9.1 and later), NCS 560 Series (24.2.1 and later), and NCS 5500 Series (7.9.1 and later).
Cisco IOS, IOS XE, and NX-OS are confirmed not affected. Cisco PSIRT states it is not aware of any public announcement or malicious use of this vulnerability, and it is not listed in CISA’s KEV catalogue.
What to do
- Identify which category your platform falls into (Native or Migrated Packet I/O) and check whether you rely on a management-interface ACL to restrict SSH, NETCONF, or gRPC access.
- Use
show running-config sshandshow running-config ssh server netconfto confirm whether IPv4/IPv6 ACLs are attached to those services directly, rather than relying solely on the management interface ACL. - Upgrade to a fixed release. Fixes are split by protocol and platform:
- gRPC filtering support on the management interface: 8000 Series and IOS XRd vRouters need 25.1.2 or 25.2.1; ASR 9000, IOSXRWBD, IOS XRv 9000, NCS 540 (NCS540-iosxr), NCS 560, and NCS 5500 need 24.2.21, 25.1.2, or 25.2.1.
- SSH and NETCONF filtering on the management interface: only supported from 25.1.1 onward, and only on 8000 Series, IOS XRd vRouters, NCS 540 (NCS540L-iosxr), NCS 1010, NCS 1014, and NCS 5700. ASR 9000, IOSXRWBD, IOS XRv 9000, NCS 540 (NCS540-iosxr), NCS 560, and NCS 5500 are listed as “not affected” for this protocol because they use an SSH service outside the scope of this flaw.
- On releases 25.1.1 and later, filtering SSH/NETCONF via the management interface ACL also requires explicitly configuring
ssh server packet-flow-netio ingress. - If you cannot upgrade, note there is no ACL-based workaround β Cisco states migration is required to get management-interface ACL enforcement for these services. A separate workaround exists for customers who cannot upgrade; it must be coordinated directly with Cisco TAC.
- For gRPC on platforms not yet upgraded, use Traffic Protection for Linux Networking as described in the Cisco IOS XR Software Hardening Guide as an interim control.
- If you run 8000 Series Routers with dual route processors, be aware that even after applying the fix, standby route processor filtering is not correctly enforced (bug CSCwq48170); plan to move to 25.2.2, 25.4.1, or 26.1.1 once available to close that gap.
- No action is required on IOS, IOS XE, or NX-OS devices for this issue.
For leadership π§
Executive summary. Routers running affected IOS XR releases are not enforcing management-interface ACLs against SSH, NETCONF and gRPC, meaning a filter administrators believe blocks remote access to these services is not actually working. There is no exploitation reported and no direct compromise from this flaw alone, but the exposure is unauthenticated and remote, so it should be assessed and scheduled for remediation in the next available change window rather than treated as urgent overnight.
Why it matters:
- Any device where SSH, NETCONF or gRPC is reachable via the management interface is exposed to hosts the ACL was meant to block, regardless of what the running configuration shows.
- The bypass requires no credentials and no user interaction β an attacker only needs network reach to the management interface, which on many deployments includes out-of-band or shared management networks.
- Fix availability is split unevenly by platform and protocol: some platforms get gRPC filtering fixes but never get SSH/NETCONF filtering support because they use a different SSH service outside this flaw’s scope.
- 8000 Series Routers with dual route processors remain exposed on the standby processor even after upgrading to the initial fix, requiring a further upgrade to close that gap.
Now / Next / Later:
- Now: Run
show running-config sshandshow running-config ssh server netconfon affected IOS XR devices to check whether SSH/NETCONF access is currently protected only by a management-interface ACL rather than a direct service-level ACL. - Next: Upgrade affected platforms to the fixed release appropriate to their protocol and hardware category (e.g. 24.2.21/25.1.2/25.2.1 for gRPC, 25.1.1+ for SSH/NETCONF on supported platforms), and configure
ssh server packet-flow-netio ingresswhere required on 25.1.1 and later. - Later: Standardise on protocol-level ACLs (SSH server and NETCONF server access-list configuration) plus Traffic Protection for Linux Networking for gRPC, rather than relying solely on management-interface ACLs, and track the dual route-processor fix (CSCwq48170) for 8000 Series deployments.