{
  "schemaVersion": 1,
  "attribution": [
    {
      "source": "CISA Known Exploited Vulnerabilities",
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog",
      "licence": "US government work"
    },
    {
      "source": "GitHub Advisory Database",
      "url": "https://github.com/advisories",
      "licence": "CC BY 4.0"
    },
    {
      "source": "Have I Been Pwned",
      "url": "https://haveibeenpwned.com/",
      "licence": "CC BY 4.0"
    },
    {
      "source": "CVE Program (CVE records)",
      "url": "https://www.cve.org/Legal/TermsOfUse",
      "licence": "CVE Terms of Use",
      "notice": "Copyright © 1999-2026, The MITRE Corporation. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation.",
      "terms": "CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy."
    },
    {
      "source": "FIRST EPSS",
      "url": "https://www.first.org/epss/",
      "licence": "free to use; FIRST requests attribution"
    }
  ],
  "record": {
    "id": "CVE-2024-56694",
    "sourceURL": "https://www.cve.org/CVERecord?id=CVE-2024-56694",
    "idYear": 2024,
    "status": "PUBLISHED",
    "publishedAt": "2024-12-28T09:46:18.826Z",
    "updatedAt": "2026-08-05T11:46:08.180Z",
    "importedAt": "2026-10-24T01:57:20.494Z",
    "snapshot": {
      "id": "cve_2026-10-24_midnight_baseline",
      "at": "2026-10-24T00:00:00.000Z",
      "source": "https://github.com/CVEProject/cvelistV5/releases/tag/cve_2026-10-24_0100Z"
    },
    "facts": {
      "title": "bpf: fix recursive lock when verdict program return SK_PASS",
      "summary": "In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: fix recursive lock when verdict program return SK_PASS\n\nWhen the stream_verdict program returns SK_PASS, it places the received skb\ninto its own receive queue, but a recursive lock eventually occurs, leading\nto an operating system deadlock. This issue has been present since v6.9.\n\n'''\nsk_psock_strp_data_ready\n    write_lock_bh(&sk->sk_callback_lock)\n    strp_data_ready\n      strp_read_sock\n        read_sock -> tcp_read_sock\n          strp_recv\n            cb.rcv_msg -> sk_psock_strp_read\n              # now stream_verdict return SK_PASS without peer sock assign\n              __SK_PASS = sk_psock_map_verd(SK_PASS, NULL)\n              sk_psock_verdict_apply\n                sk_psock_skb_ingress_self\n                  sk_psock_skb_ingress_enqueue\n                    sk_psock_data_ready\n                      read_lock_bh(&sk->sk_callback_lock) <= dead lock\n\n'''\n\nThis topic has been discussed before, but it has not been fixed.\nPrevious discussion:\nhttps://lore.kernel.org/all/6684a5864ec86_403d20898@john.notmuch",
      "affected": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "c0809c128dad4c3413818384eb06a341633db973",
              "status": "affected",
              "versionType": "git",
              "lessThan": "221109ba2127eabd0aa64718543638b58b15df56"
            },
            {
              "version": "5965bc7535fb87510b724e5465ccc1a1cf00916d",
              "status": "affected",
              "versionType": "git",
              "lessThan": "6694f7acd625ed854bf6342926e771d65dad7f69"
            },
            {
              "version": "39dc9e1442385d6e9be0b6491ee488dddd55ae27",
              "status": "affected",
              "versionType": "git",
              "lessThan": "386efa339e08563dd33e83bc951aea5d407fe578"
            },
            {
              "version": "b397a0ab8582c533ec0c6b732392f141fc364f87",
              "status": "affected",
              "versionType": "git",
              "lessThan": "da2bc8a0c8f3ac66fdf980fc59936f851a083561"
            },
            {
              "version": "6648e613226e18897231ab5e42ffc29e63fa3365",
              "status": "affected",
              "versionType": "git",
              "lessThan": "01f1b88acfd79103da0610b45471f6c88ea98d72"
            },
            {
              "version": "6648e613226e18897231ab5e42ffc29e63fa3365",
              "status": "affected",
              "versionType": "git",
              "lessThan": "f84c5ef6ca23cc2f72f3b830d74f67944684bb05"
            },
            {
              "version": "6648e613226e18897231ab5e42ffc29e63fa3365",
              "status": "affected",
              "versionType": "git",
              "lessThan": "8ca2a1eeadf09862190b2810697702d803ceef2d"
            },
            {
              "version": "772d5729b5ff0df0d37b32db600ce635b2172f80",
              "status": "affected",
              "versionType": "git"
            },
            {
              "version": "5.10.223",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "5.10.233"
            },
            {
              "version": "5.15.159",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "5.15.174"
            },
            {
              "version": "6.1.91",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "6.1.120"
            },
            {
              "version": "6.6.31",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "6.6.64"
            },
            {
              "version": "6.8.10",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "6.9"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "versions": [
            {
              "version": "6.9",
              "status": "affected"
            },
            {
              "version": "0",
              "status": "unaffected",
              "versionType": "semver",
              "lessThan": "6.9"
            },
            {
              "version": "5.10.233",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.10.*"
            },
            {
              "version": "5.15.174",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "version": "6.1.120",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "version": "6.6.64",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "version": "6.11.11",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.11.*"
            },
            {
              "version": "6.12.2",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "version": "6.13",
              "status": "unaffected",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ]
        }
      ]
    }
  }
}