diff --git a/src/kernelcve.cpp b/src/kernelcve.cpp index 58af4fb..c1b9cc0 100644 --- a/src/kernelcve.cpp +++ b/src/kernelcve.cpp @@ -96,7 +96,6 @@ const std::vector& table() { {"CVE-2022-42720", "5.1", "6.1", "RCE", {"CONFIG_MAC80211"}, {}, "mac80211 BSS refcount UAF; remote (companion to 42719)."}, // Bluetooth (CONFIG_BT): remote over BR/EDR (BleedingTooth); proximity RCE. {"CVE-2020-12351", "4.8", "5.10", "RCE", {"CONFIG_BT"}, {}, "BleedingTooth: L2CAP A2MP type confusion; remote BT RCE."}, - {"CVE-2024-24246", "", "6.7", "LPE", {"CONFIG_QAT"}, {}, "QAT driver UAF (hardware-specific)."}, // --- misc high-signal --- {"CVE-2021-27365", "", "5.11.4", "LPE", {"CONFIG_SCSI_ISCSI_ATTRS"}, {}, "iSCSI netlink heap OOB."}, diff --git a/tests/unit/unit_tests.cpp b/tests/unit/unit_tests.cpp index c9f6b12..598bb98 100644 --- a/tests/unit/unit_tests.cpp +++ b/tests/unit/unit_tests.cpp @@ -933,6 +933,14 @@ static void test_kernelcve() { dp->reason.find("config unknown") != std::string::npos); CHECK(find_kcve(r, "CVE-2016-5195") == nullptr); // Dirty COW fixed 4.8.3 -> out of range + // CVE-2024-24246 is a qpdf heap-buffer-overflow, not a Linux/QAT CVE. + // Keep it out of the kernel checklist regardless of version or QAT config. + std::set qat = {"CONFIG_QAT"}; + for (const auto* version : {"3.4.0", "6.3", "6.6.86"}) { + CHECK(find_kcve(ft::kernel_cve_scan(version, NOCFG), "CVE-2024-24246") == nullptr); + CHECK(find_kcve(ft::kernel_cve_scan(version, &qat), "CVE-2024-24246") == nullptr); + } + // Config gating: NF_TABLES present -> nftables applies; io_uring absent -> ruled out. std::set cfg = {"CONFIG_NF_TABLES"}; auto r2 = ft::kernel_cve_scan("6.3", &cfg);