GHSA-7R2W-9MRV-HFQG

Vulnerability from github – Published: 2024-05-21 15:31 – Updated: 2024-12-30 21:30
VLAI
Details

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

net: hamradio: fix memory leak in mkiss_close

My local syzbot instance hit memory leak in mkiss_open()[1]. The problem was in missing free_netdev() in mkiss_close().

In mkiss_open() netdevice is allocated and then registered, but in mkiss_close() netdevice was only unregistered, but not freed.

Fail log:

BUG: memory leak unreferenced object 0xffff8880281ba000 (size 4096): comm "syz-executor.1", pid 11443, jiffies 4295046091 (age 17.660s) hex dump (first 32 bytes): 61 78 30 00 00 00 00 00 00 00 00 00 00 00 00 00 ax0............. 00 27 fa 2a 80 88 ff ff 00 00 00 00 00 00 00 00 .'.*............ backtrace: [] kvmalloc_node+0x61/0xf0 [] alloc_netdev_mqs+0x98/0xe80 [] mkiss_open+0xb2/0x6f0 [1] [] tty_ldisc_open+0x9b/0x110 [] tty_set_ldisc+0x2e8/0x670 [] tty_ioctl+0xda3/0x1440 [] __x64_sys_ioctl+0x193/0x200 [] do_syscall_64+0x3a/0xb0 [] entry_SYSCALL_64_after_hwframe+0x44/0xae

