« Volver al listado

CVE-2022-49659

Estado: AnalizadaMedia (5.5)—

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

can: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits

In commit 1be37d3b0414 ("can: m_can: fix periph RX path: use rx-offload to ensure skbs are sent from softirq context") the RX path for peripheral devices was switched to RX-offload.

Received CAN frames are pushed to RX-offload together with a timestamp. RX-offload is designed to handle overflows of the timestamp correctly, if 32 bit timestamps are provided.

The timestamps of m_can core are only 16 bits wide. So this patch shifts them to full 32 bit before passing them to RX-offload.

CVSS

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

Tecnologías afectadas (1)

CWE

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2022-49659",
  "cveTags": [],
  "metrics": {
    "cvssMetricV31": [
      {
        "type": "Primary",
        "source": "nvd@nist.gov",
        "cvssData": {
          "scope": "UNCHANGED",
          "version": "3.1",
          "baseScore": 5.5,
          "attackVector": "LOCAL",
          "baseSeverity": "MEDIUM",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
          "integrityImpact": "NONE",
          "userInteraction": "NONE",
          "attackComplexity": "LOW",
          "availabilityImpact": "HIGH",
          "privilegesRequired": "LOW",
          "confidentialityImpact": "NONE"
        },
        "impactScore": 3.6,
        "exploitabilityScore": 1.8
      }
    ]
  },
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "1be37d3b0414e3db47f6fcba6c16286bbae0cb65",
              "lessThan": "c7333f79888497bfd75dcd02a94eaf836dd1042c",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "1be37d3b0414e3db47f6fcba6c16286bbae0cb65",
              "lessThan": "2a2914a5bd7f38efe55a8372178146de82e0bce9",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "1be37d3b0414e3db47f6fcba6c16286bbae0cb65",
              "lessThan": "4c3333693f07313f5f0145a922f14a7d3c0f4f21",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/net/can/m_can/m_can.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.13"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "5.13",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "5.15.54",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "status": "unaffected",
              "version": "5.18.11",
              "versionType": "semver",
              "lessThanOrEqual": "5.18.*"
            },
            {
              "status": "unaffected",
              "version": "5.19",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/net/can/m_can/m_can.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2025-02-26T07:01:40.957",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/2a2914a5bd7f38efe55a8372178146de82e0bce9",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/4c3333693f07313f5f0145a922f14a7d3c0f4f21",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/c7333f79888497bfd75dcd02a94eaf836dd1042c",
      "tags": [
        "Patch"
      ],
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Analyzed",
  "weaknesses": [
    {
      "type": "Primary",
      "source": "nvd@nist.gov",
      "description": [
        {
          "lang": "en",
          "value": "NVD-CWE-noinfo"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncan: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits\n\nIn commit 1be37d3b0414 (\"can: m_can: fix periph RX path: use\nrx-offload to ensure skbs are sent from softirq context\") the RX path\nfor peripheral devices was switched to RX-offload.\n\nReceived CAN frames are pushed to RX-offload together with a\ntimestamp. RX-offload is designed to handle overflows of the timestamp\ncorrectly, if 32 bit timestamps are provided.\n\nThe timestamps of m_can core are only 16 bits wide. So this patch\nshifts them to full 32 bit before passing them to RX-offload."
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: can: m_can: m_can_{read_fifo,echo_tx_event}(): cambiar la marca de tiempo a 32 bits completos En el commit 1be37d3b0414 (\"can: m_can: corregir la ruta RX de los periféricos: usar rx-offload para garantizar que los skbs se envíen desde el contexto de softirq\"), la ruta RX para los dispositivos periféricos se cambió a RX-offload. Los marcos CAN recibidos se envían a RX-offload junto con una marca de tiempo. RX-offload está diseñado para gestionar desbordamientos de la marca de tiempo correctamente, si se proporcionan marcas de tiempo de 32 bits. Las marcas de tiempo del núcleo m_can tienen solo 16 bits de ancho. Por lo tanto, este parche las cambia a 32 bits completos antes de pasarlas a RX-offload."
    }
  ],
  "lastModified": "2026-06-17T05:18:46.670",
  "configurations": [
    {
      "nodes": [
        {
          "negate": false,
          "cpeMatch": [
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "ABA06B3C-8860-4ECA-9816-F639EF21329F",
              "versionEndExcluding": "5.15.54",
              "versionStartIncluding": "5.13"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "622F881E-3317-4653-9558-86008C2FBFD2",
              "versionEndExcluding": "5.18.11",
              "versionStartIncluding": "5.16"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.19:rc1:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "A8C30C2D-F82D-4D37-AB48-D76ABFBD5377"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.19:rc2:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "BF8547FC-C849-4F1B-804B-A93AE2F04A92"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.19:rc3:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "F3068028-F453-4A1C-B80F-3F5609ACEF60"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.19:rc4:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "2E9C0DB0-D349-489F-A3D6-B77214E93A8A"
            },
            {
              "criteria": "cpe:2.3:o:linux:linux_kernel:5.19:rc5:*:*:*:*:*:*",
              "vulnerable": true,
              "matchCriteriaId": "1A0DE3B7-0FFB-45AA-9BD6-19870CA7C6FD"
            }
          ],
          "operator": "OR"
        }
      ]
    }
  ],
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}