{"id":"CVE-2021-47109","state":"PUBLISHED","title":"neighbour: allow NUD_NOARP entries to be forced GCed","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nneighbour: allow NUD_NOARP entries to be forced GCed\n\nIFF_POINTOPOINT interfaces use NUD_NOARP entries for IPv6. It's possible to\nfill up the neighbour table with enough entries that it will overflow for\nvalid connections after that.\n\nThis behaviour is more prevalent after commit 58956317c8de (\"neighbor:\nImprove garbage collection\") is applied, as it prevents removal from\nentries that are not NUD_FAILED, unless they are more than 5s old.","publishedAt":"2024-03-15T20:14:18.469Z","updatedAt":"2026-08-05T08:46:03.543Z","severity":{"score":7.5,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"d99029e6aab62aef0a0251588b2867e77e83b137","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"d17d47da59f726dc4c87caebda3a50333d7e2fd3","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"ddf088d7aaaaacfc836104f2e632b29b1d383cfc","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"7a6b1ab7475fd6478eeaf5c9d1163e7a18125c8f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/neighbour.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.0","versionType":"semver"},{"version":"5.4.125","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.43","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.10","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/neighbour.c"]}],"references":["https://git.kernel.org/stable/c/d99029e6aab62aef0a0251588b2867e77e83b137","https://git.kernel.org/stable/c/d17d47da59f726dc4c87caebda3a50333d7e2fd3","https://git.kernel.org/stable/c/ddf088d7aaaaacfc836104f2e632b29b1d383cfc","https://git.kernel.org/stable/c/7a6b1ab7475fd6478eeaf5c9d1163e7a18125c8f"],"weaknesses":[],"ingestedAt":"2026-10-29T19:49:19.404Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2021/47xxx/CVE-2021-47109.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2021-47109","state":"PUBLISHED","datePublished":"2024-03-15T20:14:18.469Z","dateUpdated":"2026-08-05T08:46:03.543Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-03-04T18:12:48.836Z"},"containers":{"cna":{"title":"neighbour: allow NUD_NOARP entries to be forced GCed","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nneighbour: allow NUD_NOARP entries to be forced GCed\n\nIFF_POINTOPOINT interfaces use NUD_NOARP entries for IPv6. It's possible to\nfill up the neighbour table with enough entries that it will overflow for\nvalid connections after that.\n\nThis behaviour is more prevalent after commit 58956317c8de (\"neighbor:\nImprove garbage collection\") is applied, as it prevents removal from\nentries that are not NUD_FAILED, unless they are more than 5s old."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"d99029e6aab62aef0a0251588b2867e77e83b137","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"d17d47da59f726dc4c87caebda3a50333d7e2fd3","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"ddf088d7aaaaacfc836104f2e632b29b1d383cfc","versionType":"git"},{"version":"58956317c8de52009d1a38a721474c24aef74fe7","status":"affected","lessThan":"7a6b1ab7475fd6478eeaf5c9d1163e7a18125c8f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/neighbour.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.0","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.0","versionType":"semver"},{"version":"5.4.125","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.43","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.12.10","status":"unaffected","lessThanOrEqual":"5.12.*","versionType":"semver"},{"version":"5.13","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/core/neighbour.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/d99029e6aab62aef0a0251588b2867e77e83b137"},{"url":"https://git.kernel.org/stable/c/d17d47da59f726dc4c87caebda3a50333d7e2fd3"},{"url":"https://git.kernel.org/stable/c/ddf088d7aaaaacfc836104f2e632b29b1d383cfc"},{"url":"https://git.kernel.org/stable/c/7a6b1ab7475fd6478eeaf5c9d1163e7a18125c8f"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":7.5,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:N - A remote attacker can elicit replies to many unique IPv6 sources that egress via a POINTOPOINT/NOARP device (e.g. WireGuard, sit), and ip6_finish_output2 creates a NUD_NOARP neighbour per destination over the Internet path.\nAC:L - The attacker reliably fills the table by sending traffic from many distinct IPv6 addresses; no race, rare config, or other condition outside attacker control is required on a host with IPv6 via such an interface.\nPR:N - Exploitation needs only unauthenticated network packets that cause the victim to send replies; no local account or capabilities are required.\nUI:N - No victim action is needed; inbound packets alone drive neighbour creation and table exhaustion.\nS:U - Impact stays within the host kernel networking authority; there is no VM escape, sandbox escape, or other security-boundary crossing.\nC:N - This is resource exhaustion only—failed neigh_alloc returns ENOBUFS with no memory disclosure or read primitive.\nI:N - There is no memory corruption or attacker-controlled write; only allocation failure and dropped/failed neighbour resolution.\nA:H - Overflowing the neighbour table prevents new legitimate neighbour entries, sustaining denial of network connectivity for the host (confirmed in a real server DoS)."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T08:46:03.543Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.4.125"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.10.43"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.12.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.13"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2021-47109","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-03-19T15:24:45.992487Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-06-04T17:14:40.388Z"}},{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/d99029e6aab62aef0a0251588b2867e77e83b137","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/d17d47da59f726dc4c87caebda3a50333d7e2fd3","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/ddf088d7aaaaacfc836104f2e632b29b1d383cfc","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/7a6b1ab7475fd6478eeaf5c9d1163e7a18125c8f","tags":["x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-04T05:24:39.847Z"}}]}}}