ghsa-gr3v-53cp-cg7h
Vulnerability from github
Published
2024-10-29 03:31
Modified
2024-11-01 18:31
Details

In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: Call iso_exit() on module unload

If iso_init() has been called, iso_exit() must be called on module unload. Without that, the struct proto that iso_init() registered with proto_register() becomes invalid, which could cause unpredictable problems later. In my case, with CONFIG_LIST_HARDENED and CONFIG_BUG_ON_DATA_CORRUPTION enabled, loading the module again usually triggers this BUG():

list_add corruption. next->prev should be prev (ffffffffb5355fd0), but was 0000000000000068. (next=ffffffffc0a010d0). ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:29! Oops: invalid opcode: 0000 [#1] PREEMPT SMP PTI CPU: 1 PID: 4159 Comm: modprobe Not tainted 6.10.11-4+bt2-ao-desktop #1 RIP: 0010:__list_add_valid_or_report+0x61/0xa0 ... __list_add_valid_or_report+0x61/0xa0 proto_register+0x299/0x320 hci_sock_init+0x16/0xc0 [bluetooth] bt_init+0x68/0xd0 [bluetooth] __pfx_bt_init+0x10/0x10 [bluetooth] do_one_initcall+0x80/0x2f0 do_init_module+0x8b/0x230 __do_sys_init_module+0x15f/0x190 do_syscall_64+0x68/0x110 ...

Show details on source website


{
  "affected": [],
  "aliases": [
    "CVE-2024-50078"
  ],
  "database_specific": {
    "cwe_ids": [],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2024-10-29T01:15:04Z",
    "severity": "MODERATE"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: Call iso_exit() on module unload\n\nIf iso_init() has been called, iso_exit() must be called on module\nunload. Without that, the struct proto that iso_init() registered with\nproto_register() becomes invalid, which could cause unpredictable\nproblems later. In my case, with CONFIG_LIST_HARDENED and\nCONFIG_BUG_ON_DATA_CORRUPTION enabled, loading the module again usually\ntriggers this BUG():\n\n  list_add corruption. next-\u003eprev should be prev (ffffffffb5355fd0),\n    but was 0000000000000068. (next=ffffffffc0a010d0).\n  ------------[ cut here ]------------\n  kernel BUG at lib/list_debug.c:29!\n  Oops: invalid opcode: 0000 [#1] PREEMPT SMP PTI\n  CPU: 1 PID: 4159 Comm: modprobe Not tainted 6.10.11-4+bt2-ao-desktop #1\n  RIP: 0010:__list_add_valid_or_report+0x61/0xa0\n  ...\n    __list_add_valid_or_report+0x61/0xa0\n    proto_register+0x299/0x320\n    hci_sock_init+0x16/0xc0 [bluetooth]\n    bt_init+0x68/0xd0 [bluetooth]\n    __pfx_bt_init+0x10/0x10 [bluetooth]\n    do_one_initcall+0x80/0x2f0\n    do_init_module+0x8b/0x230\n    __do_sys_init_module+0x15f/0x190\n    do_syscall_64+0x68/0x110\n  ...",
  "id": "GHSA-gr3v-53cp-cg7h",
  "modified": "2024-11-01T18:31:32Z",
  "published": "2024-10-29T03:31:06Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2024-50078"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/05f84d86169b2ebac185c5736a256823d42c425b"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/4af7ba39a1a02e16ee8cd0d3b6c6657f51b8ad7a"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/d458cd1221e9e56da3b2cc5518ad3225caa91f20"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/f905a7d95091e0d2605a3a1a157a9351f09ab2e1"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
      "type": "CVSS_V3"
    }
  ]
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.