{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2021-47240","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2024-04-10T18:59:19.532Z","datePublished":"2024-05-21T14:19:40.363Z","dateUpdated":"2026-08-05T08:46:52.072Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T08:46:52.072Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: qrtr: fix OOB Read in qrtr_endpoint_post\n\nSyzbot reported slab-out-of-bounds Read in\nqrtr_endpoint_post. The problem was in wrong\n_size_ type:\n\n\tif (len != ALIGN(size, 4) + hdrlen)\n\t\tgoto err;\n\nIf size from qrtr_hdr is 4294967293 (0xfffffffd), the result of\nALIGN(size, 4) will be 0. In case of len == hdrlen and size == 4294967293\nin header this check won't fail and\n\n\tskb_put_data(skb, data + hdrlen, size);\n\nwill read out of bound from data, which is hdrlen allocated block."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":8.4,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - qrtr_endpoint_post is reached from local endpoint drivers (MHI/SMD to an on-board modem or WiFi peer over PCIe, or a write to /dev/qrtr-tun); mainline QRTR has no IP transport, so a remote network packet cannot hit this path.\nAC:L - A crafted QRTR header with size near UINT_MAX (e.g. 0xfffffffd) deterministically makes ALIGN(size,4) wrap to 0 so the length check passes; the attacker fully controls the packet bytes and needs no race or unpredictable layout.\nPR:N - On the MHI/SMD path the vulnerable parser runs on unauthenticated device-to-host IPCR completions with no host capability or credential check, so a compromised or malicious peripheral peer triggers it without any local account (worst case over the also-reachable PR:L qrtr-tun path).\nUI:N - The attacker (or malicious MHI peer) delivers the malformed packet itself; no separate victim action such as mounting a filesystem or opening a file is required.\nS:U - The resulting kernel heap read/write and oops stay inside the host kernel's QRTR authority and do not cross a VM, IOMMU, or sandbox boundary.\nC:H - skb_put_data memcpy performs a multi-gigabyte out-of-bounds read from the hdrlen-sized source buffer into/past the skb (KASAN: Read of size ~4294967294), which per guidance is an unbounded OOB read treated as High confidentiality impact.\nI:H - The same memcpy writes past the hdrlen-sized skb into adjacent kernel memory because sk_buff_data_t wrap bypasses skb_put's overflow check (confirmed by the later 32-bit follow-up describing a write past the skb), yielding a heap overflow write primitive.\nA:H - The huge OOB access faults/oopses the kernel (and is a hard KASAN failure), producing full availability loss on affected systems."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/qrtr/qrtr.c"],"versions":[{"version":"194ccc88297ae78d0803adad83c6dcc369787c9e","lessThan":"f8111c0d7ed42ede41a3d0d393b104de0730a8a6","status":"affected","versionType":"git"},{"version":"194ccc88297ae78d0803adad83c6dcc369787c9e","lessThan":"26b8d10703a9be45d6097946b2b4011f7dd2c56f","status":"affected","versionType":"git"},{"version":"194ccc88297ae78d0803adad83c6dcc369787c9e","lessThan":"960b08dd36de1e341e3eb43d1c547513e338f4f8","status":"affected","versionType":"git"},{"version":"194ccc88297ae78d0803adad83c6dcc369787c9e","lessThan":"19892ab9c9d838e2e5a7744d36e4bb8b7c3292fe","status":"affected","versionType":"git"},{"version":"194ccc88297ae78d0803adad83c6dcc369787c9e","lessThan":"ad9d24c9429e2159d1e279dc3a83191ccb4daf1d","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/qrtr/qrtr.c"],"versions":[{"version":"4.15","status":"affected"},{"version":"0","lessThan":"4.15","status":"unaffected","versionType":"semver"},{"version":"4.19.196","lessThanOrEqual":"4.19.*","status":"unaffected","versionType":"semver"},{"version":"5.4.128","lessThanOrEqual":"5.4.*","status":"unaffected","versionType":"semver"},{"version":"5.10.46","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.12.13","lessThanOrEqual":"5.12.*","status":"unaffected","versionType":"semver"},{"version":"5.13","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"4.19.196"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"5.4.128"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"5.10.46"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"5.12.13"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.15","versionEndExcluding":"5.13"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/f8111c0d7ed42ede41a3d0d393b104de0730a8a6"},{"url":"https://git.kernel.org/stable/c/26b8d10703a9be45d6097946b2b4011f7dd2c56f"},{"url":"https://git.kernel.org/stable/c/960b08dd36de1e341e3eb43d1c547513e338f4f8"},{"url":"https://git.kernel.org/stable/c/19892ab9c9d838e2e5a7744d36e4bb8b7c3292fe"},{"url":"https://git.kernel.org/stable/c/ad9d24c9429e2159d1e279dc3a83191ccb4daf1d"}],"title":"net: qrtr: fix OOB Read in qrtr_endpoint_post","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2021-47240","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-05-23T21:23:18.343399Z"}}}],"providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2024-06-04T17:14:27.293Z"}},{"providerMetadata":{"orgId":"af854a3a-2127-422b-91ae-364da2661108","shortName":"CVE","dateUpdated":"2024-08-04T05:32:08.052Z"},"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/f8111c0d7ed42ede41a3d0d393b104de0730a8a6","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/26b8d10703a9be45d6097946b2b4011f7dd2c56f","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/960b08dd36de1e341e3eb43d1c547513e338f4f8","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/19892ab9c9d838e2e5a7744d36e4bb8b7c3292fe","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/ad9d24c9429e2159d1e279dc3a83191ccb4daf1d","tags":["x_transferred"]}]}]}}