{"id":"CVE-2024-38662","revision":"1abd3411f0b3444c9c5fb0724feaa566","records":[{"revision":"1abd3411f0b3444c9c5fb0724feaa566","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2024-38662","aliases":[],"title":"bpf: Allow delete from sockmap/sockhash only if update is allowed","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Allow delete from sockmap/sockhash only if update is allowed\n\nWe have seen an influx of syzkaller reports where a BPF program attached to\na tracepoint triggers a locking rule violation by performing a map_delete\non a sockmap/sockhash.\n\nWe don't intend to support this artificial use scenario. Extend the\nexisting verifier allowed-program-type check for updating sockmap/sockhash\nto also cover deleting from a map.\n\nFrom now on only BPF programs which were previously allowed to update\nsockmap/sockhash can delete from these map types.","state":0,"publishedAt":"2024-06-21T11:15:12.202+00:00","modifiedAt":"2026-10-15T00:43:52.945+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"kernel/bpf/verifier.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"dd54b48db0c822ae7b520bc80751f0a0a173ef75\",\n                            \"lessThan\": \"29467edc23818dc5a33042ffb4920b49b090e63d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"d1e73fb19a4c872d7a399ad3c66e8ca30e0875ec\",\n                            \"lessThan\": \"11e8ecc5b86037fec43d07b1c162e233e131b1d9\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"a44770fed86515eedb5a7c00b787f847ebb134a5\",\n                            \"lessThan\": \"6693b172f008846811f48a099f33effc26068e1e\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"668b3074aa14829e2ac2759799537a93b60fef86\",\n                            \"lessThan\": \"000a65bf1dc04fb2b65e2abf116f0bc0fc2ee7b1\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"ff91059932401894e6c86341915615c5eb0eca48\",\n                            \"lessThan\": \"b81e1c5a3c70398cf76631ede63a03616ed1ba3c\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"ff91059932401894e6c86341915615c5eb0eca48\",\n                            \"lessThan\": \"98e948fb60d41447fd8d2d0c3b8637fc6b6dc26d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"f7990498b05ac41f7d6a190dc0418ef1d21bf058\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"6af057ccdd8e7619960aca1f0428339f213b31cd\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"5.10.215\",\n                            \"lessThan\": \"5.10.219\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.154\",\n                            \"lessThan\": \"5.15.161\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.85\",\n                            \"lessThan\": \"6.1.93\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.26\",\n                            \"lessThan\": \"6.6.33\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.4.274\",\n                            \"lessThan\": \"5.5\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.8.5\",\n                            \"lessThan\": \"6.9\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"kernel/bpf/verifier.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"6.9\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"6.9\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.219\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.161\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.93\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.33\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.9.4\",\n                            \"lessThanOrEqual\": \"6.9.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.10\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/29467edc23818dc5a33042ffb4920b49b090e63d","https://git.kernel.org/stable/c/11e8ecc5b86037fec43d07b1c162e233e131b1d9","https://git.kernel.org/stable/c/6693b172f008846811f48a099f33effc26068e1e","https://git.kernel.org/stable/c/000a65bf1dc04fb2b65e2abf116f0bc0fc2ee7b1","https://git.kernel.org/stable/c/b81e1c5a3c70398cf76631ede63a03616ed1ba3c","https://git.kernel.org/stable/c/98e948fb60d41447fd8d2d0c3b8637fc6b6dc26d"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2024-38662","license":"CVE Program Terms of Use","key":"cve-program:CVE-2024-38662","identifiers":["CVE-2024-38662"]},"retained":false,"historicalAffected":[]}],"coverage":[]}