CVE-2026-49943
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the...
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
CVE-2026-49943- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Weakness
- CWE-121
- Updated
- 2026-11-02
EUVDEUVD-2026-33980
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
EUVD-2026-33980- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-64c8-8qx9-25r7
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the...
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
GHSA-64c8-8qx9-25r7- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Weakness
- CWE-121
- Updated
- 2026-11-02
NVD
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
CVE-2026-49943- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Weakness
- CWE-121
- Updated
- 2026-11-02
OSV
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
CVE-2026-49943- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Weakness
- CWE-121
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-49943
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
DEBIAN-CVE-2026-49943- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-49943
6.3
CZ.NIC BIRD Internet Routing Daemon through 2.19.0 contains a stack-based buffer overflow in the BGP AS_PATH mask matching implementation in nest/a-path.c. The as_path_match() function uses a fixed-size stack array of 2048 + 1 pm_pos entries, while parse_path() expands AS_PATH segments from a received BGP UPDATE without enforcing a corresponding capacity limit. When RFC 8654 BGP Extended Messages are enabled and a BIRD filter evaluates an AS path mask expression such as "bgp_path ~ [= ... =]", an established BGP peer can send a long AS_PATH containing more than 2048 expanded ASNs. This causes parse_path()/as_path_match() to write beyond the fixed stack buffer, resulting in a crash of the daemon. NOTE: reportedly, the Supplier's position is that a fix is not being prioritized because all network operators should already be rejecting routes with unusually long attributes.
- Record
UBUNTU-CVE-2026-49943- CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:N/I:N/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
birdDebian:12 |
All versions, plus listed versions 1.6.8-2.1 |
None known |
bird2Debian:12 |
All versions, plus listed versions 2.0.12-72.14-12.15-12.15.1-12.15.1-1.1 Show 12 moreShow less2.16-12.16.1-12.17-12.17.1-12.17.2-12.17.3-12.17.3-22.18-12.18.1-12.19.0-12.19.1-12.19.2-1 |
None known |
bird2Debian:13 |
All versions, plus listed versions 2.17.1-12.17.1-1+deb13u12.17.1-1+deb13u22.17.2-12.17.3-1 Show 7 moreShow less2.17.3-22.17.5-0+deb13u12.18-12.18.1-12.19.0-12.19.1-12.19.2-1 |
None known |
bird2Debian:14 |
All versions, plus listed versions 2.17.1-12.17.2-12.17.3-12.17.3-22.18-1 Show 4 moreShow less2.18.1-12.19.0-12.19.1-12.19.2-1 |
None known |
bird3Debian:13 |
All versions, plus listed versions 3.1.0-13.1.4-13.1.5-13.1.5-23.1.7-0+deb13u1 Show 7 moreShow less3.2.0-13.2.1-13.3.0-13.3.0-1~bpo13+13.3.1-13.3.2-13.3.2-1~bpo13+1 |
None known |
bird3Debian:14 |
All versions, plus listed versions 3.1.0-13.1.4-13.1.5-13.1.5-23.2.0-1 Show 6 moreShow less3.2.1-13.3.0-13.3.0-1~bpo13+13.3.1-13.3.2-13.3.2-1~bpo13+1 |
None known |
birdUbuntu:16.04:LTS |
All versions, plus listed versions 1.5.0-41.5.0-4build1 |
None known |
birdUbuntu:18.04:LTS |
All versions, plus listed versions 1.6.3-3 |
None known |
birdUbuntu:20.04:LTS |
All versions, plus listed versions 1.6.7-11.6.8-1 |
None known |
bird2Ubuntu:20.04:LTS |
All versions, plus listed versions 2.0.5-12.0.7-2 |
None known |
Show 10 moreShow less
| Package | Affected | Fixed |
|---|---|---|
birdUbuntu:22.04:LTS |
All versions, plus listed versions 1.6.8-2.1 |
None known |
bird2Ubuntu:22.04:LTS |
All versions, plus listed versions 2.0.7-4.12.0.8-2 |
None known |
birdUbuntu:24.04:LTS |
All versions, plus listed versions 1.6.8-2.11.6.8-2.1build11.6.8-2.1build2 |
None known |
bird2Ubuntu:24.04:LTS |
All versions, plus listed versions 2.0.12-72.14-12.14-1build12.14-1build2 |
None known |
bird2Ubuntu:25.10 |
All versions, plus listed versions 2.16.1-12.17-12.17.1-1 |
None known |
bird3Ubuntu:25.10 |
All versions, plus listed versions 3.1.0-1 |
None known |
bird2Ubuntu:26.10 |
All versions, plus listed versions 2.18-12.18.1-12.19.0-12.19.1-12.19.2-1 |
None known |
bird3Ubuntu:26.10 |
All versions, plus listed versions 3.2.0-13.2.1-13.3.0-13.3.1-13.3.2-1 |
None known |
bird2Ubuntu:26.04:LTS |
All versions, plus listed versions 2.17.1-12.17.2-12.17.3-12.17.3-22.18-1 |
None known |
bird3Ubuntu:26.04:LTS |
All versions, plus listed versions 3.1.0-13.1.4-13.1.5-13.1.5-23.2.0-1 |
None known |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | cxwx/CVE-2026-49943-PoC | 2026-06-03 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-49943 is a medium vulnerability (CVSS 6.3) in Nic Bird, published June 2, 2026. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 0.30%, the 22nd percentile. No source names a fixed version.
References
bird.nic.cz
gitlab.nic.cz/labs/bird/-/blob/master/NEWS
nvd.nist.gov/vuln/detail/CVE-2026-49943
github.com/advisories/GHSA-64c8-8qx9-25r7
github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49943.json
security-tracker.debian.org/tracker/CVE-2026-49943
ubuntu.com/security/CVE-2026-49943
cve.org/CVERecord?id=CVE-2026-49943
openwall.com/lists/oss-security/2026/06/02/2