{"api_version":"1","generated_at":"2026-08-22T21:53:02+00:00","cve":"CVE-2026-74679","urls":{"html":"https://cve.report/CVE-2026-74679","api":"https://cve.report/api/cve/CVE-2026-74679.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-74679","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-74679"},"summary":{"title":"usb: gadget: f_ncm: Use unsigned int for ndp_index","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: f_ncm: Use unsigned int for ndp_index\n\nThe variable ndp_index is declared as a signed integer, but it stores\nthe return value of get_ncm(), which is unsigned.\n\nA malicious host can supply a large offset that overflows the signed\nndp_index, making it negative. Because ndp_index is compared against\nunsigned bounds, this negative value bypasses sanity checks and leads\nto an out-of-bounds read when calculating the address of the NDP\nblock (ntb_ptr + ndp_index).\n\nFix this by changing ndp_index to unsigned int to ensure consistent\nunsigned comparisons throughout the function.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-22 16:16:42","updated_at":"2026-08-22 16:16:42"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/d13f650a3485b58c124b3cda45597e8002c9c833","name":"https://git.kernel.org/stable/c/d13f650a3485b58c124b3cda45597e8002c9c833","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/6b1c8a9403a26cb0fed7a648916c74dc236da591","name":"https://git.kernel.org/stable/c/6b1c8a9403a26cb0fed7a648916c74dc236da591","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/d328fdc607fa1bb668ad512e1c918a120f78f337","name":"https://git.kernel.org/stable/c/d328fdc607fa1bb668ad512e1c918a120f78f337","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/5b2b3a3229a3f4c493ffdee53aee2f173b6f13b3","name":"https://git.kernel.org/stable/c/5b2b3a3229a3f4c493ffdee53aee2f173b6f13b3","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/9c8c6825a750fcd3efbe922847ca70ccd5a66857","name":"https://git.kernel.org/stable/c/9c8c6825a750fcd3efbe922847ca70ccd5a66857","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/11413d7ed42174b8f5d8d0b6a25d10dc88239b21","name":"https://git.kernel.org/stable/c/11413d7ed42174b8f5d8d0b6a25d10dc88239b21","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/a1c0deeba4a46481543d6b09c665f758c54c3a1a","name":"https://git.kernel.org/stable/c/a1c0deeba4a46481543d6b09c665f758c54c3a1a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/fc9e54e22845c4da29588ca0986cb7c795b5a262","name":"https://git.kernel.org/stable/c/fc9e54e22845c4da29588ca0986cb7c795b5a262","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-74679","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-74679","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a 9c8c6825a750fcd3efbe922847ca70ccd5a66857 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a a1c0deeba4a46481543d6b09c665f758c54c3a1a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a d13f650a3485b58c124b3cda45597e8002c9c833 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a 11413d7ed42174b8f5d8d0b6a25d10dc88239b21 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a 5b2b3a3229a3f4c493ffdee53aee2f173b6f13b3 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a d328fdc607fa1bb668ad512e1c918a120f78f337 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a fc9e54e22845c4da29588ca0986cb7c795b5a262 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 370af734dfaf8336b496b386e194648e097e248a 6b1c8a9403a26cb0fed7a648916c74dc236da591 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 3.17","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 3.17 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.265 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.216 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.183 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.152 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.104 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.45 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1.9 7.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/usb/gadget/function/f_ncm.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"9c8c6825a750fcd3efbe922847ca70ccd5a66857","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"a1c0deeba4a46481543d6b09c665f758c54c3a1a","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"d13f650a3485b58c124b3cda45597e8002c9c833","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"11413d7ed42174b8f5d8d0b6a25d10dc88239b21","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"5b2b3a3229a3f4c493ffdee53aee2f173b6f13b3","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"d328fdc607fa1bb668ad512e1c918a120f78f337","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"fc9e54e22845c4da29588ca0986cb7c795b5a262","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"},{"lessThan":"6b1c8a9403a26cb0fed7a648916c74dc236da591","status":"affected","version":"370af734dfaf8336b496b386e194648e097e248a","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/usb/gadget/function/f_ncm.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"3.17"},{"lessThan":"3.17","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.265","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.216","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.183","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.152","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.104","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.45","versionType":"semver"},{"lessThanOrEqual":"7.1.*","status":"unaffected","version":"7.1.9","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.2","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.265","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.216","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.183","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.152","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.104","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.45","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1.9","versionStartIncluding":"3.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2","versionStartIncluding":"3.17","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: f_ncm: Use unsigned int for ndp_index\n\nThe variable ndp_index is declared as a signed integer, but it stores\nthe return value of get_ncm(), which is unsigned.\n\nA malicious host can supply a large offset that overflows the signed\nndp_index, making it negative. Because ndp_index is compared against\nunsigned bounds, this negative value bypasses sanity checks and leads\nto an out-of-bounds read when calculating the address of the NDP\nblock (ntb_ptr + ndp_index).\n\nFix this by changing ndp_index to unsigned int to ensure consistent\nunsigned comparisons throughout the function."}],"providerMetadata":{"dateUpdated":"2026-08-22T15:32:47.499Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/9c8c6825a750fcd3efbe922847ca70ccd5a66857"},{"url":"https://git.kernel.org/stable/c/a1c0deeba4a46481543d6b09c665f758c54c3a1a"},{"url":"https://git.kernel.org/stable/c/d13f650a3485b58c124b3cda45597e8002c9c833"},{"url":"https://git.kernel.org/stable/c/11413d7ed42174b8f5d8d0b6a25d10dc88239b21"},{"url":"https://git.kernel.org/stable/c/5b2b3a3229a3f4c493ffdee53aee2f173b6f13b3"},{"url":"https://git.kernel.org/stable/c/d328fdc607fa1bb668ad512e1c918a120f78f337"},{"url":"https://git.kernel.org/stable/c/fc9e54e22845c4da29588ca0986cb7c795b5a262"},{"url":"https://git.kernel.org/stable/c/6b1c8a9403a26cb0fed7a648916c74dc236da591"}],"title":"usb: gadget: f_ncm: Use unsigned int for ndp_index","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-74679","datePublished":"2026-08-22T15:32:47.499Z","dateReserved":"2026-08-15T05:44:03.925Z","dateUpdated":"2026-08-22T15:32:47.499Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-22 16:16:42","lastModifiedDate":"2026-08-22 16:16:42","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"74679","Ordinal":"1","Title":"usb: gadget: f_ncm: Use unsigned int for ndp_index","CVE":"CVE-2026-74679","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"74679","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nusb: gadget: f_ncm: Use unsigned int for ndp_index\n\nThe variable ndp_index is declared as a signed integer, but it stores\nthe return value of get_ncm(), which is unsigned.\n\nA malicious host can supply a large offset that overflows the signed\nndp_index, making it negative. Because ndp_index is compared against\nunsigned bounds, this negative value bypasses sanity checks and leads\nto an out-of-bounds read when calculating the address of the NDP\nblock (ntb_ptr + ndp_index).\n\nFix this by changing ndp_index to unsigned int to ensure consistent\nunsigned comparisons throughout the function.","Type":"Description","Title":"usb: gadget: f_ncm: Use unsigned int for ndp_index"}]}}}