In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: restore set elements when delete set fails
From abort path, nftmapelemactivate() needs to restore refcounters to the original state. Currently, it uses the set->ops->walk() to iterate over these set elements. The existing set iterator skips inactive elements in the next generation, this does not work from the abort path to restore the original state since it has to skip active elements instead (not inactive ones).
This patch moves the check for inactive elements to the set iterator callback, then it reverses the logic for the .activate case which needs to skip active elements.
Toggle next generation bit for elements when delete set command is invoked and call nft_clear() from .activate (abort) path to restore the next generation bit.
The splat below shows an object in mappings memleak:
[43929.457523] ------------[ cut here ]------------ [43929.457532] WARNING: CPU: 0 PID: 1139 at include/net/netfilter/nftables.h:1237 nftsetelemdatadeactivate+0xe4/0xf0 [nftables] [...] [43929.458014] RIP: 0010:nftsetelemdatadeactivate+0xe4/0xf0 [nftables] [43929.458076] Code: 83 f8 01 77 ab 49 8d 7c 24 08 e8 37 5e d0 de 49 8b 6c 24 08 48 8d 7d 50 e8 e9 5c d0 de 8b 45 50 8d 50 ff 89 55 50 85 c0 75 86 <0f> 0b eb 82 0f 0b eb b3 0f 1f 40 00 90 90 90 90 90 90 90 90 90 90 [43929.458081] RSP: 0018:ffff888140f9f4b0 EFLAGS: 00010246 [43929.458086] RAX: 0000000000000000 RBX: ffff8881434f5288 RCX: dffffc0000000000 [43929.458090] RDX: 00000000ffffffff RSI: ffffffffa26d28a7 RDI: ffff88810ecc9550 [43929.458093] RBP: ffff88810ecc9500 R08: 0000000000000001 R09: ffffed10281f3e8f [43929.458096] R10: 0000000000000003 R11: ffff0000ffff0000 R12: ffff8881434f52a0 [43929.458100] R13: ffff888140f9f5f4 R14: ffff888151c7a800 R15: 0000000000000002 [43929.458103] FS: 00007f0c687c4740(0000) GS:ffff888390800000(0000) knlGS:0000000000000000 [43929.458107] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [43929.458111] CR2: 00007f58dbe5b008 CR3: 0000000123602005 CR4: 00000000001706f0 [43929.458114] Call Trace: [43929.458118] <TASK> [43929.458121] ? _warn+0x9f/0x1a0 [43929.458127] ? nftsetelemdatadeactivate+0xe4/0xf0 [nftables] [43929.458188] ? reportbug+0x1b1/0x1e0 [43929.458196] ? handlebug+0x3c/0x70 [43929.458200] ? excinvalidop+0x17/0x40 [43929.458211] ? nftsetelemdatadeactivate+0xd7/0xf0 [nftables] [43929.458271] ? nftsetelemdatadeactivate+0xe4/0xf0 [nftables] [43929.458332] nftmapelemdeactivate+0x24/0x30 [nftables] [43929.458392] nftrhashwalk+0xdd/0x180 [nftables] [43929.458453] ? _pfxnftrhashwalk+0x10/0x10 [nftables] [43929.458512] ? rbinsertcolor+0x2e/0x280 [43929.458520] nftmapdeactivate+0xdc/0x1e0 [nftables] [43929.458582] ? _pfxnftmapdeactivate+0x10/0x10 [nftables] [43929.458642] ? _pfxnftmapelemdeactivate+0x10/0x10 [nftables] [43929.458701] ? _rcureadunlock+0x46/0x70 [43929.458709] nftdelset+0xff/0x110 [nftables] [43929.458769] nftflushtable+0x16f/0x460 [nftables] [43929.458830] nftablesdeltable+0x501/0x580 [nf_tables]
[
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_validate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 563.0,
"function_hash": "145513300468044491148622210033888617695"
},
"id": "CVE-2024-27012-018f3139"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c",
"function": "nft_rhash_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 649.0,
"function_hash": "230881265436339835533805444937031166843"
},
"id": "CVE-2024-27012-03fdeb00"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_bind_check_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 147.0,
"function_hash": "336818743617223638780041499789803309923"
},
"id": "CVE-2024-27012-17a34b3f"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_bind_check_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 147.0,
"function_hash": "336818743617223638780041499789803309923"
},
"id": "CVE-2024-27012-1b318c52"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_mapelem_deactivate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 158.0,
"function_hash": "28889876189893494676058566938504209635"
},
"id": "CVE-2024-27012-1ebf134c"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_mapelem_deactivate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 158.0,
"function_hash": "28889876189893494676058566938504209635"
},
"id": "CVE-2024-27012-20c0699f"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_mapelem_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 158.0,
"function_hash": "28889876189893494676058566938504209635"
},
"id": "CVE-2024-27012-2582c167"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_validate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 563.0,
"function_hash": "145513300468044491148622210033888617695"
},
"id": "CVE-2024-27012-2d4efdeb"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c",
"function": "nft_bitmap_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 441.0,
"function_hash": "38311988562102344294347833590652435498"
},
"id": "CVE-2024-27012-380184b4"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c",
"function": "nft_rhash_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 649.0,
"function_hash": "230881265436339835533805444937031166843"
},
"id": "CVE-2024-27012-3857964e"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_dump_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 332.0,
"function_hash": "210937068684215567310869178744614805198"
},
"id": "CVE-2024-27012-420d53e7"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_map_catchall_deactivate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 341.0,
"function_hash": "15796108184662394750065977010323022202"
},
"id": "CVE-2024-27012-43fd01f8"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c",
"function": "nft_bitmap_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 359.0,
"function_hash": "48028491674230053033005634163927737629"
},
"id": "CVE-2024-27012-4d1b0ad8"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_map_catchall_deactivate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 341.0,
"function_hash": "15796108184662394750065977010323022202"
},
"id": "CVE-2024-27012-50df0a53"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"line_hashes": [
"231373635767567278999067233402073167811",
"50018911392741103374456091635549622758",
"330910342152133049481278679255362958185",
"186330453336257747454745371004931032632",
"273543286783939021734457502345374944713",
"206396323994007859118827417824885063117",
"50634266769553784879352785604525026067",
"196987013766012434243119619685353704059",
"89134543878679570604583978054897370119",
"271773574320469279062866997569242193650",
"54931238929218690765966085080510921598",
"301348416602551774434773720800410613879",
"37091984508099944188686418737547077834",
"146188213393231817762124325254727930313",
"206396323994007859118827417824885063117",
"50634266769553784879352785604525026067",
"196987013766012434243119619685353704059",
"190469015056840858751076782330806088071"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-54db230d"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c",
"function": "nft_bitmap_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 441.0,
"function_hash": "38311988562102344294347833590652435498"
},
"id": "CVE-2024-27012-554c0848"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"line_hashes": [
"325469765854163019668405707016861245510",
"255622315107603824579652985679346807977",
"268329924371239060920460189383612967768",
"193429009474662370158441837235075907214",
"200875760795777776039274982206222909466",
"220193051926336681992905134036335361732",
"153639381084221764987053345895122821943",
"241273538153080657950177132775934095433",
"36366643463413336629326765849470917895",
"332393561979096129806375576979822449692",
"98926071085738319117234551850681324236",
"163747042631050107958854328284564346333",
"301745052082863377199066224422354677864",
"106869233819193320114035671483208521933",
"140895821800516732917725462220032204806",
"309160558550021990721242111430070721096",
"189919149759821690878601984409385931802",
"274334851868251095835622785062662871388",
"219115371251170223661893491947219534484",
"303316438009972127215304330342865645787",
"137442600475037348033257063221144924310",
"125775448725405769629034489446419019284",
"325469765854163019668405707016861245510",
"228080567110901617988239450982777447344",
"325088483075048536431734990149910568862",
"198501076732061187468902056256739481167",
"325469765854163019668405707016861245510",
"125970614415947568221799130495475940383",
"298408214895073674513412011134735052707",
"109672810582814063396299809687808534792",
"115001918299784777348784638630553466591",
"179711463991564892580983512833334067321",
"107811095499285724401384795038750067030",
"247996063613606268531810954433080185257",
"96675913368134251317082190008415936962",
"88061092795505715613824023292989765613",
"338137418183691833611317500896078624207",
"246830179721434962082289490066697945191",
"7671995198499348017415976280924004383",
"308828165145742835667647369416032474892",
"325469765854163019668405707016861245510",
"242797689000788135576886226728462546489",
"34001020728459550043077784009082860693",
"154596277430936193298553028620948543306",
"48423834763853304598969214749005606287",
"145366424902623180499557115225245548466",
"82345810380380902730254901689185264452",
"153409046584919389346039658478505919905"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-56441b97"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"line_hashes": [
"290598202839798202292015625436082925965",
"137913967526532787862533739042468214208",
"272934969508173577686418819674601475288",
"183065611970485047921212610045265138575",
"28032199360333259268949128012899975948",
"290127655630925403446312001817279495740",
"224696286509540468333338516408630497642",
"276633129109696302982201653184438639792",
"209036412662118822921934990897791035726"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-605241f2"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"line_hashes": [
"231373635767567278999067233402073167811",
"50018911392741103374456091635549622758",
"330910342152133049481278679255362958185",
"186330453336257747454745371004931032632",
"273543286783939021734457502345374944713",
"206396323994007859118827417824885063117",
"50634266769553784879352785604525026067",
"196987013766012434243119619685353704059",
"89134543878679570604583978054897370119",
"271773574320469279062866997569242193650",
"54931238929218690765966085080510921598",
"301348416602551774434773720800410613879",
"37091984508099944188686418737547077834",
"146188213393231817762124325254727930313",
"206396323994007859118827417824885063117",
"50634266769553784879352785604525026067",
"196987013766012434243119619685353704059",
"190469015056840858751076782330806088071"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-69fe51b5"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c",
"function": "nft_hash_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 509.0,
"function_hash": "87109329057846504056320078820864332223"
},
"id": "CVE-2024-27012-6c0ca979"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_loop_check_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 291.0,
"function_hash": "23852731281863224646085997825843741658"
},
"id": "CVE-2024-27012-6c9930cf"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_map_catchall_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 341.0,
"function_hash": "15796108184662394750065977010323022202"
},
"id": "CVE-2024-27012-6d660a24"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 253.0,
"function_hash": "118625974050932364279883395369813745023"
},
"id": "CVE-2024-27012-6d6e3706"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_dump_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 332.0,
"function_hash": "210937068684215567310869178744614805198"
},
"id": "CVE-2024-27012-701a7fd0"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nf_tables_loop_check_setelem"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 291.0,
"function_hash": "23852731281863224646085997825843741658"
},
"id": "CVE-2024-27012-773c2fff"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_rbtree.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"line_hashes": [
"170720030053774054210551054747330640047",
"188282922225524340567054782135122132090",
"277839774702197965194861537085475616080",
"137641695057064608899355830582941741821",
"171485523188732840547783654078384023414",
"32709121817065576902737275507846036282",
"102311696390026611965462400488634405074",
"91306907713932136779824340196259090871",
"252211631174215767073414461424791401098"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-7d4a1dd7"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"line_hashes": [
"325469765854163019668405707016861245510",
"255622315107603824579652985679346807977",
"268329924371239060920460189383612967768",
"193429009474662370158441837235075907214",
"200875760795777776039274982206222909466",
"220193051926336681992905134036335361732",
"153639381084221764987053345895122821943",
"241273538153080657950177132775934095433",
"36366643463413336629326765849470917895",
"332393561979096129806375576979822449692",
"98926071085738319117234551850681324236",
"163747042631050107958854328284564346333",
"301745052082863377199066224422354677864",
"106869233819193320114035671483208521933",
"140895821800516732917725462220032204806",
"309160558550021990721242111430070721096",
"189919149759821690878601984409385931802",
"274334851868251095835622785062662871388",
"219115371251170223661893491947219534484",
"303316438009972127215304330342865645787",
"137442600475037348033257063221144924310",
"125775448725405769629034489446419019284",
"325469765854163019668405707016861245510",
"228080567110901617988239450982777447344",
"325088483075048536431734990149910568862",
"198501076732061187468902056256739481167",
"325469765854163019668405707016861245510",
"125970614415947568221799130495475940383",
"298408214895073674513412011134735052707",
"109672810582814063396299809687808534792",
"115001918299784777348784638630553466591",
"179711463991564892580983512833334067321",
"107811095499285724401384795038750067030",
"247996063613606268531810954433080185257",
"96675913368134251317082190008415936962",
"88061092795505715613824023292989765613",
"338137418183691833611317500896078624207",
"246830179721434962082289490066697945191",
"7671995198499348017415976280924004383",
"308828165145742835667647369416032474892",
"325469765854163019668405707016861245510",
"242797689000788135576886226728462546489",
"34001020728459550043077784009082860693",
"154596277430936193298553028620948543306",
"48423834763853304598969214749005606287",
"145366424902623180499557115225245548466",
"82345810380380902730254901689185264452",
"153409046584919389346039658478505919905"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-845785b7"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_set_catchall_validate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 393.0,
"function_hash": "153219791989727433432202476907554322977"
},
"id": "CVE-2024-27012-8746a789"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_pipapo.c",
"function": "nft_pipapo_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 965.0,
"function_hash": "112268229010820048646414017419897861919"
},
"id": "CVE-2024-27012-89a48212"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_flush"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 449.0,
"function_hash": "110297605689204405895120837865037904064"
},
"id": "CVE-2024-27012-8b5b7fa2"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 253.0,
"function_hash": "118625974050932364279883395369813745023"
},
"id": "CVE-2024-27012-98f424f1"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_pipapo.c",
"function": "nft_pipapo_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 956.0,
"function_hash": "89379217417712289381076881219560274972"
},
"id": "CVE-2024-27012-9aeb832f"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_map_catchall_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 341.0,
"function_hash": "15796108184662394750065977010323022202"
},
"id": "CVE-2024-27012-abe6e835"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_hash.c",
"function": "nft_hash_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 509.0,
"function_hash": "87109329057846504056320078820864332223"
},
"id": "CVE-2024-27012-abe976e8"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_pipapo.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"line_hashes": [
"162994409215602925531283119653837678979",
"333240696284861660811358073233130156937",
"270611499652944941934347182803064474173",
"219727440883908585662561595971216648758",
"40041418568658075042865953818242126310",
"254655228996452846766604278043318792027",
"22896327632358143345108356660526806225",
"53678972900575548926519774428916758593",
"37389090792164296129268173111399174915"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-c5638c39"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"line_hashes": [
"290598202839798202292015625436082925965",
"137913967526532787862533739042468214208",
"272934969508173577686418819674601475288",
"183065611970485047921212610045265138575",
"28032199360333259268949128012899975948",
"290127655630925403446312001817279495740",
"224696286509540468333338516408630497642",
"276633129109696302982201653184438639792",
"209036412662118822921934990897791035726"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-c5c92d27"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_pipapo.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"line_hashes": [
"162994409215602925531283119653837678979",
"333240696284861660811358073233130156937",
"270611499652944941934347182803064474173",
"219727440883908585662561595971216648758",
"40041418568658075042865953818242126310",
"254655228996452846766604278043318792027",
"22896327632358143345108356660526806225",
"53678972900575548926519774428916758593",
"37389090792164296129268173111399174915"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-ce1aaba2"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_setelem_flush"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 449.0,
"function_hash": "110297605689204405895120837865037904064"
},
"id": "CVE-2024-27012-d9f06db4"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_set_catchall_validate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 393.0,
"function_hash": "153219791989727433432202476907554322977"
},
"id": "CVE-2024-27012-da77ba32"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_rbtree.c",
"function": "nft_rbtree_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 604.0,
"function_hash": "191912220139978234557397292766235183341"
},
"id": "CVE-2024-27012-ebc75bd1"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_rbtree.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"line_hashes": [
"170720030053774054210551054747330640047",
"188282922225524340567054782135122132090",
"277839774702197965194861537085475616080",
"137641695057064608899355830582941741821",
"171485523188732840547783654078384023414",
"32709121817065576902737275507846036282",
"102311696390026611965462400488634405074",
"91306907713932136779824340196259090871",
"252211631174215767073414461424791401098"
],
"threshold": 0.9
},
"id": "CVE-2024-27012-eda06ef7"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_rbtree.c",
"function": "nft_rbtree_walk"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 604.0,
"function_hash": "191912220139978234557397292766235183341"
},
"id": "CVE-2024-27012-ef22e944"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nf_tables_api.c",
"function": "nft_mapelem_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e79b47a8615d42c68aaeb68971593333667382ed",
"digest": {
"length": 158.0,
"function_hash": "28889876189893494676058566938504209635"
},
"id": "CVE-2024-27012-fb752dee"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"target": {
"file": "net/netfilter/nft_set_bitmap.c",
"function": "nft_bitmap_activate"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@86658fc7414d4b9e25c2699d751034537503d637",
"digest": {
"length": 359.0,
"function_hash": "48028491674230053033005634163927737629"
},
"id": "CVE-2024-27012-fd312c7b"
}
]