GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2022-50570 (GCVE-0-2022-50570)

Vulnerability from cvelistv5 – Published: 2025-10-22 13:23 – Updated: 2026-08-05 08:59
VLAI
Title
platform/chrome: fix memory corruption in ioctl
Summary
In the Linux kernel, the following vulnerability has been resolved: platform/chrome: fix memory corruption in ioctl If "s_mem.bytes" is larger than the buffer size it leads to memory corruption.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < e548f9503c4b3292a60a63fe77dccea62999a35a (git)
Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < 868fc93b615b9f6c2b0b1894536618fa6cd66acc (git)
Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < fd1d3b265784a2243fcaef06aebfb2f8ee733cec (git)
Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < f143f1d9a8e5c6c9db3de81ca270191226fcce36 (git)
Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < 0c2e18924504208644d18415667895a4ac54cf2a (git)
Affected: eda2e30c6684d67288edb841c6125d48c608a242 , < 8a07b45fd3c2dda24fad43639be5335a4595196a (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.4
Unaffected: 0 , < 5.4 (semver)
Unaffected: 5.4.220 , ≤ 5.4.* (semver)
Unaffected: 5.10.150 , ≤ 5.10.* (semver)
Unaffected: 5.15.75 , ≤ 5.15.* (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": [
            "drivers/platform/chrome/cros_ec_chardev.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "e548f9503c4b3292a60a63fe77dccea62999a35a",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            },
            {
              "lessThan": "868fc93b615b9f6c2b0b1894536618fa6cd66acc",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            },
            {
              "lessThan": "fd1d3b265784a2243fcaef06aebfb2f8ee733cec",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            },
            {
              "lessThan": "f143f1d9a8e5c6c9db3de81ca270191226fcce36",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            },
            {
              "lessThan": "0c2e18924504208644d18415667895a4ac54cf2a",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            },
            {
              "lessThan": "8a07b45fd3c2dda24fad43639be5335a4595196a",
              "status": "affected",
              "version": "eda2e30c6684d67288edb841c6125d48c608a242",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/platform/chrome/cros_ec_chardev.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.4"
            },
            {
              "lessThan": "5.4",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.220",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.150",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.75",
              "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.4.220",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.150",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.75",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.19.17",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.0.3",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1",
                  "versionStartIncluding": "5.4",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nplatform/chrome: fix memory corruption in ioctl\n\nIf \"s_mem.bytes\" is larger than the buffer size it leads to memory\ncorruption."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is reached only through a local ioctl (CROS_EC_DEV_IOCRDMEM) on the Cros EC misc character device (/dev/cros_ec) via cros_ec_chardev_ioctl \u2192 cros_ec_chardev_ioctl_readmem; it is not reachable from network packet processing or physical bus injection.\nAC:L - An attacker who can open the device fully controls s_mem.bytes/offset and can set bytes \u003e EC_MEMMAP_SIZE (255); unsigned underflow in cros_ec_lpc_readmem\u2019s bounds check then lets cmd_readmem write past the stack buffer with no race or other condition outside the attacker\u2019s control.\nPR:L - Neither open nor the readmem ioctl path checks capabilities\u2014only device-node permissions\u2014and /dev/cros_ec is intended for userspace EC tools, with Chrome OS cros_ec-access group access and Linux deployments that grant udev/uaccess, so real root is not required.\nUI:N - The attacker opens /dev/cros_ec and issues CROS_EC_DEV_IOCRDMEM themselves; no separate victim action such as mounting a filesystem or opening a crafted file is required.\nS:U - Impact is kernel stack memory corruption within the host OS privilege boundary via the platform chrome chardev driver; this is ordinary local kernel compromise, not a VM escape or IOMMU/cross-authority bypass.\nC:H - The out-of-bounds stack write is memory corruption that, per kernel CVSS guidance, can be leveraged for information disclosure and full compromise once control-flow is hijacked.\nI:H - cmd_readmem writes an attacker-chosen number of bytes into the fixed-size s_mem.buffer on the kernel stack (cros_ec_lpc_read_bytes loops length times into dest), producing an out-of-bounds write exploitable for integrity compromise and control-flow hijacking.\nA:H - Stack buffer overflow past s_mem.buffer can oops/panic the kernel (stack canary, corrupted frames, or large I/O reads into kernel stack), which is high availability impact under kernel CVSS guidance."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T08:59:10.542Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/e548f9503c4b3292a60a63fe77dccea62999a35a"
        },
        {
          "url": "https://git.kernel.org/stable/c/868fc93b615b9f6c2b0b1894536618fa6cd66acc"
        },
        {
          "url": "https://git.kernel.org/stable/c/fd1d3b265784a2243fcaef06aebfb2f8ee733cec"
        },
        {
          "url": "https://git.kernel.org/stable/c/f143f1d9a8e5c6c9db3de81ca270191226fcce36"
        },
        {
          "url": "https://git.kernel.org/stable/c/0c2e18924504208644d18415667895a4ac54cf2a"
        },
        {
          "url": "https://git.kernel.org/stable/c/8a07b45fd3c2dda24fad43639be5335a4595196a"
        }
      ],
      "title": "platform/chrome: fix memory corruption in ioctl",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-50570",
    "datePublished": "2025-10-22T13:23:26.495Z",
    "dateReserved": "2025-10-22T13:20:23.760Z",
    "dateUpdated": "2026-08-05T08:59:10.542Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2022-50570",
      "date": "2026-09-16",
      "epss": "0.00153",
      "percentile": "0.04845"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-50570\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-10-22T14:15:41.910\",\"lastModified\":\"2026-08-04T10:18:19.780\",\"vulnStatus\":\"Deferred\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nplatform/chrome: fix memory corruption in ioctl\\n\\nIf \\\"s_mem.bytes\\\" is larger than the buffer size it leads to memory\\ncorruption.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/platform/chrome/cros_ec_chardev.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"e548f9503c4b3292a60a63fe77dccea62999a35a\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"868fc93b615b9f6c2b0b1894536618fa6cd66acc\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"fd1d3b265784a2243fcaef06aebfb2f8ee733cec\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"f143f1d9a8e5c6c9db3de81ca270191226fcce36\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"0c2e18924504208644d18415667895a4ac54cf2a\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"eda2e30c6684d67288edb841c6125d48c608a242\",\"lessThan\":\"8a07b45fd3c2dda24fad43639be5335a4595196a\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/platform/chrome/cros_ec_chardev.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.4\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.4\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.4.220\",\"lessThanOrEqual\":\"5.4.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.10.150\",\"lessThanOrEqual\":\"5.10.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.75\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.19.17\",\"lessThanOrEqual\":\"5.19.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.0.3\",\"lessThanOrEqual\":\"6.0.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0c2e18924504208644d18415667895a4ac54cf2a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/868fc93b615b9f6c2b0b1894536618fa6cd66acc\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/8a07b45fd3c2dda24fad43639be5335a4595196a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/e548f9503c4b3292a60a63fe77dccea62999a35a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/f143f1d9a8e5c6c9db3de81ca270191226fcce36\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fd1d3b265784a2243fcaef06aebfb2f8ee733cec\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-30T10:28:10+00:00",
      "cve": "CVE-2022-50570",
      "id": "CVE-2022-50570",
      "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: platform/chrome: fix memory corruption in ioctl",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2022/cve-2022-50570.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-01T01:24:15Z",
      "cve": "CVE-2022-50570",
      "id": "CVE-2022-50570",
      "initial_release_date": "2025-10-23T00:10:52Z",
      "product_status:known_affected": "354",
      "product_status:known_not_affected": "386",
      "product_status:recommended": "196",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2022-50570",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2022-50570.json",
      "version": "29"
    }
  }
}



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…

Detection rules are retrieved from Rulezet.

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…