{
  "affected": [
    {
      "ecosystem_specific": {
        "urgency": "not yet assigned"
      },
      "package": {
        "ecosystem": "Debian:12",
        "name": "linux"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "urgency": "not yet assigned"
      },
      "package": {
        "ecosystem": "Debian:13",
        "name": "linux"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "ecosystem_specific": {
        "urgency": "not yet assigned"
      },
      "package": {
        "ecosystem": "Debian:14",
        "name": "linux"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "details": "In the Linux kernel, the following vulnerability has been resolved:  bpf: Fix use-after-free on mm_struct in bpf_find_vma()  bpf_find_vma() reads task-\u003emm and calls mmap_read_trylock(mm) without holding a reference on the mm. On a foreign task, a concurrent exit_mm() can free the mm_struct between the lockless read and the trylock, resulting in a use-after-free. mm_struct is not SLAB_TYPESAFE_BY_RCU.  For the current task, task-\u003emm is stable. For a foreign task, pin the mm under task-\u003ealloc_lock and release it with mmput_async(), mirroring commit d8e27d2d22b6 (\"bpf: fix mm lifecycle in open-coded task_vma iterator\"). Use spin_trylock() instead of get_task_mm() so BPF context does not block on alloc_lock. Reject irqs-disabled contexts and !CONFIG_MMU on the foreign-task path because dropping the mm reference is not safe there.  Race:    CPU0 (BPF program)                  CPU1 (exiting task)   ============================        ==========================   bpf_find_vma(foreign_task):     mm = task-\u003emm                                       exit_mm():                                         task-\u003emm = NULL                                         mmput(mm) -\u003e frees mm_struct     mmap_read_trylock(mm)         // UAF on mm",
  "id": "DEBIAN-CVE-2026-93137",
  "modified": "2026-09-18T04:47:40.224791925Z",
  "published": "2026-09-17T17:18:08.600Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://security-tracker.debian.org/tracker/CVE-2026-93137"
    }
  ],
  "upstream": [
    "CVE-2026-93137"
  ]
}