CVE-2026-68377 (GCVE-0-2026-68377)

Vulnerability from cvelistv5 – Published: 2026-08-10 12:03 – Updated: 2026-08-19 16:34
VLAI
Title
net/sched: act_tunnel_key: Defer dst_release to RCU callback
Summary
In the Linux kernel, the following vulnerability has been resolved: net/sched: act_tunnel_key: Defer dst_release to RCU callback Fix a race-condition use-after-free in tunnel_key_release_params(). The function releases the metadata_dst of the old params synchronously via dst_release() while deferring the params struct free with kfree_rcu(). A concurrent tunnel_key_act() reader on the datapath may still hold the old params pointer (under rcu_read_lock_bh) and proceed to call dst_clone(&params->tcft_enc_metadata->dst) after the writer's dst_release has already pushed the dst's rcuref to RCUREF_DEAD. zdi-disclosures@trendmicro.com produced a poc which i (and Victor) verified that KASAN reports: ================================================================== BUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:112 BUG: KASAN: slab-use-after-free in atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326 BUG: KASAN: slab-use-after-free in __rcuref_put include/linux/rcuref.h:109 BUG: KASAN: slab-use-after-free in rcuref_put include/linux/rcuref.h:173 BUG: KASAN: slab-use-after-free in dst_release+0x5b/0x370 net/core/dst.c:168 Write of size 4 at addr ffff88806158de40 by task poc/9388 CPU: 0 UID: 0 PID: 9388 Comm: poc Tainted: G W 7.1.0-rc7 #7 PREEMPT(lazy) Tainted: [W]=WARN Hardware name: QEMU Ubuntu 25.10 PC v2 (i440FX + PIIX, + 10.1 machine, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 print_report+0x139/0x4ad mm/kasan/report.c:482 kasan_report+0xe4/0x1d0 mm/kasan/report.c:595 check_region_inline mm/kasan/generic.c:186 kasan_check_range+0x125/0x200 mm/kasan/generic.c:200 instrument_atomic_read_write include/linux/instrumented.h:112 atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326 __rcuref_put include/linux/rcuref.h:109 rcuref_put include/linux/rcuref.h:173 dst_release+0x5b/0x370 net/core/dst.c:168 refdst_drop include/net/dst.h:272 skb_dst_drop include/net/dst.h:284 skb_release_head_state+0x293/0x400 net/core/skbuff.c:1163 skb_release_all net/core/skbuff.c:1187 [..] Allocated by task 9391: kasan_save_stack+0x30/0x50 mm/kasan/common.c:57 kasan_save_track+0x14/0x30 mm/kasan/common.c:78 poison_kmalloc_redzone mm/kasan/common.c:398 __kasan_kmalloc+0x9a/0xb0 mm/kasan/common.c:415 kasan_kmalloc include/linux/kasan.h:263 __do_kmalloc_node mm/slub.c:5296 __kmalloc_noprof+0x2f1/0x830 mm/slub.c:5308 kmalloc_noprof include/linux/slab.h:954 kzalloc_noprof include/linux/slab.h:1188 offload_action_alloc+0x2f/0x130 net/core/flow_offload.c:35 tcf_action_offload_add_ex+0x1ba/0x880 net/sched/act_api.c:258 tcf_action_offload_add net/sched/act_api.c:293 tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547 tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101 [..] Freed by task 9391: kasan_save_stack+0x30/0x50 mm/kasan/common.c:57 kasan_save_track+0x14/0x30 mm/kasan/common.c:78 kasan_save_free_info+0x3b/0x70 mm/kasan/generic.c:584 poison_slab_object mm/kasan/common.c:253 __kasan_slab_free+0x6b/0x90 mm/kasan/common.c:285 kasan_slab_free include/linux/kasan.h:235 slab_free_hook mm/slub.c:2689 slab_free mm/slub.c:6251 kfree+0x21f/0x6b0 mm/slub.c:6566 tcf_action_offload_add_ex+0x4ad/0x880 net/sched/act_api.c:284 tcf_action_offload_add net/sched/act_api.c:293 tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547 tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101 The buggy address belongs to the object at ffff88806158de00 which belongs to the cache kmalloc-256 of size 256 The buggy address is located 64 bytes inside of freed 256-byte region [ffff88806158de00, ffff88806158df00) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88806158d600 pfn:0x6158c head: order:1 mapcount:0 entire_map ---truncated---
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < b5931f020b681fdcb9378262d89b61cb3c7ebbf8 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < 389d03992dabb80488228e8119b9dd6d0f58e1a6 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < 676ad6aa7cec89a08d2a5ce3cd5959e313f29733 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < 531dbb5bb98e52ad26be7e90f9f8bec707c5bd0e (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < 2200a00ff247f70f5dcdb4e6f14b0d48ddac5467 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < fed1b1ddab41a0e7a462ac690a0c8af6ff793624 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < 2791a501da508b704a617b4dba29db54a65bc9f7 (git)
Affected: 9174c3df1cd181c14913138d50ccbe539bb08335 , < f1f5c8a3955f8fda3f84ed883ac8daa1847e724c (git)
Affected: 02239e797ac75f89a05622a27d04695f08c1ca89 (git)
Affected: ca9b7a65a2c97579fcdd509d454d48e3a5c49af8 (git)
Affected: 4.19.19 , < 4.20 (semver)
Affected: 4.20.6 , < 4.21 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 5.0
Unaffected: 0 , < 5.0 (semver)
Unaffected: 5.10.265 , ≤ 5.10.* (semver)
Unaffected: 5.15.216 , ≤ 5.15.* (semver)
Unaffected: 6.1.183 , ≤ 6.1.* (semver)
Unaffected: 6.6.148 , ≤ 6.6.* (semver)
Unaffected: 6.12.101 , ≤ 6.12.* (semver)
Unaffected: 6.18.42 , ≤ 6.18.* (semver)
Unaffected: 7.1.6 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/sched/act_tunnel_key.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "b5931f020b681fdcb9378262d89b61cb3c7ebbf8",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "389d03992dabb80488228e8119b9dd6d0f58e1a6",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "676ad6aa7cec89a08d2a5ce3cd5959e313f29733",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "531dbb5bb98e52ad26be7e90f9f8bec707c5bd0e",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "2200a00ff247f70f5dcdb4e6f14b0d48ddac5467",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "fed1b1ddab41a0e7a462ac690a0c8af6ff793624",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "2791a501da508b704a617b4dba29db54a65bc9f7",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "lessThan": "f1f5c8a3955f8fda3f84ed883ac8daa1847e724c",
              "status": "affected",
              "version": "9174c3df1cd181c14913138d50ccbe539bb08335",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "02239e797ac75f89a05622a27d04695f08c1ca89",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "ca9b7a65a2c97579fcdd509d454d48e3a5c49af8",
              "versionType": "git"
            },
            {
              "lessThan": "4.20",
              "status": "affected",
              "version": "4.19.19",
              "versionType": "semver"
            },
            {
              "lessThan": "4.21",
              "status": "affected",
              "version": "4.20.6",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/sched/act_tunnel_key.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.0"
            },
            {
              "lessThan": "5.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.265",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.216",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.183",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.148",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.101",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.42",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.265",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.216",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.183",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.148",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.101",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.42",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.6",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "4.19.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "4.20.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: act_tunnel_key: Defer dst_release to RCU callback\n\nFix a race-condition use-after-free in tunnel_key_release_params().\n\nThe function releases the metadata_dst of the old params synchronously\nvia dst_release() while deferring the params struct free with\nkfree_rcu(). A concurrent tunnel_key_act() reader on the datapath may\nstill hold the old params pointer (under rcu_read_lock_bh) and proceed\nto call dst_clone(\u0026params-\u003etcft_enc_metadata-\u003edst) after the writer\u0027s\ndst_release has already pushed the dst\u0027s rcuref to RCUREF_DEAD.\n\nzdi-disclosures@trendmicro.com produced a poc which i (and Victor) verified\nthat KASAN reports:\n\n==================================================================\nBUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:112\nBUG: KASAN: slab-use-after-free in atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326\nBUG: KASAN: slab-use-after-free in __rcuref_put include/linux/rcuref.h:109\nBUG: KASAN: slab-use-after-free in rcuref_put include/linux/rcuref.h:173\nBUG: KASAN: slab-use-after-free in dst_release+0x5b/0x370 net/core/dst.c:168\nWrite of size 4 at addr ffff88806158de40 by task poc/9388\n\nCPU: 0 UID: 0 PID: 9388 Comm: poc Tainted: G        W           7.1.0-rc7 #7 PREEMPT(lazy)\nTainted: [W]=WARN\nHardware name: QEMU Ubuntu 25.10 PC v2 (i440FX + PIIX, + 10.1 machine, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014\nCall Trace:\n \u003cTASK\u003e\n __dump_stack lib/dump_stack.c:94\n dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120\n print_address_description mm/kasan/report.c:378\n print_report+0x139/0x4ad mm/kasan/report.c:482\n kasan_report+0xe4/0x1d0 mm/kasan/report.c:595\n check_region_inline mm/kasan/generic.c:186\n kasan_check_range+0x125/0x200 mm/kasan/generic.c:200\n instrument_atomic_read_write include/linux/instrumented.h:112\n atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326\n __rcuref_put include/linux/rcuref.h:109\n rcuref_put include/linux/rcuref.h:173\n dst_release+0x5b/0x370 net/core/dst.c:168\n refdst_drop include/net/dst.h:272\n skb_dst_drop include/net/dst.h:284\n skb_release_head_state+0x293/0x400 net/core/skbuff.c:1163\n skb_release_all net/core/skbuff.c:1187\n[..]\nAllocated by task 9391:\n kasan_save_stack+0x30/0x50 mm/kasan/common.c:57\n kasan_save_track+0x14/0x30 mm/kasan/common.c:78\n poison_kmalloc_redzone mm/kasan/common.c:398\n __kasan_kmalloc+0x9a/0xb0 mm/kasan/common.c:415\n kasan_kmalloc include/linux/kasan.h:263\n __do_kmalloc_node mm/slub.c:5296\n __kmalloc_noprof+0x2f1/0x830 mm/slub.c:5308\n kmalloc_noprof include/linux/slab.h:954\n kzalloc_noprof include/linux/slab.h:1188\n offload_action_alloc+0x2f/0x130 net/core/flow_offload.c:35\n tcf_action_offload_add_ex+0x1ba/0x880 net/sched/act_api.c:258\n tcf_action_offload_add net/sched/act_api.c:293\n tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547\n tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101\n[..]\nFreed by task 9391:\n kasan_save_stack+0x30/0x50 mm/kasan/common.c:57\n kasan_save_track+0x14/0x30 mm/kasan/common.c:78\n kasan_save_free_info+0x3b/0x70 mm/kasan/generic.c:584\n poison_slab_object mm/kasan/common.c:253\n __kasan_slab_free+0x6b/0x90 mm/kasan/common.c:285\n kasan_slab_free include/linux/kasan.h:235\n slab_free_hook mm/slub.c:2689\n slab_free mm/slub.c:6251\n kfree+0x21f/0x6b0 mm/slub.c:6566\n tcf_action_offload_add_ex+0x4ad/0x880 net/sched/act_api.c:284\n tcf_action_offload_add net/sched/act_api.c:293\n tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547\n tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101\n\nThe buggy address belongs to the object at ffff88806158de00\n which belongs to the cache kmalloc-256 of size 256\nThe buggy address is located 64 bytes inside of\n freed 256-byte region [ffff88806158de00, ffff88806158df00)\n\nThe buggy address belongs to the physical page:\npage: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88806158d600 pfn:0x6158c\nhead: order:1 mapcount:0 entire_map\n---truncated---"
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable window is opened via the tc/rtnetlink RTM_NEWACTION path (`tc action replace ... tunnel_key set`) and closed by locally generated traffic through a clsact/ingress filter, both requiring local system access rather than remote packets.\nAC:L - The attacker controls both sides of the race \u2014 one thread repeatedly replaces the tunnel_key action while another pumps packets through the filter \u2014 and can widen the window with qdisc backlog, so the UAF is reliably reproducible (a ZDI PoC reproduced it under KASAN).\nPR:L - The action-add path is gated only by netlink_capable(skb, CAP_NET_ADMIN), which is namespace-relative and obtainable by any unprivileged user via `unshare -Urn`; the packet side runs in the attacker\u0027s own netns.\nUI:N - Both the netlink action replace and the packet transmission that dereferences the stale params are performed entirely by the attacker\u0027s own processes; no victim action is involved.\nS:U - The corruption is confined to kernel heap memory within the same security authority; there is no VM, IOMMU, or sandbox boundary crossed.\nC:H - The freed metadata_dst sits in the general-purpose kmalloc-256 cache and remains attached to an skb, so tx paths read tunnel metadata out of reclaimed memory, giving an attacker who sprays the slab a route to disclose kernel data and defeat KASLR.\nI:H - The stale dst_clone/skb_dst_drop pair performs atomic 4-byte read-modify-write operations on a freed, attacker-reclaimable slab object, yielding a refcount-corruption primitive that is a well-established stepping stone to arbitrary write and privilege escalation.\nA:H - The use-after-free reliably corrupts slab memory and triggers KASAN-reported faults; unmitigated it causes kernel oops or panic, and the race can be repeated at will by an unprivileged user."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-19T16:34:38.220Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/b5931f020b681fdcb9378262d89b61cb3c7ebbf8"
        },
        {
          "url": "https://git.kernel.org/stable/c/389d03992dabb80488228e8119b9dd6d0f58e1a6"
        },
        {
          "url": "https://git.kernel.org/stable/c/676ad6aa7cec89a08d2a5ce3cd5959e313f29733"
        },
        {
          "url": "https://git.kernel.org/stable/c/531dbb5bb98e52ad26be7e90f9f8bec707c5bd0e"
        },
        {
          "url": "https://git.kernel.org/stable/c/2200a00ff247f70f5dcdb4e6f14b0d48ddac5467"
        },
        {
          "url": "https://git.kernel.org/stable/c/fed1b1ddab41a0e7a462ac690a0c8af6ff793624"
        },
        {
          "url": "https://git.kernel.org/stable/c/2791a501da508b704a617b4dba29db54a65bc9f7"
        },
        {
          "url": "https://git.kernel.org/stable/c/f1f5c8a3955f8fda3f84ed883ac8daa1847e724c"
        }
      ],
      "title": "net/sched: act_tunnel_key: Defer dst_release to RCU callback",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-68377",
    "datePublished": "2026-08-10T12:03:55.643Z",
    "dateReserved": "2026-07-30T09:28:09.386Z",
    "dateUpdated": "2026-08-19T16:34:38.220Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-68377",
      "date": "2026-08-20",
      "epss": "0.00128",
      "percentile": "0.02849"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-68377\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-10T13:20:30.647\",\"lastModified\":\"2026-08-19T17:20:47.073\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nnet/sched: act_tunnel_key: Defer dst_release to RCU callback\\n\\nFix a race-condition use-after-free in tunnel_key_release_params().\\n\\nThe function releases the metadata_dst of the old params synchronously\\nvia dst_release() while deferring the params struct free with\\nkfree_rcu(). A concurrent tunnel_key_act() reader on the datapath may\\nstill hold the old params pointer (under rcu_read_lock_bh) and proceed\\nto call dst_clone(\u0026params-\u003etcft_enc_metadata-\u003edst) after the writer\u0027s\\ndst_release has already pushed the dst\u0027s rcuref to RCUREF_DEAD.\\n\\nzdi-disclosures@trendmicro.com produced a poc which i (and Victor) verified\\nthat KASAN reports:\\n\\n==================================================================\\nBUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:112\\nBUG: KASAN: slab-use-after-free in atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326\\nBUG: KASAN: slab-use-after-free in __rcuref_put include/linux/rcuref.h:109\\nBUG: KASAN: slab-use-after-free in rcuref_put include/linux/rcuref.h:173\\nBUG: KASAN: slab-use-after-free in dst_release+0x5b/0x370 net/core/dst.c:168\\nWrite of size 4 at addr ffff88806158de40 by task poc/9388\\n\\nCPU: 0 UID: 0 PID: 9388 Comm: poc Tainted: G        W           7.1.0-rc7 #7 PREEMPT(lazy)\\nTainted: [W]=WARN\\nHardware name: QEMU Ubuntu 25.10 PC v2 (i440FX + PIIX, + 10.1 machine, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014\\nCall Trace:\\n \u003cTASK\u003e\\n __dump_stack lib/dump_stack.c:94\\n dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120\\n print_address_description mm/kasan/report.c:378\\n print_report+0x139/0x4ad mm/kasan/report.c:482\\n kasan_report+0xe4/0x1d0 mm/kasan/report.c:595\\n check_region_inline mm/kasan/generic.c:186\\n kasan_check_range+0x125/0x200 mm/kasan/generic.c:200\\n instrument_atomic_read_write include/linux/instrumented.h:112\\n atomic_sub_return_release include/linux/atomic/atomic-instrumented.h:326\\n __rcuref_put include/linux/rcuref.h:109\\n rcuref_put include/linux/rcuref.h:173\\n dst_release+0x5b/0x370 net/core/dst.c:168\\n refdst_drop include/net/dst.h:272\\n skb_dst_drop include/net/dst.h:284\\n skb_release_head_state+0x293/0x400 net/core/skbuff.c:1163\\n skb_release_all net/core/skbuff.c:1187\\n[..]\\nAllocated by task 9391:\\n kasan_save_stack+0x30/0x50 mm/kasan/common.c:57\\n kasan_save_track+0x14/0x30 mm/kasan/common.c:78\\n poison_kmalloc_redzone mm/kasan/common.c:398\\n __kasan_kmalloc+0x9a/0xb0 mm/kasan/common.c:415\\n kasan_kmalloc include/linux/kasan.h:263\\n __do_kmalloc_node mm/slub.c:5296\\n __kmalloc_noprof+0x2f1/0x830 mm/slub.c:5308\\n kmalloc_noprof include/linux/slab.h:954\\n kzalloc_noprof include/linux/slab.h:1188\\n offload_action_alloc+0x2f/0x130 net/core/flow_offload.c:35\\n tcf_action_offload_add_ex+0x1ba/0x880 net/sched/act_api.c:258\\n tcf_action_offload_add net/sched/act_api.c:293\\n tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547\\n tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101\\n[..]\\nFreed by task 9391:\\n kasan_save_stack+0x30/0x50 mm/kasan/common.c:57\\n kasan_save_track+0x14/0x30 mm/kasan/common.c:78\\n kasan_save_free_info+0x3b/0x70 mm/kasan/generic.c:584\\n poison_slab_object mm/kasan/common.c:253\\n __kasan_slab_free+0x6b/0x90 mm/kasan/common.c:285\\n kasan_slab_free include/linux/kasan.h:235\\n slab_free_hook mm/slub.c:2689\\n slab_free mm/slub.c:6251\\n kfree+0x21f/0x6b0 mm/slub.c:6566\\n tcf_action_offload_add_ex+0x4ad/0x880 net/sched/act_api.c:284\\n tcf_action_offload_add net/sched/act_api.c:293\\n tcf_action_init+0x66e/0xa20 net/sched/act_api.c:1547\\n tcf_action_add+0xf6/0x5d0 net/sched/act_api.c:2101\\n\\nThe buggy address belongs to the object at ffff88806158de00\\n which belongs to the cache kmalloc-256 of size 256\\nThe buggy address is located 64 bytes inside of\\n freed 256-byte region [ffff88806158de00, ffff88806158df00)\\n\\nThe buggy address belongs to the physical page:\\npage: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88806158d600 pfn:0x6158c\\nhead: order:1 mapcount:0 entire_map\\n---truncated---\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"net/sched/act_tunnel_key.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"b5931f020b681fdcb9378262d89b61cb3c7ebbf8\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"389d03992dabb80488228e8119b9dd6d0f58e1a6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"676ad6aa7cec89a08d2a5ce3cd5959e313f29733\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"531dbb5bb98e52ad26be7e90f9f8bec707c5bd0e\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"2200a00ff247f70f5dcdb4e6f14b0d48ddac5467\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"fed1b1ddab41a0e7a462ac690a0c8af6ff793624\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"2791a501da508b704a617b4dba29db54a65bc9f7\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9174c3df1cd181c14913138d50ccbe539bb08335\",\"lessThan\":\"f1f5c8a3955f8fda3f84ed883ac8daa1847e724c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"02239e797ac75f89a05622a27d04695f08c1ca89\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ca9b7a65a2c97579fcdd509d454d48e3a5c49af8\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"4.19.19\",\"lessThan\":\"4.20\",\"versionType\":\"semver\",\"status\":\"affected\"},{\"version\":\"4.20.6\",\"lessThan\":\"4.21\",\"versionType\":\"semver\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"net/sched/act_tunnel_key.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.0\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.0\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.265\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.216\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.183\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.148\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.101\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.42\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.6\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/2200a00ff247f70f5dcdb4e6f14b0d48ddac5467\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/2791a501da508b704a617b4dba29db54a65bc9f7\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/389d03992dabb80488228e8119b9dd6d0f58e1a6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/531dbb5bb98e52ad26be7e90f9f8bec707c5bd0e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/676ad6aa7cec89a08d2a5ce3cd5959e313f29733\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/b5931f020b681fdcb9378262d89b61cb3c7ebbf8\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/f1f5c8a3955f8fda3f84ed883ac8daa1847e724c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fed1b1ddab41a0e7a462ac690a0c8af6ff793624\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-14T22:22:37+00:00",
      "cve": "CVE-2026-68377",
      "id": "CVE-2026-68377",
      "initial_release_date": "2026-08-10T12:03:55.643000+00:00",
      "product_status:known_affected": "260",
      "product_status:known_not_affected": "14",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: Linux kernel: Denial of Service due to use-after-free in act_tunnel_key",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-68377.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-13T01:28:12Z",
      "cve": "CVE-2026-68377",
      "id": "CVE-2026-68377",
      "initial_release_date": "2026-08-12T16:22:39Z",
      "product_status:known_affected": "290",
      "product_status:known_not_affected": "6",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-68377",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-68377.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…