{
  "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-41006",
    "sourceURL": "https://www.cve.org/CVERecord?id=CVE-2024-41006",
    "idYear": 2024,
    "status": "PUBLISHED",
    "publishedAt": "2024-07-12T12:44:41.176Z",
    "updatedAt": "2026-10-15T00:47:14.987Z",
    "importedAt": "2026-10-24T01:57:16.009Z",
    "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": "netrom: Fix a memory leak in nr_heartbeat_expiry()",
      "summary": "In the Linux kernel, the following vulnerability has been resolved:\n\nnetrom: Fix a memory leak in nr_heartbeat_expiry()\n\nsyzbot reported a memory leak in nr_create() [0].\n\nCommit 409db27e3a2e (\"netrom: Fix use-after-free of a listening socket.\")\nadded sock_hold() to the nr_heartbeat_expiry() function, where\na) a socket has a SOCK_DESTROY flag or\nb) a listening socket has a SOCK_DEAD flag.\n\nBut in the case \"a,\" when the SOCK_DESTROY flag is set, the file descriptor\nhas already been closed and the nr_release() function has been called.\nSo it makes no sense to hold the reference count because no one will\ncall another nr_destroy_socket() and put it as in the case \"b.\"\n\nnr_connect\n  nr_establish_data_link\n    nr_start_heartbeat\n\nnr_release\n  switch (nr->state)\n  case NR_STATE_3\n    nr->state = NR_STATE_2\n    sock_set_flag(sk, SOCK_DESTROY);\n\n                        nr_rx_frame\n                          nr_process_rx_frame\n                            switch (nr->state)\n                            case NR_STATE_2\n                              nr_state2_machine()\n                                nr_disconnect()\n                                  nr_sk(sk)->state = NR_STATE_0\n                                  sock_set_flag(sk, SOCK_DEAD)\n\n                        nr_heartbeat_expiry\n                          switch (nr->state)\n                          case NR_STATE_0\n                            if (sock_flag(sk, SOCK_DESTROY) ||\n                               (sk->sk_state == TCP_LISTEN\n                                 && sock_flag(sk, SOCK_DEAD)))\n                               sock_hold()  // ( !!! )\n                               nr_destroy_socket()\n\nTo fix the memory leak, let's call sock_hold() only for a listening socket.\n\nFound by InfoTeCS on behalf of Linux Verification Center\n(linuxtesting.org) with Syzkaller.\n\n[0]: https://syzkaller.appspot.com/bug?extid=d327a1f3b12e1e206c16",
      "affected": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "a31caf5779ace8fa98b0d454133808e082ee7a1b",
              "status": "affected",
              "versionType": "git",
              "lessThan": "d616876256b38ecf9a1a1c7d674192c5346bc69c"
            },
            {
              "version": "fe9b9e621cebe6b7e83f7e954c70f8bb430520e5",
              "status": "affected",
              "versionType": "git",
              "lessThan": "e07a9c2a850cdebf625e7a1b8171bd23a8554313"
            },
            {
              "version": "7de16d75b20ab13b75a7291f449a1b00090edfea",
              "status": "affected",
              "versionType": "git",
              "lessThan": "5391f9db2cab5ef1cb411be1ab7dbec728078fba"
            },
            {
              "version": "d2d3ab1b1de3302de2c85769121fd4f890e47ceb",
              "status": "affected",
              "versionType": "git",
              "lessThan": "280cf1173726a7059b628c610c71050d5c0b6937"
            },
            {
              "version": "51e394c6f81adbfe7c34d15f58b3d4d44f144acf",
              "status": "affected",
              "versionType": "git",
              "lessThan": "a02fd5d775cf9787ee7698c797e20f2fa13d2e2b"
            },
            {
              "version": "409db27e3a2eb5e8ef7226ca33be33361b3ed1c9",
              "status": "affected",
              "versionType": "git",
              "lessThan": "b6ebe4fed73eedeb73f4540f8edc4871945474c8"
            },
            {
              "version": "409db27e3a2eb5e8ef7226ca33be33361b3ed1c9",
              "status": "affected",
              "versionType": "git",
              "lessThan": "d377f5a28332954b19e373d36823e59830ab1712"
            },
            {
              "version": "409db27e3a2eb5e8ef7226ca33be33361b3ed1c9",
              "status": "affected",
              "versionType": "git",
              "lessThan": "0b9130247f3b6a1122478471ff0e014ea96bb735"
            },
            {
              "version": "e666990abb2e42dd4ba979b4706280a3664cfae7",
              "status": "affected",
              "versionType": "git"
            },
            {
              "version": "4.19.272",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "4.19.317"
            },
            {
              "version": "5.4.231",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "5.4.279"
            },
            {
              "version": "5.10.166",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "5.10.221"
            },
            {
              "version": "5.15.91",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "5.15.162"
            },
            {
              "version": "6.1.9",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "6.1.96"
            },
            {
              "version": "4.14.305",
              "status": "affected",
              "versionType": "semver",
              "lessThan": "4.15"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "versions": [
            {
              "version": "6.2",
              "status": "affected"
            },
            {
              "version": "0",
              "status": "unaffected",
              "versionType": "semver",
              "lessThan": "6.2"
            },
            {
              "version": "4.19.317",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "4.19.*"
            },
            {
              "version": "5.4.279",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.4.*"
            },
            {
              "version": "5.10.221",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.10.*"
            },
            {
              "version": "5.15.162",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "version": "6.1.96",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "version": "6.6.36",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "version": "6.9.7",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.9.*"
            },
            {
              "version": "6.10",
              "status": "unaffected",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ]
        }
      ]
    }
  }
}