BUG: memory leak unreferenced object 0xffff8880141a9a00 (size 96): comm "syz-executor.1", pid 11443, jiffies 4295046091 (age 17.660s) hex dump (first 32 bytes): e8 a2 1b 28 80 88 ff ff e8 a2 1b 28 80 88 ff ff ...(.......(.... 98 92 9c aa b0 40 02 00 00 00 00 00 00 00 00 00 .....@.......... backtrace: [] __hw_addr_create_ex+0x5b/0x310 [] __hw_addr_add_ex+0x1f8/0x2b0 [] dev_addr_init+0x10b/0x1f0 [] alloc_netdev_mqs+0x13b/0xe80 [] mkiss_open+0xb2/0x6f0 [1] [] tty_ldisc_open+0x9b/0x110 [] tty_set_ldisc+0x2e8/0x670 [] tty_ioctl+0xda3/0x1440 [] __x64_sys_ioctl+0x193/0x200 [] do_syscall_64+0x3a/0xb0 [] entry_SYSCALL_64_after_hwframe+0x44/0xae

BUG: memory leak unreferenced object 0xffff8880219bfc00 (size 512): comm "syz-executor.1", pid 11443, jiffies 4295046091 (age 17.660s) hex dump (first 32 bytes): 00 a0 1b 28 80 88 ff ff 80 8f b1 8d ff ff ff ff ...(............ 80 8f b1 8d ff ff ff ff 00 00 00 00 00 00 00 00 ................ backtrace: [] kvmalloc_node+0x61/0xf0 [] alloc_netdev_mqs+0x777/0xe80 [] mkiss_open+0xb2/0x6f0 [1] [] tty_ldisc_open+0x9b/0x110 [] tty_set_ldisc+0x2e8/0x670 [] tty_ioctl+0xda3/0x1440 [] __x64_sys_ioctl+0x193/0x200 [] do_syscall_64+0x3a/0xb0 [] entry_SYSCALL_64_after_hwframe+0x44/0xae

BUG: memory leak unreferenced object 0xffff888029b2b200 (size 256): comm "syz-executor.1", pid 11443, jiffies 4295046091 (age 17.660s) hex dump (first 32 bytes): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [] kvmalloc_node+0x61/0xf0 [] alloc_netdev_mqs+0x912/0xe80 [] mkiss_open+0xb2/0x6f0 [1] [] tty_ldisc_open+0x9b/0x110 [] tty_set_ldisc+0x2e8/0x670 [] tty_ioctl+0xda3/0x1440 [] __x64_sys_ioctl+0x193/0x200 [] do_syscall_64+0x3a/0xb0 [] entry_SYSCALL_64_after_hwframe+0x44/0xae

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2021-47237"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-401"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2024-05-21T15:15:12Z",
    "severity": "MODERATE"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: hamradio: fix memory leak in mkiss_close\n\nMy local syzbot instance hit memory leak in\nmkiss_open()[1]. The problem was in missing\nfree_netdev() in mkiss_close().\n\nIn mkiss_open() netdevice is allocated and then\nregistered, but in mkiss_close() netdevice was\nonly unregistered, but not freed.\n\nFail log:\n\nBUG: memory leak\nunreferenced object 0xffff8880281ba000 (size 4096):\n  comm \"syz-executor.1\", pid 11443, jiffies 4295046091 (age 17.660s)\n  hex dump (first 32 bytes):\n    61 78 30 00 00 00 00 00 00 00 00 00 00 00 00 00  ax0.............\n    00 27 fa 2a 80 88 ff ff 00 00 00 00 00 00 00 00  .\u0027.*............\n  backtrace:\n    [\u003cffffffff81a27201\u003e] kvmalloc_node+0x61/0xf0\n    [\u003cffffffff8706e7e8\u003e] alloc_netdev_mqs+0x98/0xe80\n    [\u003cffffffff84e64192\u003e] mkiss_open+0xb2/0x6f0 [1]\n    [\u003cffffffff842355db\u003e] tty_ldisc_open+0x9b/0x110\n    [\u003cffffffff84236488\u003e] tty_set_ldisc+0x2e8/0x670\n    [\u003cffffffff8421f7f3\u003e] tty_ioctl+0xda3/0x1440\n    [\u003cffffffff81c9f273\u003e] __x64_sys_ioctl+0x193/0x200\n    [\u003cffffffff8911263a\u003e] do_syscall_64+0x3a/0xb0\n    [\u003cffffffff89200068\u003e] entry_SYSCALL_64_after_hwframe+0x44/0xae\n\nBUG: memory leak\nunreferenced object 0xffff8880141a9a00 (size 96):\n  comm \"syz-executor.1\", pid 11443, jiffies 4295046091 (age 17.660s)\n  hex dump (first 32 bytes):\n    e8 a2 1b 28 80 88 ff ff e8 a2 1b 28 80 88 ff ff  ...(.......(....\n    98 92 9c aa b0 40 02 00 00 00 00 00 00 00 00 00  .....@..........\n  backtrace:\n    [\u003cffffffff8709f68b\u003e] __hw_addr_create_ex+0x5b/0x310\n    [\u003cffffffff8709fb38\u003e] __hw_addr_add_ex+0x1f8/0x2b0\n    [\u003cffffffff870a0c7b\u003e] dev_addr_init+0x10b/0x1f0\n    [\u003cffffffff8706e88b\u003e] alloc_netdev_mqs+0x13b/0xe80\n    [\u003cffffffff84e64192\u003e] mkiss_open+0xb2/0x6f0 [1]\n    [\u003cffffffff842355db\u003e] tty_ldisc_open+0x9b/0x110\n    [\u003cffffffff84236488\u003e] tty_set_ldisc+0x2e8/0x670\n    [\u003cffffffff8421f7f3\u003e] tty_ioctl+0xda3/0x1440\n    [\u003cffffffff81c9f273\u003e] __x64_sys_ioctl+0x193/0x200\n    [\u003cffffffff8911263a\u003e] do_syscall_64+0x3a/0xb0\n    [\u003cffffffff89200068\u003e] entry_SYSCALL_64_after_hwframe+0x44/0xae\n\nBUG: memory leak\nunreferenced object 0xffff8880219bfc00 (size 512):\n  comm \"syz-executor.1\", pid 11443, jiffies 4295046091 (age 17.660s)\n  hex dump (first 32 bytes):\n    00 a0 1b 28 80 88 ff ff 80 8f b1 8d ff ff ff ff  ...(............\n    80 8f b1 8d ff ff ff ff 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [\u003cffffffff81a27201\u003e] kvmalloc_node+0x61/0xf0\n    [\u003cffffffff8706eec7\u003e] alloc_netdev_mqs+0x777/0xe80\n    [\u003cffffffff84e64192\u003e] mkiss_open+0xb2/0x6f0 [1]\n    [\u003cffffffff842355db\u003e] tty_ldisc_open+0x9b/0x110\n    [\u003cffffffff84236488\u003e] tty_set_ldisc+0x2e8/0x670\n    [\u003cffffffff8421f7f3\u003e] tty_ioctl+0xda3/0x1440\n    [\u003cffffffff81c9f273\u003e] __x64_sys_ioctl+0x193/0x200\n    [\u003cffffffff8911263a\u003e] do_syscall_64+0x3a/0xb0\n    [\u003cffffffff89200068\u003e] entry_SYSCALL_64_after_hwframe+0x44/0xae\n\nBUG: memory leak\nunreferenced object 0xffff888029b2b200 (size 256):\n  comm \"syz-executor.1\", pid 11443, jiffies 4295046091 (age 17.660s)\n  hex dump (first 32 bytes):\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................\n  backtrace:\n    [\u003cffffffff81a27201\u003e] kvmalloc_node+0x61/0xf0\n    [\u003cffffffff8706f062\u003e] alloc_netdev_mqs+0x912/0xe80\n    [\u003cffffffff84e64192\u003e] mkiss_open+0xb2/0x6f0 [1]\n    [\u003cffffffff842355db\u003e] tty_ldisc_open+0x9b/0x110\n    [\u003cffffffff84236488\u003e] tty_set_ldisc+0x2e8/0x670\n    [\u003cffffffff8421f7f3\u003e] tty_ioctl+0xda3/0x1440\n    [\u003cffffffff81c9f273\u003e] __x64_sys_ioctl+0x193/0x200\n    [\u003cffffffff8911263a\u003e] do_syscall_64+0x3a/0xb0\n    [\u003cffffffff89200068\u003e] entry_SYSCALL_64_after_hwframe+0x44/0xae",
  "id": "GHSA-7r2w-9mrv-hfqg",
  "modified": "2024-12-30T21:30:46Z",
  "published": "2024-05-21T15:31:40Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-47237"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/290b0b6432e2599021db0b8d6046f756d931c29f"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/3942d0f9ace1a95a74930b5b4fc0e5005c62b37b"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/765a8a04f828db7222b36a42b1031f576bfe95c3"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/7edcc682301492380fbdd604b4516af5ae667a13"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/a49cbb762ef20655f5c91abdc13658b0af5e159d"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c16c4716a1b5ba4f83c7e00da457cba06761f119"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c634ba0b4159838ff45a60d3a0ace3b4118077a5"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/f4de2b43d13b7cf3ced9310e371b90c836dbd7cd"
    }
  ],
  "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…

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…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…