{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-63868","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-07-19T07:54:57.017Z","datePublished":"2026-07-19T14:18:37.823Z","dateUpdated":"2026-07-19T14:18:37.823Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-07-19T14:18:37.823Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: garp: fix unsigned integer underflow in garp_pdu_parse_attr\n\nThe receive-side GARP attribute parser computes dlen with reversed\noperands:\n\n        dlen = sizeof(*ga) - ga->len;\n\nga->len is the on-wire attribute length and includes the GARP attribute\nheader. For normal attributes with data, ga->len is larger than\nsizeof(*ga), so the subtraction underflows in unsigned arithmetic.\n\nThe resulting value is later passed to garp_attr_lookup(), whose length\nargument is u8. After truncation, the parsed data length usually no\nlonger matches the length stored for locally registered attributes, so\nreceived Join/Leave events are ignored. This breaks the GARP receive path\nfor common attributes, such as GVRP VLAN registration attributes.\n\nCompute the data length as the attribute length minus the header length."}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/802/garp.c"],"versions":[{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"29f28172afb2ae7b31e9bf3e978396f20b381688","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"973cf7c433d27f4d9556d0b7c332543be7ed7a6e","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"d8dcd14aa886b8effd83022c550669f4f262854b","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"74e02121be1dcc0efcd56ebdf0171d6129105659","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"d4c86ea09ae3e63ee5aa86e941fcc38e0e39874a","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"04e22fefac1af3e32f245e9045382348773b5d59","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"a11f1a671b1361f0f1278dc0041374f2730df73f","status":"affected","versionType":"git"},{"version":"eca9ebac651f774d8b10fce7c5d173c3c3d3394f","lessThan":"16e408e607a94b646fb14a2a98422c6877ae4b3c","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/802/garp.c"],"versions":[{"version":"2.6.27","status":"affected"},{"version":"0","lessThan":"2.6.27","status":"unaffected","versionType":"semver"},{"version":"5.10.259","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.210","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.176","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.143","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.94","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.36","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.0.13","lessThanOrEqual":"7.0.*","status":"unaffected","versionType":"semver"},{"version":"7.1","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":"2.6.27","versionEndExcluding":"5.10.259"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"5.15.210"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"6.1.176"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"6.6.143"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"6.12.94"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"6.18.36"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"7.0.13"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.27","versionEndExcluding":"7.1"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/29f28172afb2ae7b31e9bf3e978396f20b381688"},{"url":"https://git.kernel.org/stable/c/973cf7c433d27f4d9556d0b7c332543be7ed7a6e"},{"url":"https://git.kernel.org/stable/c/d8dcd14aa886b8effd83022c550669f4f262854b"},{"url":"https://git.kernel.org/stable/c/74e02121be1dcc0efcd56ebdf0171d6129105659"},{"url":"https://git.kernel.org/stable/c/d4c86ea09ae3e63ee5aa86e941fcc38e0e39874a"},{"url":"https://git.kernel.org/stable/c/04e22fefac1af3e32f245e9045382348773b5d59"},{"url":"https://git.kernel.org/stable/c/a11f1a671b1361f0f1278dc0041374f2730df73f"},{"url":"https://git.kernel.org/stable/c/16e408e607a94b646fb14a2a98422c6877ae4b3c"}],"title":"net: garp: fix unsigned integer underflow in garp_pdu_parse_attr","x_generator":{"engine":"bippy-1.2.0"}}}}