CVE-2025-40263 (GCVE-0-2025-40263)

Vulnerability from cvelistv5 – Published: 2025-12-04 16:08 – Updated: 2026-06-02 13:00
VLAI
Title
Input: cros_ec_keyb - fix an invalid memory access
Summary
In the Linux kernel, the following vulnerability has been resolved: Input: cros_ec_keyb - fix an invalid memory access If cros_ec_keyb_register_matrix() isn't called (due to `buttons_switches_only`) in cros_ec_keyb_probe(), `ckdev->idev` remains NULL. An invalid memory access is observed in cros_ec_keyb_process() when receiving an EC_MKBP_EVENT_KEY_MATRIX event in cros_ec_keyb_work() in such case. Unable to handle kernel read from unreadable memory at virtual address 0000000000000028 ... x3 : 0000000000000000 x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000000000000 Call trace: input_event cros_ec_keyb_work blocking_notifier_call_chain ec_irq_thread It's still unknown about why the kernel receives such malformed event, in any cases, the kernel shouldn't access `ckdev->idev` and friends if the driver doesn't intend to initialize them.
Severity
No CVSS data available.
Assigner
Linux CNA under the mitre root
CNA scorecard D 53/100 over 6992 records in the last 180 days details
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0 , < d74864291cb8bd784d44d1d02e87109cf88666bb (git)
Affected: ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0 , < 9cf59f4724a9ee06ebb06c76b8678ac322e850b7 (git)
Affected: ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0 , < 6d81068685154535af06163eb585d6d9663ec7ec (git)
Affected: ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0 , < 2d251c15c27e2dd16d6318425d2f7260cbd47d39 (git)
Affected: ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0 , < e08969c4d65ac31297fcb4d31d4808c789152f68 (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.19
Unaffected: 0 , < 5.19 (semver)
Unaffected: 6.1.159 , ≤ 6.1.* (semver)
Unaffected: 6.6.118 , ≤ 6.6.* (semver)
Unaffected: 6.12.60 , ≤ 6.12.* (semver)
Unaffected: 6.17.10 , ≤ 6.17.* (semver)
Unaffected: 6.18 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Siemens RUGGEDCOM RST2428P Affected: 0 , < V4.0 (custom)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "affected": [
          {
            "defaultStatus": "unknown",
            "product": "RUGGEDCOM RST2428P",
            "vendor": "Siemens",
            "versions": [
              {
                "lessThan": "V4.0",
                "status": "affected",
                "version": "0",
                "versionType": "custom"
              }
            ]
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-06-02T13:00:15.067Z",
          "orgId": "0b142b55-0307-4c5a-b3c9-f314f3fb7c5e",
          "shortName": "siemens-SADP"
        },
        "references": [
          {
            "url": "https://cert-portal.siemens.com/productcert/html/ssa-253495.html"
          }
        ],
        "x_adpType": "supplier"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/input/keyboard/cros_ec_keyb.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d74864291cb8bd784d44d1d02e87109cf88666bb",
              "status": "affected",
              "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
              "versionType": "git"
            },
            {
              "lessThan": "9cf59f4724a9ee06ebb06c76b8678ac322e850b7",
              "status": "affected",
              "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
              "versionType": "git"
            },
            {
              "lessThan": "6d81068685154535af06163eb585d6d9663ec7ec",
              "status": "affected",
              "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
              "versionType": "git"
            },
            {
              "lessThan": "2d251c15c27e2dd16d6318425d2f7260cbd47d39",
              "status": "affected",
              "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
              "versionType": "git"
            },
            {
              "lessThan": "e08969c4d65ac31297fcb4d31d4808c789152f68",
              "status": "affected",
              "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/input/keyboard/cros_ec_keyb.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": "6.1.*",
              "status": "unaffected",
              "version": "6.1.159",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.118",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.60",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.17.*",
              "status": "unaffected",
              "version": "6.17.10",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.18",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.159",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.118",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.60",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.17.10",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nInput: cros_ec_keyb - fix an invalid memory access\n\nIf cros_ec_keyb_register_matrix() isn\u0027t called (due to\n`buttons_switches_only`) in cros_ec_keyb_probe(), `ckdev-\u003eidev` remains\nNULL.  An invalid memory access is observed in cros_ec_keyb_process()\nwhen receiving an EC_MKBP_EVENT_KEY_MATRIX event in cros_ec_keyb_work()\nin such case.\n\n  Unable to handle kernel read from unreadable memory at virtual address 0000000000000028\n  ...\n  x3 : 0000000000000000 x2 : 0000000000000000\n  x1 : 0000000000000000 x0 : 0000000000000000\n  Call trace:\n  input_event\n  cros_ec_keyb_work\n  blocking_notifier_call_chain\n  ec_irq_thread\n\nIt\u0027s still unknown about why the kernel receives such malformed event,\nin any cases, the kernel shouldn\u0027t access `ckdev-\u003eidev` and friends if\nthe driver doesn\u0027t intend to initialize them."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-11T21:45:57.409Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d74864291cb8bd784d44d1d02e87109cf88666bb"
        },
        {
          "url": "https://git.kernel.org/stable/c/9cf59f4724a9ee06ebb06c76b8678ac322e850b7"
        },
        {
          "url": "https://git.kernel.org/stable/c/6d81068685154535af06163eb585d6d9663ec7ec"
        },
        {
          "url": "https://git.kernel.org/stable/c/2d251c15c27e2dd16d6318425d2f7260cbd47d39"
        },
        {
          "url": "https://git.kernel.org/stable/c/e08969c4d65ac31297fcb4d31d4808c789152f68"
        }
      ],
      "title": "Input: cros_ec_keyb - fix an invalid memory access",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-40263",
    "datePublished": "2025-12-04T16:08:23.327Z",
    "dateReserved": "2025-04-16T07:20:57.182Z",
    "dateUpdated": "2026-06-02T13:00:15.067Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-40263",
      "date": "2026-10-20",
      "epss": "0.00193",
      "percentile": "0.08399"
    },
    "microsoft_vex": {
      "current_release_date": "2025-12-09T01:39:15.000Z",
      "cve": "CVE-2025-40263",
      "id": "msrc_CVE-2025-40263",
      "initial_release_date": "2025-12-02T00:00:00.000Z",
      "product_status:known_affected": "1",
      "product_status:known_not_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "Input: cros_ec_keyb - fix an invalid memory access",
      "url": "https://msrc.microsoft.com/csaf/vex/2025/msrc_cve-2025-40263.json",
      "version": "3"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/input/keyboard/cros_ec_keyb.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "d74864291cb8bd784d44d1d02e87109cf88666bb",
                    "status": "affected",
                    "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "9cf59f4724a9ee06ebb06c76b8678ac322e850b7",
                    "status": "affected",
                    "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6d81068685154535af06163eb585d6d9663ec7ec",
                    "status": "affected",
                    "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "2d251c15c27e2dd16d6318425d2f7260cbd47d39",
                    "status": "affected",
                    "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "e08969c4d65ac31297fcb4d31d4808c789152f68",
                    "status": "affected",
                    "version": "ca1eadbfcd36bec73f2a2111c28e8c7e9e8ae6c0",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/input/keyboard/cros_ec_keyb.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": "6.1.*",
                    "status": "unaffected",
                    "version": "6.1.159",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.118",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.60",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.17.*",
                    "status": "unaffected",
                    "version": "6.17.10",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.18",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          },
          {
            "affectedData": [
              {
                "defaultStatus": "unknown",
                "product": "RUGGEDCOM RST2428P",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "V4.0",
                    "status": "affected",
                    "version": "0",
                    "versionType": "custom"
                  }
                ]
              }
            ],
            "source": "0b142b55-0307-4c5a-b3c9-f314f3fb7c5e"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nInput: cros_ec_keyb - fix an invalid memory access\n\nIf cros_ec_keyb_register_matrix() isn\u0027t called (due to\n`buttons_switches_only`) in cros_ec_keyb_probe(), `ckdev-\u003eidev` remains\nNULL.  An invalid memory access is observed in cros_ec_keyb_process()\nwhen receiving an EC_MKBP_EVENT_KEY_MATRIX event in cros_ec_keyb_work()\nin such case.\n\n  Unable to handle kernel read from unreadable memory at virtual address 0000000000000028\n  ...\n  x3 : 0000000000000000 x2 : 0000000000000000\n  x1 : 0000000000000000 x0 : 0000000000000000\n  Call trace:\n  input_event\n  cros_ec_keyb_work\n  blocking_notifier_call_chain\n  ec_irq_thread\n\nIt\u0027s still unknown about why the kernel receives such malformed event,\nin any cases, the kernel shouldn\u0027t access `ckdev-\u003eidev` and friends if\nthe driver doesn\u0027t intend to initialize them."
          },
          {
            "lang": "es",
            "value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nEntrada: cros_ec_keyb - corrige un acceso a memoria no v\u00e1lido\n\nSi cros_ec_keyb_register_matrix() no es llamada (debido a \u0027buttons_switches_only\u0027) en cros_ec_keyb_probe(), \u0027ckdev -\u003e idev\u0027 permanece NULL. Se observa un acceso a memoria no v\u00e1lido en cros_ec_keyb_process() al recibir un evento EC_MKBP_EVENT_KEY_MATRIX en cros_ec_keyb_work() en tal caso.\n\nNo se puede manejar la lectura del kernel desde memoria ilegible en la direcci\u00f3n virtual 0000000000000028\n...\nx3 : 0000000000000000 x2 : 0000000000000000\nx1 : 0000000000000000 x0 : 0000000000000000\nRastro de llamada:\ninput_event\ncros_ec_keyb_work\nblocking_notifier_call_chain\nec_irq_thread\n\nA\u00fan se desconoce por qu\u00e9 el kernel recibe un evento tan malformado, en cualquier caso, el kernel no deber\u00eda acceder a \u0027ckdev -\u003e idev\u0027 y sus relacionados si el controlador no tiene la intenci\u00f3n de inicializarlos."
          }
        ],
        "id": "CVE-2025-40263",
        "lastModified": "2026-10-18T18:10:00.100",
        "metrics": {},
        "published": "2025-12-04T16:16:20.340",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/2d251c15c27e2dd16d6318425d2f7260cbd47d39"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/6d81068685154535af06163eb585d6d9663ec7ec"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/9cf59f4724a9ee06ebb06c76b8678ac322e850b7"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/d74864291cb8bd784d44d1d02e87109cf88666bb"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/e08969c4d65ac31297fcb4d31d4808c789152f68"
          },
          {
            "source": "0b142b55-0307-4c5a-b3c9-f314f3fb7c5e",
            "url": "https://cert-portal.siemens.com/productcert/html/ssa-253495.html"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Deferred"
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-30T10:34:28+00:00",
      "cve": "CVE-2025-40263",
      "id": "CVE-2025-40263",
      "initial_release_date": "2025-12-04T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: Input: cros_ec_keyb - fix an invalid memory access",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-40263.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

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.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
Events included in the timeline

Loading timeline…


    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.