{"id":"CVE-2022-49051","state":"PUBLISHED","title":"net: usb: aqc111: Fix out-of-bounds accesses in RX fixup","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: usb: aqc111: Fix out-of-bounds accesses in RX fixup\n\naqc111_rx_fixup() contains several out-of-bounds accesses that can be\ntriggered by a malicious (or defective) USB device, in particular:\n\n - The metadata array (desc_offset..desc_offset+2*pkt_count) can be out of bounds,\n   causing OOB reads and (on big-endian systems) OOB endianness flips.\n - A packet can overlap the metadata array, causing a later OOB\n   endianness flip to corrupt data used by a cloned SKB that has already\n   been handed off into the network stack.\n - A packet SKB can be constructed whose tail is far beyond its end,\n   causing out-of-bounds heap data to be considered part of the SKB's\n   data.\n\nFound doing variant analysis. Tested it with another driver (ax88179_178a), since\nI don't have a aqc111 device to test it, but the code looks very similar.","publishedAt":"2025-02-26T01:54:25.850Z","updatedAt":"2026-08-12T23:57:27.020Z","severity":null,"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"404998a137bcb8a926f7c949030afbe285472593","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"b416898442f2b6aa9f1b2f2968ce07e3abaa05f7","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"36311fe98f55dea9200c69e2dd6d6ddb8fc94080","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"afb8e246527536848b9b4025b40e613edf776a9d","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/usb/aqc111.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.190","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.112","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.35","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.17.4","status":"unaffected","lessThanOrEqual":"5.17.*","versionType":"semver"},{"version":"5.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/usb/aqc111.c"]}],"references":["https://git.kernel.org/stable/c/404998a137bcb8a926f7c949030afbe285472593","https://git.kernel.org/stable/c/d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7","https://git.kernel.org/stable/c/b416898442f2b6aa9f1b2f2968ce07e3abaa05f7","https://git.kernel.org/stable/c/36311fe98f55dea9200c69e2dd6d6ddb8fc94080","https://git.kernel.org/stable/c/afb8e246527536848b9b4025b40e613edf776a9d"],"weaknesses":[],"ingestedAt":"2026-10-29T20:05:26.763Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2022/49xxx/CVE-2022-49051.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-49051","state":"PUBLISHED","datePublished":"2025-02-26T01:54:25.850Z","dateUpdated":"2026-08-12T23:57:27.020Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-02-26T01:49:39.242Z"},"containers":{"cna":{"title":"net: usb: aqc111: Fix out-of-bounds accesses in RX fixup","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: usb: aqc111: Fix out-of-bounds accesses in RX fixup\n\naqc111_rx_fixup() contains several out-of-bounds accesses that can be\ntriggered by a malicious (or defective) USB device, in particular:\n\n - The metadata array (desc_offset..desc_offset+2*pkt_count) can be out of bounds,\n   causing OOB reads and (on big-endian systems) OOB endianness flips.\n - A packet can overlap the metadata array, causing a later OOB\n   endianness flip to corrupt data used by a cloned SKB that has already\n   been handed off into the network stack.\n - A packet SKB can be constructed whose tail is far beyond its end,\n   causing out-of-bounds heap data to be considered part of the SKB's\n   data.\n\nFound doing variant analysis. Tested it with another driver (ax88179_178a), since\nI don't have a aqc111 device to test it, but the code looks very similar."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"404998a137bcb8a926f7c949030afbe285472593","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"b416898442f2b6aa9f1b2f2968ce07e3abaa05f7","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"36311fe98f55dea9200c69e2dd6d6ddb8fc94080","versionType":"git"},{"version":"361459cd9642631f048719169da9ef14cbf4a932","status":"affected","lessThan":"afb8e246527536848b9b4025b40e613edf776a9d","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/usb/aqc111.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.190","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.112","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.35","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"5.17.4","status":"unaffected","lessThanOrEqual":"5.17.*","versionType":"semver"},{"version":"5.18","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/net/usb/aqc111.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/404998a137bcb8a926f7c949030afbe285472593"},{"url":"https://git.kernel.org/stable/c/d90df6da50c56ad8b1a132e3cf86b6cdf8f507b7"},{"url":"https://git.kernel.org/stable/c/b416898442f2b6aa9f1b2f2968ce07e3abaa05f7"},{"url":"https://git.kernel.org/stable/c/36311fe98f55dea9200c69e2dd6d6ddb8fc94080"},{"url":"https://git.kernel.org/stable/c/afb8e246527536848b9b4025b40e613edf776a9d"}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-12T23:57:27.020Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.4.190"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.10.112"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.15.35"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.17.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.0","versionEndExcluding":"5.18"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}}}}}