[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"repo-stars":3,"vuln-CVE-2024-26960":6},{"stargazers_count":4,"fetched_at":5},7,"2026-06-04T08:53:30.047Z",{"id":7,"descriptions":8,"cisa":9,"weaknesses":10,"exploits":28,"aliases":29,"duplicate_of":9,"upstream":30,"downstream":31,"duplicates":104,"related":105,"reserved_at":9,"published_at":114,"modified_at":115,"state":116,"summary":117,"references_raw":126,"kevs":168,"epss":169,"epss_history":172,"metrics":381,"affected":389},"CVE-2024-26960","In the Linux kernel, the following vulnerability has been resolved:\n\nmm: swap: fix race between free_swap_and_cache() and swapoff()\n\nThere was previously a theoretical window where swapoff() could run and\nteardown a swap_info_struct while a call to free_swap_and_cache() was\nrunning in another thread.  This could cause, amongst other bad\npossibilities, swap_page_trans_huge_swapped() (called by\nfree_swap_and_cache()) to access the freed memory for swap_map.\n\nThis is a theoretical problem and I haven't been able to provoke it from a\ntest case.  But there has been agreement based on code review that this is\npossible (see link below).\n\nFix it by using get_swap_device()/put_swap_device(), which will stall\nswapoff().  There was an extra check in _swap_info_get() to confirm that\nthe swap entry was not free.  This isn't present in get_swap_device()\nbecause it doesn't make sense in general due to the race between getting\nthe reference and swapoff.  So I've added an equivalent check directly in\nfree_swap_and_cache().\n\nDetails of how to provoke one possible issue (thanks to David Hildenbrand\nfor deriving this):\n\n--8\u003C-----\n\n__swap_entry_free() might be the last user and result in\n\"count == SWAP_HAS_CACHE\".\n\nswapoff->try_to_unuse() will stop as soon as soon as si->inuse_pages==0.\n\nSo the question is: could someone reclaim the folio and turn\nsi->inuse_pages==0, before we completed swap_page_trans_huge_swapped().\n\nImagine the following: 2 MiB folio in the swapcache. Only 2 subpages are\nstill references by swap entries.\n\nProcess 1 still references subpage 0 via swap entry.\nProcess 2 still references subpage 1 via swap entry.\n\nProcess 1 quits. Calls free_swap_and_cache().\n-> count == SWAP_HAS_CACHE\n[then, preempted in the hypervisor etc.]\n\nProcess 2 quits. Calls free_swap_and_cache().\n-> count == SWAP_HAS_CACHE\n\nProcess 2 goes ahead, passes swap_page_trans_huge_swapped(), and calls\n__try_to_reclaim_swap().\n\n__try_to_reclaim_swap()->folio_free_swap()->delete_from_swap_cache()->\nput_swap_folio()->free_swap_slot()->swapcache_free_entries()->\nswap_entry_free()->swap_range_free()->\n...\nWRITE_ONCE(si->inuse_pages, si->inuse_pages - nr_entries);\n\nWhat stops swapoff to succeed after process 2 reclaimed the swap cache\nbut before process1 finished its call to swap_page_trans_huge_swapped()?\n\n--8\u003C-----",null,[11],{"_key":12,"id":12,"name":13,"description":14,"type":15,"status":16,"abstraction":17,"likelihood_of_exploit":18,"capec":19},"CWE-362","Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')","The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.","weakness","Draft","Class","Medium",[20,24],{"id":21,"name":22,"techniques":23},"CAPEC-26","Leveraging Race Conditions",[],{"id":25,"name":26,"techniques":27},"CAPEC-29","Leveraging Time-of-Check and Time-of-Use (TOCTOU) Race Conditions",[],[],[],[],[32,34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102],{"_key":33},"SUSE-SU-2024:1644-1",{"_key":35},"SUSE-SU-2024:1659-1",{"_key":37},"SUSE-SU-2024:2203-1",{"_key":39},"SUSE-SU-2024:1663-1",{"_key":41},"SUSE-SU-2024:2135-1",{"_key":43},"SUSE-SU-2024:2973-1",{"_key":45},"DLA-3842-1",{"_key":47},"DSA-5681-1",{"_key":49},"SUSE-SU-2025:20008-1",{"_key":51},"SUSE-SU-2025:20028-1",{"_key":53},"DEBIAN-CVE-2024-26960",{"_key":55},"RHSA-2024:5101",{"_key":57},"RHSA-2024:5102",{"_key":59},"RHSA-2024:9315",{"_key":61},"RHSA-2025:1658",{"_key":63},"LSN-0107-1",{"_key":65},"LSN-0108-1",{"_key":67},"UBUNTU-CVE-2024-26960",{"_key":69},"USN-7069-1",{"_key":71},"USN-7069-2",{"_key":73},"USN-7073-1",{"_key":75},"USN-7073-2",{"_key":77},"USN-6816-1",{"_key":79},"USN-6817-1",{"_key":81},"USN-6817-2",{"_key":83},"USN-6817-3",{"_key":85},"USN-6878-1",{"_key":87},"USN-6898-1",{"_key":89},"USN-6898-2",{"_key":91},"USN-6898-3",{"_key":93},"USN-6898-4",{"_key":95},"USN-6917-1",{"_key":97},"USN-6919-1",{"_key":99},"USN-6927-1",{"_key":101},"USN-7019-1",{"_key":103},"USN-7119-1",[],[106,107,108,109,110,111,112,113],{"_key":33},{"_key":35},{"_key":37},{"_key":39},{"_key":41},{"_key":43},{"_key":49},{"_key":51},"2024-05-01T05:19:12.112Z","2026-05-12T11:50:50.097Z","Modified",{"cisa_kev":118,"cisa_ransomware":118,"cisa_vendor":9,"epss_severity":119,"epss_score":120,"severity":121,"severity_score":122,"severity_version":123,"severity_source":124,"severity_vector":125,"severity_status":116},false,"low",0.00006,"medium",5.5,"v3.1","cve.org","CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",[127,133,137,141,145,149,153,157,164],{"url":128,"sources":129,"tags":131},"https://git.kernel.org/stable/c/d85c11c97ecf92d47a4b29e3faca714dc1f18d0d",[124,130],"nvd",[132],"Patch",{"url":134,"sources":135,"tags":136},"https://git.kernel.org/stable/c/2da5568ee222ce0541bfe446a07998f92ed1643e",[124,130],[132],{"url":138,"sources":139,"tags":140},"https://git.kernel.org/stable/c/1ede7f1d7eed1738d1b9333fd1e152ccb450b86a",[124,130],[132],{"url":142,"sources":143,"tags":144},"https://git.kernel.org/stable/c/0f98f6d2fb5fad00f8299b84b85b6bc1b6d7d19a",[124,130],[132],{"url":146,"sources":147,"tags":148},"https://git.kernel.org/stable/c/3ce4c4c653e4e478ecb15d3c88e690f12cbf6b39",[124,130],[132],{"url":150,"sources":151,"tags":152},"https://git.kernel.org/stable/c/363d17e7f7907c8e27a9e86968af0eaa2301787b",[124,130],[132],{"url":154,"sources":155,"tags":156},"https://git.kernel.org/stable/c/82b1c07a0af603e3c47b906c8e991dc96f01688e",[124,130],[132],{"url":158,"sources":159,"tags":160},"https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html",[124,130],[161,162,163],"X Transferred","Mailing List","Third Party Advisory",{"url":165,"sources":166,"tags":167},"https://cert-portal.siemens.com/productcert/html/ssa-265688.html",[124,130],[],[],{"date":170,"score":120,"percentile":171},"2026-06-03",0.00365,[173,177,179,182,184,187,189,191,193,195,197,199,201,203,205,209,212,215,218,220,222,225,227,229,231,233,235,237,239,241,243,246,248,250,253,256,259,262,265,268,271,273,275,277,280,283,285,287,289,291,293,296,298,300,302,304,306,308,310,312,314,317,320,322,324,326,328,331,333,335,337,339,341,343,346,348,351,353,355,357,359,361,363,365,367,369,371,373,376,379],{"date":174,"score":175,"percentile":176},"2025-11-04",0.00005,0.00232,{"date":178,"score":175,"percentile":176},"2025-11-05",{"date":180,"score":175,"percentile":181},"2025-11-06",0.00233,{"date":183,"score":175,"percentile":176},"2025-11-07",{"date":185,"score":175,"percentile":186},"2025-11-08",0.00231,{"date":188,"score":175,"percentile":176},"2025-11-09",{"date":190,"score":175,"percentile":186},"2025-11-10",{"date":192,"score":175,"percentile":181},"2025-11-11",{"date":194,"score":175,"percentile":176},"2025-11-12",{"date":196,"score":175,"percentile":181},"2025-11-13",{"date":198,"score":175,"percentile":181},"2025-11-14",{"date":200,"score":175,"percentile":176},"2025-11-15",{"date":202,"score":175,"percentile":176},"2025-11-16",{"date":204,"score":175,"percentile":176},"2025-11-17",{"date":206,"score":207,"percentile":208},"2025-11-18",0.0007,0.17403,{"date":210,"score":207,"percentile":211},"2025-11-19",0.17422,{"date":213,"score":207,"percentile":214},"2025-11-20",0.17397,{"date":216,"score":175,"percentile":217},"2025-11-21",0.00235,{"date":219,"score":175,"percentile":217},"2025-11-22",{"date":221,"score":175,"percentile":217},"2025-11-23",{"date":223,"score":175,"percentile":224},"2025-11-24",0.00234,{"date":226,"score":175,"percentile":181},"2025-11-25",{"date":228,"score":175,"percentile":181},"2025-11-26",{"date":230,"score":175,"percentile":181},"2025-11-27",{"date":232,"score":175,"percentile":181},"2025-11-28",{"date":234,"score":175,"percentile":181},"2025-11-29",{"date":236,"score":175,"percentile":181},"2025-11-30",{"date":238,"score":175,"percentile":186},"2025-12-01",{"date":240,"score":175,"percentile":186},"2025-12-02",{"date":242,"score":175,"percentile":176},"2025-12-03",{"date":244,"score":175,"percentile":245},"2025-12-04",0.00238,{"date":247,"score":175,"percentile":245},"2025-12-05",{"date":249,"score":175,"percentile":245},"2025-12-06",{"date":251,"score":175,"percentile":252},"2025-12-07",0.00237,{"date":254,"score":175,"percentile":255},"2025-12-08",0.00239,{"date":257,"score":175,"percentile":258},"2025-12-09",0.00248,{"date":260,"score":175,"percentile":261},"2025-12-10",0.00249,{"date":263,"score":175,"percentile":264},"2025-12-11",0.00252,{"date":266,"score":175,"percentile":267},"2025-12-12",0.00257,{"date":269,"score":175,"percentile":270},"2025-12-13",0.00256,{"date":272,"score":175,"percentile":258},"2025-12-14",{"date":274,"score":175,"percentile":258},"2025-12-15",{"date":276,"score":175,"percentile":261},"2025-12-16",{"date":278,"score":175,"percentile":279},"2025-12-17",0.00245,{"date":281,"score":175,"percentile":282},"2025-12-18",0.00246,{"date":284,"score":175,"percentile":279},"2025-12-19",{"date":286,"score":175,"percentile":279},"2025-12-20",{"date":288,"score":175,"percentile":279},"2025-12-21",{"date":290,"score":175,"percentile":279},"2025-12-22",{"date":292,"score":175,"percentile":279},"2025-12-23",{"date":294,"score":175,"percentile":295},"2025-12-24",0.00244,{"date":297,"score":175,"percentile":295},"2025-12-25",{"date":299,"score":175,"percentile":295},"2025-12-26",{"date":301,"score":175,"percentile":258},"2025-12-27",{"date":303,"score":175,"percentile":295},"2025-12-28",{"date":305,"score":175,"percentile":295},"2025-12-29",{"date":307,"score":175,"percentile":279},"2025-12-30",{"date":309,"score":175,"percentile":279},"2025-12-31",{"date":311,"score":175,"percentile":295},"2026-01-01",{"date":313,"score":175,"percentile":279},"2026-01-02",{"date":315,"score":175,"percentile":316},"2026-01-03",0.00243,{"date":318,"score":175,"percentile":319},"2026-01-04",0.00236,{"date":321,"score":175,"percentile":319},"2026-01-05",{"date":323,"score":175,"percentile":319},"2026-01-06",{"date":325,"score":175,"percentile":217},"2026-01-07",{"date":327,"score":175,"percentile":319},"2026-01-08",{"date":329,"score":175,"percentile":330},"2026-01-09",0.0024,{"date":332,"score":175,"percentile":330},"2026-01-10",{"date":334,"score":175,"percentile":330},"2026-01-11",{"date":336,"score":175,"percentile":245},"2026-01-12",{"date":338,"score":175,"percentile":245},"2026-01-13",{"date":340,"score":175,"percentile":255},"2026-01-14",{"date":342,"score":175,"percentile":255},"2026-01-15",{"date":344,"score":175,"percentile":345},"2026-01-16",0.00241,{"date":347,"score":175,"percentile":345},"2026-01-17",{"date":349,"score":175,"percentile":350},"2026-01-18",0.00242,{"date":352,"score":175,"percentile":350},"2026-01-19",{"date":354,"score":175,"percentile":255},"2026-01-20",{"date":356,"score":175,"percentile":255},"2026-01-21",{"date":358,"score":175,"percentile":330},"2026-01-22",{"date":360,"score":175,"percentile":345},"2026-01-23",{"date":362,"score":175,"percentile":316},"2026-01-24",{"date":364,"score":175,"percentile":316},"2026-01-25",{"date":366,"score":175,"percentile":316},"2026-01-26",{"date":368,"score":175,"percentile":282},"2026-01-27",{"date":370,"score":175,"percentile":279},"2026-01-28",{"date":372,"score":175,"percentile":282},"2026-01-29",{"date":374,"score":175,"percentile":375},"2026-01-30",0.0025,{"date":377,"score":175,"percentile":378},"2026-01-31",0.00251,{"date":380,"score":175,"percentile":282},"2026-02-01",[382,387],{"source":124,"cvss_v2_0":9,"cvss_v3_0":9,"cvss_v3_1":383,"cvss_v4_0":9},{"baseScore":122,"baseSeverity":384,"vectorString":125,"impactScore":385,"exploitabilityScore":386},"MEDIUM",6,4.6,{"source":130,"cvss_v2_0":9,"cvss_v3_0":9,"cvss_v3_1":388,"cvss_v4_0":9},{"baseScore":122,"baseSeverity":384,"vectorString":125,"impactScore":385,"exploitabilityScore":386},[390,399,431],{"ecosystem":9,"name":391,"vendor":392,"product":393,"cpe_part":394,"purl_type":9,"purl_namespace":9,"purl_name":9,"source":9,"versions":395},"debian linux","debian","debian_linux","o",[396],{"version":397,"is_range":118,"range_type":398,"version_start":9,"version_start_type":9,"version_end":9,"version_end_type":9,"fixed_in":9},"10.0","cpe",{"ecosystem":9,"name":400,"vendor":401,"product":401,"cpe_part":402,"purl_type":9,"purl_namespace":9,"purl_name":9,"source":9,"versions":403},"Linux","linux","a",[404,411,414,417,420,423,426,429],{"version":405,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":409,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C d85c11c97ecf92d47a4b29e3faca714dc1f18d0d",true,"7c00bafee87c7bac7ed9eced7c161f8e5332cb4e","including","d85c11c97ecf92d47a4b29e3faca714dc1f18d0d","excluding",{"version":412,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":413,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 2da5568ee222ce0541bfe446a07998f92ed1643e","2da5568ee222ce0541bfe446a07998f92ed1643e",{"version":415,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":416,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 1ede7f1d7eed1738d1b9333fd1e152ccb450b86a","1ede7f1d7eed1738d1b9333fd1e152ccb450b86a",{"version":418,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":419,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 0f98f6d2fb5fad00f8299b84b85b6bc1b6d7d19a","0f98f6d2fb5fad00f8299b84b85b6bc1b6d7d19a",{"version":421,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":422,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 3ce4c4c653e4e478ecb15d3c88e690f12cbf6b39","3ce4c4c653e4e478ecb15d3c88e690f12cbf6b39",{"version":424,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":425,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 363d17e7f7907c8e27a9e86968af0eaa2301787b","363d17e7f7907c8e27a9e86968af0eaa2301787b",{"version":427,"is_range":406,"range_type":124,"version_start":407,"version_start_type":408,"version_end":428,"version_end_type":410,"fixed_in":9},">= 7c00bafee87c7bac7ed9eced7c161f8e5332cb4e, \u003C 82b1c07a0af603e3c47b906c8e991dc96f01688e","82b1c07a0af603e3c47b906c8e991dc96f01688e",{"version":430,"is_range":118,"range_type":124,"version_start":430,"version_start_type":408,"version_end":430,"version_end_type":408,"fixed_in":9},"4.11",{"ecosystem":9,"name":432,"vendor":401,"product":433,"cpe_part":394,"purl_type":9,"purl_namespace":9,"purl_name":9,"source":9,"versions":434},"linux kernel","linux_kernel",[435,438,442,446,450,454],{"version":436,"is_range":406,"range_type":398,"version_start":430,"version_start_type":408,"version_end":437,"version_end_type":410,"fixed_in":9},"gte4.11_lt5.10.215","5.10.215",{"version":439,"is_range":406,"range_type":398,"version_start":440,"version_start_type":408,"version_end":441,"version_end_type":410,"fixed_in":9},"gte5.11_lt5.15.154","5.11","5.15.154",{"version":443,"is_range":406,"range_type":398,"version_start":444,"version_start_type":408,"version_end":445,"version_end_type":410,"fixed_in":9},"gte5.16_lt6.1.84","5.16","6.1.84",{"version":447,"is_range":406,"range_type":398,"version_start":448,"version_start_type":408,"version_end":449,"version_end_type":410,"fixed_in":9},"gte6.2_lt6.6.24","6.2","6.6.24",{"version":451,"is_range":406,"range_type":398,"version_start":452,"version_start_type":408,"version_end":453,"version_end_type":410,"fixed_in":9},"gte6.7_lt6.7.12","6.7","6.7.12",{"version":455,"is_range":406,"range_type":398,"version_start":456,"version_start_type":408,"version_end":457,"version_end_type":410,"fixed_in":9},"gte6.8_lt6.8.3","6.8","6.8.3"]