{"id":"CVE-2021-32846","details":"HyperKit is a toolkit for embedding hypervisor capabilities in an application. In versions 0.20210107, function `pci_vtsock_proc_tx` in `virtio-sock` can lead to to uninitialized memory use. In this situation, there is a check for the return value to be less or equal to `VTSOCK_MAXSEGS`, but that check is not sufficient because the function can return `-1` if it finds an error it cannot recover from. Moreover, the negative return value will be used by `iovec_pull` in a while condition that can further lead to more corruption because the function is not designed to handle a negative `iov_len`. This issue may lead to a guest crashing the host causing a denial of service and, under certain circumstance, memory corruption. This issue is fixed in commit af5eba2360a7351c08dfd9767d9be863a50ebaba.","modified":"2026-04-11T17:25:59.184923Z","published":"2023-02-17T23:15:12.037Z","references":[{"type":"ADVISORY","url":"https://securitylab.github.com/advisories/GHSL-2021-054_057-moby-hyperkit/"},{"type":"FIX","url":"https://github.com/moby/hyperkit/commit/af5eba2360a7351c08dfd9767d9be863a50ebaba"},{"type":"FIX","url":"https://github.com/moby/hyperkit/pull/313"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/moby/hyperkit","events":[{"introduced":"0"},{"last_affected":"40cbd5caa9580e2b6de8fef53f4581943c430312"},{"fixed":"af5eba2360a7351c08dfd9767d9be863a50ebaba"}],"database_specific":{"versions":[{"introduced":"0"},{"last_affected":"0.20210107"}]}}],"versions":["v0.20170214","v0.20170227","v0.20170425","v0.20170511","v0.20170519","v0.20170904","v0.20171020","v0.20171204","v0.20180621","v0.20190201","v0.20190802","v0.20200224","v0.20200908","v0.20210107"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-32846.json","vanir_signatures":[{"deprecated":false,"signature_type":"Function","signature_version":"v1","source":"https://github.com/moby/hyperkit/commit/af5eba2360a7351c08dfd9767d9be863a50ebaba","target":{"function":"pci_vtsock_proc_tx","file":"src/lib/pci_virtio_sock.c"},"id":"CVE-2021-32846-b09d9f98","digest":{"function_hash":"125994073580106480435013042924630844270","length":5340}},{"deprecated":false,"signature_type":"Line","signature_version":"v1","source":"https://github.com/moby/hyperkit/commit/af5eba2360a7351c08dfd9767d9be863a50ebaba","target":{"file":"src/lib/pci_virtio_sock.c"},"id":"CVE-2021-32846-eb6585cd","digest":{"line_hashes":["118801894192246387531295740415707816522","210678114142392592887100980302801274153","216889802229094579609416855703020175875","303809023214414299997951559145263804521"],"threshold":0.9}}],"vanir_signatures_modified":"2026-04-11T17:25:59Z"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}