{"id":"CVE-2021-47397","state":"PUBLISHED","title":"sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb\n\nWe should always check if skb_header_pointer's return is NULL before\nusing it, otherwise it may cause null-ptr-deref, as syzbot reported:\n\n  KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]\n  RIP: 0010:sctp_rcv_ootb net/sctp/input.c:705 [inline]\n  RIP: 0010:sctp_rcv+0x1d84/0x3220 net/sctp/input.c:196\n  Call Trace:\n  <IRQ>\n   sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109\n   ip6_protocol_deliver_rcu+0x2e9/0x1ca0 net/ipv6/ip6_input.c:422\n   ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463\n   NF_HOOK include/linux/netfilter.h:307 [inline]\n   NF_HOOK include/linux/netfilter.h:301 [inline]\n   ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472\n   dst_input include/net/dst.h:460 [inline]\n   ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline]\n   NF_HOOK include/linux/netfilter.h:307 [inline]\n   NF_HOOK include/linux/netfilter.h:301 [inline]\n   ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297","publishedAt":"2024-05-21T15:03:53.431Z","updatedAt":"2026-08-05T08:47:38.908Z","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":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"77bc7dcf0fcc1519341a91788d7a2914fcfddf6d","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"8c630a7b4f9dec63f08bd881ab77984a724a5124","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"ec018021cf445abbe8e2f3e2a7f1dcc813cb8ea1","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"9c6591ae8e63f93c895ad5e2703c36c548aac997","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"8180611c238e11676612eb2a9828b1c7a3a4d77b","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"f7e745f8e94492a8ac0b0a26e25f2b19d342918f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sctp/input.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.8","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.8","versionType":"semver"},{"version":"4.14.249","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.209","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.151","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.71","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.14.10","status":"unaffected","lessThanOrEqual":"5.14.*","versionType":"semver"},{"version":"5.15","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sctp/input.c"]}],"references":["https://git.kernel.org/stable/c/77bc7dcf0fcc1519341a91788d7a2914fcfddf6d","https://git.kernel.org/stable/c/8c630a7b4f9dec63f08bd881ab77984a724a5124","https://git.kernel.org/stable/c/ec018021cf445abbe8e2f3e2a7f1dcc813cb8ea1","https://git.kernel.org/stable/c/9c6591ae8e63f93c895ad5e2703c36c548aac997","https://git.kernel.org/stable/c/8180611c238e11676612eb2a9828b1c7a3a4d77b","https://git.kernel.org/stable/c/f7e745f8e94492a8ac0b0a26e25f2b19d342918f"],"weaknesses":[],"ingestedAt":"2026-10-29T19:49:19.404Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2021/47xxx/CVE-2021-47397.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2021-47397","state":"PUBLISHED","datePublished":"2024-05-21T15:03:53.431Z","dateUpdated":"2026-08-05T08:47:38.908Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-05-21T14:58:30.815Z"},"containers":{"cna":{"title":"sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb\n\nWe should always check if skb_header_pointer's return is NULL before\nusing it, otherwise it may cause null-ptr-deref, as syzbot reported:\n\n  KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]\n  RIP: 0010:sctp_rcv_ootb net/sctp/input.c:705 [inline]\n  RIP: 0010:sctp_rcv+0x1d84/0x3220 net/sctp/input.c:196\n  Call Trace:\n  <IRQ>\n   sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109\n   ip6_protocol_deliver_rcu+0x2e9/0x1ca0 net/ipv6/ip6_input.c:422\n   ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463\n   NF_HOOK include/linux/netfilter.h:307 [inline]\n   NF_HOOK include/linux/netfilter.h:301 [inline]\n   ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472\n   dst_input include/net/dst.h:460 [inline]\n   ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline]\n   NF_HOOK include/linux/netfilter.h:307 [inline]\n   NF_HOOK include/linux/netfilter.h:301 [inline]\n   ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"77bc7dcf0fcc1519341a91788d7a2914fcfddf6d","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"8c630a7b4f9dec63f08bd881ab77984a724a5124","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"ec018021cf445abbe8e2f3e2a7f1dcc813cb8ea1","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"9c6591ae8e63f93c895ad5e2703c36c548aac997","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"8180611c238e11676612eb2a9828b1c7a3a4d77b","versionType":"git"},{"version":"3acb50c18d8d6650f10919464ade4dcdaf41d62f","status":"affected","lessThan":"f7e745f8e94492a8ac0b0a26e25f2b19d342918f","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sctp/input.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.8","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.8","versionType":"semver"},{"version":"4.14.249","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.209","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.151","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.71","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.14.10","status":"unaffected","lessThanOrEqual":"5.14.*","versionType":"semver"},{"version":"5.15","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sctp/input.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/77bc7dcf0fcc1519341a91788d7a2914fcfddf6d"},{"url":"https://git.kernel.org/stable/c/8c630a7b4f9dec63f08bd881ab77984a724a5124"},{"url":"https://git.kernel.org/stable/c/ec018021cf445abbe8e2f3e2a7f1dcc813cb8ea1"},{"url":"https://git.kernel.org/stable/c/9c6591ae8e63f93c895ad5e2703c36c548aac997"},{"url":"https://git.kernel.org/stable/c/8180611c238e11676612eb2a9828b1c7a3a4d77b"},{"url":"https://git.kernel.org/stable/c/f7e745f8e94492a8ac0b0a26e25f2b19d342918f"}],"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 - The bug is in sctp_rcv_ootb(), reached from sctp4_rcv/sctp6_rcv on the IPPROTO_SCTP receive path when processing out-of-the-blue packets; a remote peer can deliver crafted SCTP packets over IPv4/IPv6 with no local socket required beyond the SCTP stack being loaded.\nAC:L - The attacker only needs to send crafted SCTP packets that fail association lookup and enter the OOTB walker; there is no race, victim-side state, or other condition outside the attacker’s control required to hit the unchecked skb_header_pointer() result.\nPR:N - OOTB handling runs for packets that match no association, falls back to the per-net ctl_sock endpoint, and requires no authentication or privileges on the target.\nUI:N - Exploitation requires only sending network packets; no user action such as opening a file or establishing an application session is needed.\nS:U - Impact is confined to the vulnerable host’s kernel (crash/DoS); this does not cross a VM, IOMMU, or other security authority boundary.\nC:N - The defect is a pure NULL pointer dereference of skb_header_pointer()’s return value when reading ch->length; it does not disclose kernel memory.\nI:N - There is no write, type confusion, or other memory corruption primitive—only a NULL deref—so integrity cannot be compromised beyond the crash itself.\nA:H - Dereferencing the NULL chunk header pointer causes a kernel oops/general protection fault in softirq/IRQ receive context, which is a full availability impact and can be repeated with further packets."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T08:47:38.908Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"4.14.249"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"4.19.209"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"5.4.151"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"5.10.71"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"5.14.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.8","versionEndExcluding":"5.15"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/77bc7dcf0fcc1519341a91788d7a2914fcfddf6d","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/8c630a7b4f9dec63f08bd881ab77984a724a5124","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/ec018021cf445abbe8e2f3e2a7f1dcc813cb8ea1","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/9c6591ae8e63f93c895ad5e2703c36c548aac997","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/8180611c238e11676612eb2a9828b1c7a3a4d77b","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/f7e745f8e94492a8ac0b0a26e25f2b19d342918f","tags":["x_transferred"]}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2024-08-04T05:39:59.634Z"}},{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2021-47397","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-09-10T15:38:10.305778Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-09-11T17:33:42.263Z"}}]}}}