CVE-2022-50674 (GCVE-0-2022-50674)

Vulnerability from cvelistv5 – Published: 2025-12-09 01:29 – Updated: 2026-05-11 19:23
VLAI
Title
riscv: vdso: fix NULL deference in vdso_join_timens() when vfork
Summary
In the Linux kernel, the following vulnerability has been resolved: riscv: vdso: fix NULL deference in vdso_join_timens() when vfork Testing tools/testing/selftests/timens/vfork_exec.c got below kernel log: [ 6.838454] Unable to handle kernel access to user memory without uaccess routines at virtual address 0000000000000020 [ 6.842255] Oops [#1] [ 6.842871] Modules linked in: [ 6.844249] CPU: 1 PID: 64 Comm: vfork_exec Not tainted 6.0.0-rc3-rt15+ #8 [ 6.845861] Hardware name: riscv-virtio,qemu (DT) [ 6.848009] epc : vdso_join_timens+0xd2/0x110 [ 6.850097] ra : vdso_join_timens+0xd2/0x110 [ 6.851164] epc : ffffffff8000635c ra : ffffffff8000635c sp : ff6000000181fbf0 [ 6.852562] gp : ffffffff80cff648 tp : ff60000000fdb700 t0 : 3030303030303030 [ 6.853852] t1 : 0000000000000030 t2 : 3030303030303030 s0 : ff6000000181fc40 [ 6.854984] s1 : ff60000001e6c000 a0 : 0000000000000010 a1 : ffffffff8005654c [ 6.856221] a2 : 00000000ffffefff a3 : 0000000000000000 a4 : 0000000000000000 [ 6.858114] a5 : 0000000000000000 a6 : 0000000000000008 a7 : 0000000000000038 [ 6.859484] s2 : ff60000001e6c068 s3 : ff6000000108abb0 s4 : 0000000000000000 [ 6.860751] s5 : 0000000000001000 s6 : ffffffff8089dc40 s7 : ffffffff8089dc38 [ 6.862029] s8 : ffffffff8089dc30 s9 : ff60000000fdbe38 s10: 000000000000005e [ 6.863304] s11: ffffffff80cc3510 t3 : ffffffff80d1112f t4 : ffffffff80d1112f [ 6.864565] t5 : ffffffff80d11130 t6 : ff6000000181fa00 [ 6.865561] status: 0000000000000120 badaddr: 0000000000000020 cause: 000000000000000d [ 6.868046] [<ffffffff8008dc94>] timens_commit+0x38/0x11a [ 6.869089] [<ffffffff8008dde8>] timens_on_fork+0x72/0xb4 [ 6.870055] [<ffffffff80190096>] begin_new_exec+0x3c6/0x9f0 [ 6.871231] [<ffffffff801d826c>] load_elf_binary+0x628/0x1214 [ 6.872304] [<ffffffff8018ee7a>] bprm_execve+0x1f2/0x4e4 [ 6.873243] [<ffffffff8018f90c>] do_execveat_common+0x16e/0x1ee [ 6.874258] [<ffffffff8018f9c8>] sys_execve+0x3c/0x48 [ 6.875162] [<ffffffff80003556>] ret_from_syscall+0x0/0x2 [ 6.877484] ---[ end trace 0000000000000000 ]--- This is because the mm->context.vdso_info is NULL in vfork case. From another side, mm->context.vdso_info either points to vdso info for RV64 or vdso info for compat, there's no need to bloat riscv's mm_context_t, we can handle the difference when setup the additional page for vdso.
Severity
No CVSS data available.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 3092eb45637573c5e435fbf5eaf9516316e5f9c6 , < df30c4feba51beeb138f3518c2421abc8cbda3c1 (git)
Affected: 3092eb45637573c5e435fbf5eaf9516316e5f9c6 , < f2419a6fbb4caf8cf3fe0ac7e4cf2e28127d04b4 (git)
Affected: 3092eb45637573c5e435fbf5eaf9516316e5f9c6 , < a8616d2dc193b6becc36b5f3cfeaa9ac7a5762f9 (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.19
Unaffected: 0 , < 5.19 (semver)
Unaffected: 5.19.17 , ≤ 5.19.* (semver)
Unaffected: 6.0.3 , ≤ 6.0.* (semver)
Unaffected: 6.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "arch/riscv/include/asm/mmu.h",
            "arch/riscv/kernel/vdso.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "df30c4feba51beeb138f3518c2421abc8cbda3c1",
              "status": "affected",
              "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
              "versionType": "git"
            },
            {
              "lessThan": "f2419a6fbb4caf8cf3fe0ac7e4cf2e28127d04b4",
              "status": "affected",
              "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
              "versionType": "git"
            },
            {
              "lessThan": "a8616d2dc193b6becc36b5f3cfeaa9ac7a5762f9",
              "status": "affected",
              "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "arch/riscv/include/asm/mmu.h",
            "arch/riscv/kernel/vdso.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.19"
            },
            {
              "lessThan": "5.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.19.*",
              "status": "unaffected",
              "version": "5.19.17",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.0.*",
              "status": "unaffected",
              "version": "6.0.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.19.17",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0.3",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nriscv: vdso: fix NULL deference in vdso_join_timens() when vfork\n\nTesting tools/testing/selftests/timens/vfork_exec.c got below\nkernel log:\n\n[    6.838454] Unable to handle kernel access to user memory without uaccess routines at virtual address 0000000000000020\n[    6.842255] Oops [#1]\n[    6.842871] Modules linked in:\n[    6.844249] CPU: 1 PID: 64 Comm: vfork_exec Not tainted 6.0.0-rc3-rt15+ #8\n[    6.845861] Hardware name: riscv-virtio,qemu (DT)\n[    6.848009] epc : vdso_join_timens+0xd2/0x110\n[    6.850097]  ra : vdso_join_timens+0xd2/0x110\n[    6.851164] epc : ffffffff8000635c ra : ffffffff8000635c sp : ff6000000181fbf0\n[    6.852562]  gp : ffffffff80cff648 tp : ff60000000fdb700 t0 : 3030303030303030\n[    6.853852]  t1 : 0000000000000030 t2 : 3030303030303030 s0 : ff6000000181fc40\n[    6.854984]  s1 : ff60000001e6c000 a0 : 0000000000000010 a1 : ffffffff8005654c\n[    6.856221]  a2 : 00000000ffffefff a3 : 0000000000000000 a4 : 0000000000000000\n[    6.858114]  a5 : 0000000000000000 a6 : 0000000000000008 a7 : 0000000000000038\n[    6.859484]  s2 : ff60000001e6c068 s3 : ff6000000108abb0 s4 : 0000000000000000\n[    6.860751]  s5 : 0000000000001000 s6 : ffffffff8089dc40 s7 : ffffffff8089dc38\n[    6.862029]  s8 : ffffffff8089dc30 s9 : ff60000000fdbe38 s10: 000000000000005e\n[    6.863304]  s11: ffffffff80cc3510 t3 : ffffffff80d1112f t4 : ffffffff80d1112f\n[    6.864565]  t5 : ffffffff80d11130 t6 : ff6000000181fa00\n[    6.865561] status: 0000000000000120 badaddr: 0000000000000020 cause: 000000000000000d\n[    6.868046] [\u003cffffffff8008dc94\u003e] timens_commit+0x38/0x11a\n[    6.869089] [\u003cffffffff8008dde8\u003e] timens_on_fork+0x72/0xb4\n[    6.870055] [\u003cffffffff80190096\u003e] begin_new_exec+0x3c6/0x9f0\n[    6.871231] [\u003cffffffff801d826c\u003e] load_elf_binary+0x628/0x1214\n[    6.872304] [\u003cffffffff8018ee7a\u003e] bprm_execve+0x1f2/0x4e4\n[    6.873243] [\u003cffffffff8018f90c\u003e] do_execveat_common+0x16e/0x1ee\n[    6.874258] [\u003cffffffff8018f9c8\u003e] sys_execve+0x3c/0x48\n[    6.875162] [\u003cffffffff80003556\u003e] ret_from_syscall+0x0/0x2\n[    6.877484] ---[ end trace 0000000000000000 ]---\n\nThis is because the mm-\u003econtext.vdso_info is NULL in vfork case. From\nanother side, mm-\u003econtext.vdso_info either points to vdso info\nfor RV64 or vdso info for compat, there\u0027s no need to bloat riscv\u0027s\nmm_context_t, we can handle the difference when setup the additional\npage for vdso."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-11T19:23:35.166Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/df30c4feba51beeb138f3518c2421abc8cbda3c1"
        },
        {
          "url": "https://git.kernel.org/stable/c/f2419a6fbb4caf8cf3fe0ac7e4cf2e28127d04b4"
        },
        {
          "url": "https://git.kernel.org/stable/c/a8616d2dc193b6becc36b5f3cfeaa9ac7a5762f9"
        }
      ],
      "title": "riscv: vdso: fix NULL deference in vdso_join_timens() when vfork",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-50674",
    "datePublished": "2025-12-09T01:29:26.600Z",
    "dateReserved": "2025-12-09T01:26:45.991Z",
    "dateUpdated": "2026-05-11T19:23:35.166Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2022-50674",
      "date": "2026-09-28",
      "epss": "0.00235",
      "percentile": "0.13021"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "arch/riscv/include/asm/mmu.h",
                  "arch/riscv/kernel/vdso.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "df30c4feba51beeb138f3518c2421abc8cbda3c1",
                    "status": "affected",
                    "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "f2419a6fbb4caf8cf3fe0ac7e4cf2e28127d04b4",
                    "status": "affected",
                    "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "a8616d2dc193b6becc36b5f3cfeaa9ac7a5762f9",
                    "status": "affected",
                    "version": "3092eb45637573c5e435fbf5eaf9516316e5f9c6",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "arch/riscv/include/asm/mmu.h",
                  "arch/riscv/kernel/vdso.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "5.19"
                  },
                  {
                    "lessThan": "5.19",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.19.*",
                    "status": "unaffected",
                    "version": "5.19.17",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.0.*",
                    "status": "unaffected",
                    "version": "6.0.3",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nriscv: vdso: fix NULL deference in vdso_join_timens() when vfork\n\nTesting tools/testing/selftests/timens/vfork_exec.c got below\nkernel log:\n\n[    6.838454] Unable to handle kernel access to user memory without uaccess routines at virtual address 0000000000000020\n[    6.842255] Oops [#1]\n[    6.842871] Modules linked in:\n[    6.844249] CPU: 1 PID: 64 Comm: vfork_exec Not tainted 6.0.0-rc3-rt15+ #8\n[    6.845861] Hardware name: riscv-virtio,qemu (DT)\n[    6.848009] epc : vdso_join_timens+0xd2/0x110\n[    6.850097]  ra : vdso_join_timens+0xd2/0x110\n[    6.851164] epc : ffffffff8000635c ra : ffffffff8000635c sp : ff6000000181fbf0\n[    6.852562]  gp : ffffffff80cff648 tp : ff60000000fdb700 t0 : 3030303030303030\n[    6.853852]  t1 : 0000000000000030 t2 : 3030303030303030 s0 : ff6000000181fc40\n[    6.854984]  s1 : ff60000001e6c000 a0 : 0000000000000010 a1 : ffffffff8005654c\n[    6.856221]  a2 : 00000000ffffefff a3 : 0000000000000000 a4 : 0000000000000000\n[    6.858114]  a5 : 0000000000000000 a6 : 0000000000000008 a7 : 0000000000000038\n[    6.859484]  s2 : ff60000001e6c068 s3 : ff6000000108abb0 s4 : 0000000000000000\n[    6.860751]  s5 : 0000000000001000 s6 : ffffffff8089dc40 s7 : ffffffff8089dc38\n[    6.862029]  s8 : ffffffff8089dc30 s9 : ff60000000fdbe38 s10: 000000000000005e\n[    6.863304]  s11: ffffffff80cc3510 t3 : ffffffff80d1112f t4 : ffffffff80d1112f\n[    6.864565]  t5 : ffffffff80d11130 t6 : ff6000000181fa00\n[    6.865561] status: 0000000000000120 badaddr: 0000000000000020 cause: 000000000000000d\n[    6.868046] [\u003cffffffff8008dc94\u003e] timens_commit+0x38/0x11a\n[    6.869089] [\u003cffffffff8008dde8\u003e] timens_on_fork+0x72/0xb4\n[    6.870055] [\u003cffffffff80190096\u003e] begin_new_exec+0x3c6/0x9f0\n[    6.871231] [\u003cffffffff801d826c\u003e] load_elf_binary+0x628/0x1214\n[    6.872304] [\u003cffffffff8018ee7a\u003e] bprm_execve+0x1f2/0x4e4\n[    6.873243] [\u003cffffffff8018f90c\u003e] do_execveat_common+0x16e/0x1ee\n[    6.874258] [\u003cffffffff8018f9c8\u003e] sys_execve+0x3c/0x48\n[    6.875162] [\u003cffffffff80003556\u003e] ret_from_syscall+0x0/0x2\n[    6.877484] ---[ end trace 0000000000000000 ]---\n\nThis is because the mm-\u003econtext.vdso_info is NULL in vfork case. From\nanother side, mm-\u003econtext.vdso_info either points to vdso info\nfor RV64 or vdso info for compat, there\u0027s no need to bloat riscv\u0027s\nmm_context_t, we can handle the difference when setup the additional\npage for vdso."
          }
        ],
        "id": "CVE-2022-50674",
        "lastModified": "2026-06-17T05:23:58.563",
        "metrics": {},
        "published": "2025-12-09T16:17:19.610",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/a8616d2dc193b6becc36b5f3cfeaa9ac7a5762f9"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/df30c4feba51beeb138f3518c2421abc8cbda3c1"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/f2419a6fbb4caf8cf3fe0ac7e4cf2e28127d04b4"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Deferred"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-30T10:18:16+00:00",
      "cve": "CVE-2022-50674",
      "id": "CVE-2022-50674",
      "initial_release_date": "2022-01-01T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: riscv: vdso: fix NULL deference in vdso_join_timens() when vfork",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2022/cve-2022-50674.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-04T00:33:48Z",
      "cve": "CVE-2022-50674",
      "id": "CVE-2022-50674",
      "initial_release_date": "2025-12-10T00:38:13Z",
      "product_status:known_not_affected": "515",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2022-50674",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2022-50674.json",
      "version": "9"
    }
  }
}



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…