CVE-2022-50049 (GCVE-0-2022-50049)
Vulnerability from cvelistv5
Published
2025-06-18 11:01
Modified
2025-06-18 11:01
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: ASoC: DPCM: Don't pick up BE without substream When DPCM tries to add valid BE connections at dpcm_add_paths(), it doesn't check whether the picked BE actually supports for the given stream direction. Due to that, when an asymmetric BE stream is present, it picks up wrongly and this may result in a NULL dereference at a later point where the code assumes the existence of a corresponding BE substream. This patch adds the check for the presence of the substream for the target BE for avoiding the problem above. Note that we have already some fix for non-existing BE substream at commit 6246f283d5e0 ("ASoC: dpcm: skip missing substream while applying symmetry"). But the code path we've hit recently is rather happening before the previous fix. So this patch tries to fix at picking up a BE instead of parsing BE lists.
Impacted products
Vendor Product Version
Linux Linux Version: c474bb800000d1a93624f6d060e2bba16edf6820
Version: bbf7d3b1c4f40eb02dd1dffb500ba00b0bff0303
Version: bbf7d3b1c4f40eb02dd1dffb500ba00b0bff0303
Create a notification for this product.
   Linux Linux Version: 5.17
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "sound/soc/soc-pcm.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "aa803e6ecac78e93b24ebefa17c207d6392d8ad4",
              "status": "affected",
              "version": "c474bb800000d1a93624f6d060e2bba16edf6820",
              "versionType": "git"
            },
            {
              "lessThan": "6a840e8ef6b6c56d1b7e6a555adc31135e517875",
              "status": "affected",
              "version": "bbf7d3b1c4f40eb02dd1dffb500ba00b0bff0303",
              "versionType": "git"
            },
            {
              "lessThan": "754590651ccbbcc74a7c20907be4bb15d642bde3",
              "status": "affected",
              "version": "bbf7d3b1c4f40eb02dd1dffb500ba00b0bff0303",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "sound/soc/soc-pcm.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.17"
            },
            {
              "lessThan": "5.17",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.19.*",
              "status": "unaffected",
              "version": "5.19.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.0",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.19.4",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0",
                  "versionStartIncluding": "5.17",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nASoC: DPCM: Don\u0027t pick up BE without substream\n\nWhen DPCM tries to add valid BE connections at dpcm_add_paths(), it\ndoesn\u0027t check whether the picked BE actually supports for the given\nstream direction.  Due to that, when an asymmetric BE stream is\npresent, it picks up wrongly and this may result in a NULL dereference\nat a later point where the code assumes the existence of a\ncorresponding BE substream.\n\nThis patch adds the check for the presence of the substream for the\ntarget BE for avoiding the problem above.\n\nNote that we have already some fix for non-existing BE substream at\ncommit 6246f283d5e0 (\"ASoC: dpcm: skip missing substream while\napplying symmetry\").  But the code path we\u0027ve hit recently is rather\nhappening before the previous fix.  So this patch tries to fix at\npicking up a BE instead of parsing BE lists."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-06-18T11:01:49.810Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/aa803e6ecac78e93b24ebefa17c207d6392d8ad4"
        },
        {
          "url": "https://git.kernel.org/stable/c/6a840e8ef6b6c56d1b7e6a555adc31135e517875"
        },
        {
          "url": "https://git.kernel.org/stable/c/754590651ccbbcc74a7c20907be4bb15d642bde3"
        }
      ],
      "title": "ASoC: DPCM: Don\u0027t pick up BE without substream",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-50049",
    "datePublished": "2025-06-18T11:01:49.810Z",
    "dateReserved": "2025-06-18T10:57:27.402Z",
    "dateUpdated": "2025-06-18T11:01:49.810Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-50049\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-06-18T11:15:33.500\",\"lastModified\":\"2025-06-18T13:47:40.833\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nASoC: DPCM: Don\u0027t pick up BE without substream\\n\\nWhen DPCM tries to add valid BE connections at dpcm_add_paths(), it\\ndoesn\u0027t check whether the picked BE actually supports for the given\\nstream direction.  Due to that, when an asymmetric BE stream is\\npresent, it picks up wrongly and this may result in a NULL dereference\\nat a later point where the code assumes the existence of a\\ncorresponding BE substream.\\n\\nThis patch adds the check for the presence of the substream for the\\ntarget BE for avoiding the problem above.\\n\\nNote that we have already some fix for non-existing BE substream at\\ncommit 6246f283d5e0 (\\\"ASoC: dpcm: skip missing substream while\\napplying symmetry\\\").  But the code path we\u0027ve hit recently is rather\\nhappening before the previous fix.  So this patch tries to fix at\\npicking up a BE instead of parsing BE lists.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/6a840e8ef6b6c56d1b7e6a555adc31135e517875\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/754590651ccbbcc74a7c20907be4bb15d642bde3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/aa803e6ecac78e93b24ebefa17c207d6392d8ad4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


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.


Loading…