{"api_version":"1","generated_at":"2026-08-15T03:49:24+00:00","cve":"CVE-2025-40269","urls":{"html":"https://cve.report/CVE-2025-40269","api":"https://cve.report/api/cve/CVE-2025-40269.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2025-40269","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2025-40269"},"summary":{"title":"ALSA: usb-audio: Fix potential overflow of PCM transfer buffer","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: usb-audio: Fix potential overflow of PCM transfer buffer\n\nThe PCM stream data in USB-audio driver is transferred over USB URB\npacket buffers, and each packet size is determined dynamically.  The\npacket sizes are limited by some factors such as wMaxPacketSize USB\ndescriptor.  OTOH, in the current code, the actually used packet sizes\nare determined only by the rate and the PPS, which may be bigger than\nthe size limit above.  This results in a buffer overflow, as reported\nby syzbot.\n\nBasically when the limit is smaller than the calculated packet size,\nit implies that something is wrong, most likely a weird USB\ndescriptor.  So the best option would be just to return an error at\nthe parameter setup time before doing any further operations.\n\nThis patch introduces such a sanity check, and returns -EINVAL when\nthe packet size is greater than maxpacksize.  The comparison with\nep->packsize[1] alone should suffice since it's always equal or\ngreater than ep->packsize[0].","state":"PUBLISHED","assigner":"Linux","published_at":"2025-12-06 22:15:54","updated_at":"2026-07-30 06:24:24"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.8","severity":"HIGH","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","data":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/ab0b5e92fc36ee82c1bd01fe896d0f775ed5de41","name":"https://git.kernel.org/stable/c/ab0b5e92fc36ee82c1bd01fe896d0f775ed5de41","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/ef592bf2232a2daa9fffa8881881fc9957ea56e9","name":"https://git.kernel.org/stable/c/ef592bf2232a2daa9fffa8881881fc9957ea56e9","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/ece3b981bb6620e47fac826a2156c090b1a936a0","name":"https://git.kernel.org/stable/c/ece3b981bb6620e47fac826a2156c090b1a936a0","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/480a1490c595a242f27493a4544b3efb21b29f6a","name":"https://git.kernel.org/stable/c/480a1490c595a242f27493a4544b3efb21b29f6a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/282aba56713bbc58155716b55ca7222b2d9cf3c8","name":"https://git.kernel.org/stable/c/282aba56713bbc58155716b55ca7222b2d9cf3c8","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/217d47255a2ec8b246f2725f5db9ac3f1d4109d7","name":"https://git.kernel.org/stable/c/217d47255a2ec8b246f2725f5db9ac3f1d4109d7","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/98e9d5e33bda8db875cc1a4fe99c192658e45ab6","name":"https://git.kernel.org/stable/c/98e9d5e33bda8db875cc1a4fe99c192658e45ab6","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/d67dde02049e632ba58d3c44a164a74b6a737154","name":"https://git.kernel.org/stable/c/d67dde02049e632ba58d3c44a164a74b6a737154","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/d2c04f20ccc6c0d219e6d3038bab45bc66a178ad","name":"https://git.kernel.org/stable/c/d2c04f20ccc6c0d219e6d3038bab45bc66a178ad","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/05a1fc5efdd8560f34a3af39c9cf1e1526cc3ddf","name":"https://git.kernel.org/stable/c/05a1fc5efdd8560f34a3af39c9cf1e1526cc3ddf","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c4dc012b027c9eb101583011089dea14d744e314","name":"https://git.kernel.org/stable/c/c4dc012b027c9eb101583011089dea14d744e314","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/e0ed5a36fb3ab9e7b9ee45cd17f09f6d5f594360","name":"https://git.kernel.org/stable/c/e0ed5a36fb3ab9e7b9ee45cd17f09f6d5f594360","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/6a5da3fa80affc948923f20a4e086177f505e86e","name":"https://git.kernel.org/stable/c/6a5da3fa80affc948923f20a4e086177f505e86e","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2025-40269","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-40269","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 02c56650f3c118d3752122996d96173d26bb13aa 480a1490c595a242f27493a4544b3efb21b29f6a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5ef30e443e6d3654cccecec99cf481a69a0a6d3b ab0b5e92fc36ee82c1bd01fe896d0f775ed5de41 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 99703c921864a318e3e8aae74fde071b1ff35bea 282aba56713bbc58155716b55ca7222b2d9cf3c8 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 2d50acd7dbd0682a56968ad9551341d7fc5b6eaf c4dc012b027c9eb101583011089dea14d744e314 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected aba41867dd66939d336fdf604e4d73b805d8039f e0ed5a36fb3ab9e7b9ee45cd17f09f6d5f594360 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected d288dc74f8cf95cb7ae0aaf245b7128627a49bf3 d67dde02049e632ba58d3c44a164a74b6a737154 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c 6a5da3fa80affc948923f20a4e086177f505e86e git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c 217d47255a2ec8b246f2725f5db9ac3f1d4109d7 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c ef592bf2232a2daa9fffa8881881fc9957ea56e9 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c ece3b981bb6620e47fac826a2156c090b1a936a0 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c 98e9d5e33bda8db875cc1a4fe99c192658e45ab6 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c d2c04f20ccc6c0d219e6d3038bab45bc66a178ad git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected f0bd62b64016508938df9babe47f65c2c727d25c 05a1fc5efdd8560f34a3af39c9cf1e1526cc3ddf git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.4.229 4.4.230 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.9.229 4.9.230 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.14.186 4.14.188 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 4.19.130 4.19.132 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.4.49 5.4.51 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.7.6 5.7.8 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.8","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.8 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.4.230 4.4.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.9.230 4.9.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.14.188 4.14.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 4.19.132 4.19.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.4.51 5.4.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.7.8 5.7.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.247 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.197 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.159 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.117 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.59 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.17.9 6.17.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2025","cve_id":"40269","cve":"CVE-2025-40269","epss":"0.001570000","percentile":"0.053610000","score_date":"2026-07-31","updated_at":"2026-08-01 00:10:35"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2025-40269","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","timestamp":"2026-06-16T20:14:17.883716Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2026-06-16T20:14:28.678Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"title":"CISA ADP Vulnrichment"}],"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["sound/usb/endpoint.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"480a1490c595a242f27493a4544b3efb21b29f6a","status":"affected","version":"02c56650f3c118d3752122996d96173d26bb13aa","versionType":"git"},{"lessThan":"ab0b5e92fc36ee82c1bd01fe896d0f775ed5de41","status":"affected","version":"5ef30e443e6d3654cccecec99cf481a69a0a6d3b","versionType":"git"},{"lessThan":"282aba56713bbc58155716b55ca7222b2d9cf3c8","status":"affected","version":"99703c921864a318e3e8aae74fde071b1ff35bea","versionType":"git"},{"lessThan":"c4dc012b027c9eb101583011089dea14d744e314","status":"affected","version":"2d50acd7dbd0682a56968ad9551341d7fc5b6eaf","versionType":"git"},{"lessThan":"e0ed5a36fb3ab9e7b9ee45cd17f09f6d5f594360","status":"affected","version":"aba41867dd66939d336fdf604e4d73b805d8039f","versionType":"git"},{"lessThan":"d67dde02049e632ba58d3c44a164a74b6a737154","status":"affected","version":"d288dc74f8cf95cb7ae0aaf245b7128627a49bf3","versionType":"git"},{"lessThan":"6a5da3fa80affc948923f20a4e086177f505e86e","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"217d47255a2ec8b246f2725f5db9ac3f1d4109d7","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"ef592bf2232a2daa9fffa8881881fc9957ea56e9","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"ece3b981bb6620e47fac826a2156c090b1a936a0","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"98e9d5e33bda8db875cc1a4fe99c192658e45ab6","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"d2c04f20ccc6c0d219e6d3038bab45bc66a178ad","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"05a1fc5efdd8560f34a3af39c9cf1e1526cc3ddf","status":"affected","version":"f0bd62b64016508938df9babe47f65c2c727d25c","versionType":"git"},{"lessThan":"4.4.230","status":"affected","version":"4.4.229","versionType":"semver"},{"lessThan":"4.9.230","status":"affected","version":"4.9.229","versionType":"semver"},{"lessThan":"4.14.188","status":"affected","version":"4.14.186","versionType":"semver"},{"lessThan":"4.19.132","status":"affected","version":"4.19.130","versionType":"semver"},{"lessThan":"5.4.51","status":"affected","version":"5.4.49","versionType":"semver"},{"lessThan":"5.7.8","status":"affected","version":"5.7.6","versionType":"semver"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["sound/usb/endpoint.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.8"},{"lessThan":"5.8","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"4.4.*","status":"unaffected","version":"4.4.230","versionType":"semver"},{"lessThanOrEqual":"4.9.*","status":"unaffected","version":"4.9.230","versionType":"semver"},{"lessThanOrEqual":"4.14.*","status":"unaffected","version":"4.14.188","versionType":"semver"},{"lessThanOrEqual":"4.19.*","status":"unaffected","version":"4.19.132","versionType":"semver"},{"lessThanOrEqual":"5.4.*","status":"unaffected","version":"5.4.51","versionType":"semver"},{"lessThanOrEqual":"5.7.*","status":"unaffected","version":"5.7.8","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.247","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.197","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.159","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.117","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.59","versionType":"semver"},{"lessThanOrEqual":"6.17.*","status":"unaffected","version":"6.17.9","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"6.18","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.4.230","versionStartIncluding":"4.4.229","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.9.230","versionStartIncluding":"4.9.229","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.14.188","versionStartIncluding":"4.14.186","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"4.19.132","versionStartIncluding":"4.19.130","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.4.51","versionStartIncluding":"5.4.49","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.7.8","versionStartIncluding":"5.7.6","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.247","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.197","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.159","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.117","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.59","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.17.9","versionStartIncluding":"5.8","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18","versionStartIncluding":"5.8","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: usb-audio: Fix potential overflow of PCM transfer buffer\n\nThe PCM stream data in USB-audio driver is transferred over USB URB\npacket buffers, and each packet size is determined dynamically.  The\npacket sizes are limited by some factors such as wMaxPacketSize USB\ndescriptor.  OTOH, in the current code, the actually used packet sizes\nare determined only by the rate and the PPS, which may be bigger than\nthe size limit above.  This results in a buffer overflow, as reported\nby syzbot.\n\nBasically when the limit is smaller than the calculated packet size,\nit implies that something is wrong, most likely a weird USB\ndescriptor.  So the best option would be just to return an error at\nthe parameter setup time before doing any further operations.\n\nThis patch introduces such a sanity check, and returns -EINVAL when\nthe packet size is greater than maxpacksize.  The comparison with\nep->packsize[1] alone should suffice since it's always equal or\ngreater than ep->packsize[0]."}],"metrics":[{"cvssV3_1":{"baseScore":7.8,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"providerMetadata":{"dateUpdated":"2026-07-30T06:02:08.221Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/480a1490c595a242f27493a4544b3efb21b29f6a"},{"url":"https://git.kernel.org/stable/c/ab0b5e92fc36ee82c1bd01fe896d0f775ed5de41"},{"url":"https://git.kernel.org/stable/c/282aba56713bbc58155716b55ca7222b2d9cf3c8"},{"url":"https://git.kernel.org/stable/c/c4dc012b027c9eb101583011089dea14d744e314"},{"url":"https://git.kernel.org/stable/c/e0ed5a36fb3ab9e7b9ee45cd17f09f6d5f594360"},{"url":"https://git.kernel.org/stable/c/d67dde02049e632ba58d3c44a164a74b6a737154"},{"url":"https://git.kernel.org/stable/c/6a5da3fa80affc948923f20a4e086177f505e86e"},{"url":"https://git.kernel.org/stable/c/217d47255a2ec8b246f2725f5db9ac3f1d4109d7"},{"url":"https://git.kernel.org/stable/c/ef592bf2232a2daa9fffa8881881fc9957ea56e9"},{"url":"https://git.kernel.org/stable/c/ece3b981bb6620e47fac826a2156c090b1a936a0"},{"url":"https://git.kernel.org/stable/c/98e9d5e33bda8db875cc1a4fe99c192658e45ab6"},{"url":"https://git.kernel.org/stable/c/d2c04f20ccc6c0d219e6d3038bab45bc66a178ad"},{"url":"https://git.kernel.org/stable/c/05a1fc5efdd8560f34a3af39c9cf1e1526cc3ddf"}],"title":"ALSA: usb-audio: Fix potential overflow of PCM transfer buffer","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2025-40269","datePublished":"2025-12-06T21:50:50.229Z","dateReserved":"2025-04-16T07:20:57.183Z","dateUpdated":"2026-07-30T06:02:08.221Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2025-12-06 22:15:54","lastModifiedDate":"2026-07-30 06:24:24","problem_types":[],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH","attackVector":"LOCAL","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":1.8,"impactScore":5.9}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-06-16T20:14:17.883716Z","id":"CVE-2025-40269","options":[{"exploitation":"none"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2025","CveId":"40269","Ordinal":"1","Title":"ALSA: usb-audio: Fix potential overflow of PCM transfer buffer","CVE":"CVE-2025-40269","Year":"2025"},"notes":[{"CveYear":"2025","CveId":"40269","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: usb-audio: Fix potential overflow of PCM transfer buffer\n\nThe PCM stream data in USB-audio driver is transferred over USB URB\npacket buffers, and each packet size is determined dynamically.  The\npacket sizes are limited by some factors such as wMaxPacketSize USB\ndescriptor.  OTOH, in the current code, the actually used packet sizes\nare determined only by the rate and the PPS, which may be bigger than\nthe size limit above.  This results in a buffer overflow, as reported\nby syzbot.\n\nBasically when the limit is smaller than the calculated packet size,\nit implies that something is wrong, most likely a weird USB\ndescriptor.  So the best option would be just to return an error at\nthe parameter setup time before doing any further operations.\n\nThis patch introduces such a sanity check, and returns -EINVAL when\nthe packet size is greater than maxpacksize.  The comparison with\nep->packsize[1] alone should suffice since it's always equal or\ngreater than ep->packsize[0].","Type":"Description","Title":"ALSA: usb-audio: Fix potential overflow of PCM transfer buffer"}]}}}