cve-2022-48987
Vulnerability from cvelistv5
Published
2024-10-21 20:06
Modified
2024-12-19 08:11
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: media: v4l2-dv-timings.c: fix too strict blanking sanity checks Sanity checks were added to verify the v4l2_bt_timings blanking fields in order to avoid integer overflows when userspace passes weird values. But that assumed that userspace would correctly fill in the front porch, backporch and sync values, but sometimes all you know is the total blanking, which is then assigned to just one of these fields. And that can fail with these checks. So instead set a maximum for the total horizontal and vertical blanking and check that each field remains below that. That is still sufficient to avoid integer overflows, but it also allows for more flexibility in how userspace fills in these fields.
Impacted products
Vendor Product Version
Linux Linux Version: 15ded23db134da975b49ea99770de0346c193b24
Version: 3d43b2b8a3cdadd6cef9ac8ef5d156b6214a01c8
Version: 9cf9211635b68e8e0c8cb88d43ca7dc83e4632aa
Version: b4a3a01762ae072c7f6ff2ff53b5019761288346
Version: 683015ae163481457a16fad2317af66360dc4762
Version: 491c0959f01d87bcbd5a1498bc70e0a3382c65a8
Version: dc7276c3f6ca008be1faf531f84b49906c9bcf7f
Version: 4b6d66a45ed34a15721cb9e11492fa1a24bc83df
Create a notification for this product.
   Linux Linux Version: 4.9.332   
Version: 4.14.298   
Version: 4.19.264   
Version: 5.4.223   
Version: 5.10.153   
Version: 5.15.77   
Version: 6.0.7   
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2022-48987",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-10-22T13:17:04.941322Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-10-22T13:18:42.763Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/media/v4l2-core/v4l2-dv-timings.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "0d73b49c4037199472b29574ae21c21aef493971",
              "status": "affected",
              "version": "15ded23db134da975b49ea99770de0346c193b24",
              "versionType": "git"
            },
            {
              "lessThan": "a2b56627c0d13009e02f6f2c0206c0451ed19a0e",
              "status": "affected",
              "version": "3d43b2b8a3cdadd6cef9ac8ef5d156b6214a01c8",
              "versionType": "git"
            },
            {
              "lessThan": "2572ab14b73aa45b6ae7e4c089ccf119fed5cf89",
              "status": "affected",
              "version": "9cf9211635b68e8e0c8cb88d43ca7dc83e4632aa",
              "versionType": "git"
            },
            {
              "lessThan": "4afc77068e36cee45b39d4fdc7513de26980f72c",
              "status": "affected",
              "version": "b4a3a01762ae072c7f6ff2ff53b5019761288346",
              "versionType": "git"
            },
            {
              "lessThan": "32f01f0306a98629508f84d7ef0d1d037bc274a2",
              "status": "affected",
              "version": "683015ae163481457a16fad2317af66360dc4762",
              "versionType": "git"
            },
            {
              "lessThan": "6fb8bc29bfa80707994a63cc97e2f9920e0b0608",
              "status": "affected",
              "version": "491c0959f01d87bcbd5a1498bc70e0a3382c65a8",
              "versionType": "git"
            },
            {
              "lessThan": "d3d14cdf1c7ae2caa3e999bae95ba99e955fb7c3",
              "status": "affected",
              "version": "dc7276c3f6ca008be1faf531f84b49906c9bcf7f",
              "versionType": "git"
            },
            {
              "lessThan": "5eef2141776da02772c44ec406d6871a790761ee",
              "status": "affected",
              "version": "4b6d66a45ed34a15721cb9e11492fa1a24bc83df",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/media/v4l2-core/v4l2-dv-timings.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "4.9.336",
              "status": "affected",
              "version": "4.9.332",
              "versionType": "semver"
            },
            {
              "lessThan": "4.14.302",
              "status": "affected",
              "version": "4.14.298",
              "versionType": "semver"
            },
            {
              "lessThan": "4.19.269",
              "status": "affected",
              "version": "4.19.264",
              "versionType": "semver"
            },
            {
              "lessThan": "5.4.227",
              "status": "affected",
              "version": "5.4.223",
              "versionType": "semver"
            },
            {
              "lessThan": "5.10.159",
              "status": "affected",
              "version": "5.10.153",
              "versionType": "semver"
            },
            {
              "lessThan": "5.15.83",
              "status": "affected",
              "version": "5.15.77",
              "versionType": "semver"
            },
            {
              "lessThan": "6.0.13",
              "status": "affected",
              "version": "6.0.7",
              "versionType": "semver"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: v4l2-dv-timings.c: fix too strict blanking sanity checks\n\nSanity checks were added to verify the v4l2_bt_timings blanking fields\nin order to avoid integer overflows when userspace passes weird values.\n\nBut that assumed that userspace would correctly fill in the front porch,\nbackporch and sync values, but sometimes all you know is the total\nblanking, which is then assigned to just one of these fields.\n\nAnd that can fail with these checks.\n\nSo instead set a maximum for the total horizontal and vertical\nblanking and check that each field remains below that.\n\nThat is still sufficient to avoid integer overflows, but it also\nallows for more flexibility in how userspace fills in these fields."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2024-12-19T08:11:57.880Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/0d73b49c4037199472b29574ae21c21aef493971"
        },
        {
          "url": "https://git.kernel.org/stable/c/a2b56627c0d13009e02f6f2c0206c0451ed19a0e"
        },
        {
          "url": "https://git.kernel.org/stable/c/2572ab14b73aa45b6ae7e4c089ccf119fed5cf89"
        },
        {
          "url": "https://git.kernel.org/stable/c/4afc77068e36cee45b39d4fdc7513de26980f72c"
        },
        {
          "url": "https://git.kernel.org/stable/c/32f01f0306a98629508f84d7ef0d1d037bc274a2"
        },
        {
          "url": "https://git.kernel.org/stable/c/6fb8bc29bfa80707994a63cc97e2f9920e0b0608"
        },
        {
          "url": "https://git.kernel.org/stable/c/d3d14cdf1c7ae2caa3e999bae95ba99e955fb7c3"
        },
        {
          "url": "https://git.kernel.org/stable/c/5eef2141776da02772c44ec406d6871a790761ee"
        }
      ],
      "title": "media: v4l2-dv-timings.c: fix too strict blanking sanity checks",
      "x_generator": {
        "engine": "bippy-5f407fcff5a0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2022-48987",
    "datePublished": "2024-10-21T20:06:03.328Z",
    "dateReserved": "2024-08-22T01:27:53.634Z",
    "dateUpdated": "2024-12-19T08:11:57.880Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2022-48987\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-10-21T20:15:10.617\",\"lastModified\":\"2024-11-01T15:27:26.880\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmedia: v4l2-dv-timings.c: fix too strict blanking sanity checks\\n\\nSanity checks were added to verify the v4l2_bt_timings blanking fields\\nin order to avoid integer overflows when userspace passes weird values.\\n\\nBut that assumed that userspace would correctly fill in the front porch,\\nbackporch and sync values, but sometimes all you know is the total\\nblanking, which is then assigned to just one of these fields.\\n\\nAnd that can fail with these checks.\\n\\nSo instead set a maximum for the total horizontal and vertical\\nblanking and check that each field remains below that.\\n\\nThat is still sufficient to avoid integer overflows, but it also\\nallows for more flexibility in how userspace fills in these fields.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: media: v4l2-dv-timings.c: se corrigen comprobaciones de cordura de borrado demasiado estrictas Se a\u00f1adieron comprobaciones de cordura para verificar los campos de borrado de v4l2_bt_timings para evitar desbordamientos de enteros cuando el espacio de usuario pasa valores extra\u00f1os. Pero eso supon\u00eda que el espacio de usuario rellenar\u00eda correctamente los valores de front porch, back porch y sync, pero a veces todo lo que sabes es el borrado total, que luego se asigna a solo uno de estos campos. Y eso puede fallar con estas comprobaciones. As\u00ed que, en su lugar, establece un m\u00e1ximo para el borrado horizontal y vertical total y comprueba que cada campo permanezca por debajo de eso. Eso sigue siendo suficiente para evitar desbordamientos de enteros, pero tambi\u00e9n permite m\u00e1s flexibilidad en c\u00f3mo el espacio de usuario rellena estos campos.\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-190\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"4.9.332\",\"versionEndExcluding\":\"4.9.336\",\"matchCriteriaId\":\"1EA5E6E0-F60E-4B95-AE97-C3027AA27388\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"4.14.298\",\"versionEndExcluding\":\"4.14.302\",\"matchCriteriaId\":\"8951F556-AF07-4129-996D-5BB44778FC95\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"4.19.264\",\"versionEndExcluding\":\"4.19.269\",\"matchCriteriaId\":\"74A39CCD-7EBA-4ED1-A24C-C1C0F8902BDD\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.4.226\",\"versionEndExcluding\":\"5.4.227\",\"matchCriteriaId\":\"72E8F2FD-FA28-4184-BEFD-92915760FB87\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.10.153\",\"versionEndExcluding\":\"5.10.159\",\"matchCriteriaId\":\"F188CD3F-F2C5-4C45-A3C3-B105BFD832E5\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.15.77\",\"versionEndExcluding\":\"5.15.83\",\"matchCriteriaId\":\"60E56598-983B-4E47-B87D-9B08693E8368\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.0.7\",\"versionEndExcluding\":\"6.0.13\",\"matchCriteriaId\":\"143D804C-0BEB-4434-B48B-1CA625157A7C\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0d73b49c4037199472b29574ae21c21aef493971\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/2572ab14b73aa45b6ae7e4c089ccf119fed5cf89\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/32f01f0306a98629508f84d7ef0d1d037bc274a2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/4afc77068e36cee45b39d4fdc7513de26980f72c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/5eef2141776da02772c44ec406d6871a790761ee\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/6fb8bc29bfa80707994a63cc97e2f9920e0b0608\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/a2b56627c0d13009e02f6f2c0206c0451ed19a0e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/d3d14cdf1c7ae2caa3e999bae95ba99e955fb7c3\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2022-48987\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-10-22T13:17:04.941322Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-10-22T13:17:08.232Z\"}}], \"cna\": {\"title\": \"media: v4l2-dv-timings.c: fix too strict blanking sanity checks\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"15ded23db134da975b49ea99770de0346c193b24\", \"lessThan\": \"0d73b49c4037199472b29574ae21c21aef493971\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"3d43b2b8a3cdadd6cef9ac8ef5d156b6214a01c8\", \"lessThan\": \"a2b56627c0d13009e02f6f2c0206c0451ed19a0e\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"9cf9211635b68e8e0c8cb88d43ca7dc83e4632aa\", \"lessThan\": \"2572ab14b73aa45b6ae7e4c089ccf119fed5cf89\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"b4a3a01762ae072c7f6ff2ff53b5019761288346\", \"lessThan\": \"4afc77068e36cee45b39d4fdc7513de26980f72c\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"683015ae163481457a16fad2317af66360dc4762\", \"lessThan\": \"32f01f0306a98629508f84d7ef0d1d037bc274a2\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"491c0959f01d87bcbd5a1498bc70e0a3382c65a8\", \"lessThan\": \"6fb8bc29bfa80707994a63cc97e2f9920e0b0608\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"dc7276c3f6ca008be1faf531f84b49906c9bcf7f\", \"lessThan\": \"d3d14cdf1c7ae2caa3e999bae95ba99e955fb7c3\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"4b6d66a45ed34a15721cb9e11492fa1a24bc83df\", \"lessThan\": \"5eef2141776da02772c44ec406d6871a790761ee\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/media/v4l2-core/v4l2-dv-timings.c\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"4.9.332\", \"lessThan\": \"4.9.336\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"4.14.298\", \"lessThan\": \"4.14.302\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"4.19.264\", \"lessThan\": \"4.19.269\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"5.4.223\", \"lessThan\": \"5.4.227\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"5.10.153\", \"lessThan\": \"5.10.159\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"5.15.77\", \"lessThan\": \"5.15.83\", \"versionType\": \"semver\"}, {\"status\": \"affected\", \"version\": \"6.0.7\", \"lessThan\": \"6.0.13\", \"versionType\": \"semver\"}], \"programFiles\": [\"drivers/media/v4l2-core/v4l2-dv-timings.c\"], \"defaultStatus\": \"unaffected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/0d73b49c4037199472b29574ae21c21aef493971\"}, {\"url\": \"https://git.kernel.org/stable/c/a2b56627c0d13009e02f6f2c0206c0451ed19a0e\"}, {\"url\": \"https://git.kernel.org/stable/c/2572ab14b73aa45b6ae7e4c089ccf119fed5cf89\"}, {\"url\": \"https://git.kernel.org/stable/c/4afc77068e36cee45b39d4fdc7513de26980f72c\"}, {\"url\": \"https://git.kernel.org/stable/c/32f01f0306a98629508f84d7ef0d1d037bc274a2\"}, {\"url\": \"https://git.kernel.org/stable/c/6fb8bc29bfa80707994a63cc97e2f9920e0b0608\"}, {\"url\": \"https://git.kernel.org/stable/c/d3d14cdf1c7ae2caa3e999bae95ba99e955fb7c3\"}, {\"url\": \"https://git.kernel.org/stable/c/5eef2141776da02772c44ec406d6871a790761ee\"}], \"x_generator\": {\"engine\": \"bippy-5f407fcff5a0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmedia: v4l2-dv-timings.c: fix too strict blanking sanity checks\\n\\nSanity checks were added to verify the v4l2_bt_timings blanking fields\\nin order to avoid integer overflows when userspace passes weird values.\\n\\nBut that assumed that userspace would correctly fill in the front porch,\\nbackporch and sync values, but sometimes all you know is the total\\nblanking, which is then assigned to just one of these fields.\\n\\nAnd that can fail with these checks.\\n\\nSo instead set a maximum for the total horizontal and vertical\\nblanking and check that each field remains below that.\\n\\nThat is still sufficient to avoid integer overflows, but it also\\nallows for more flexibility in how userspace fills in these fields.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-12-19T08:11:57.880Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2022-48987\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-12-19T08:11:57.880Z\", \"dateReserved\": \"2024-08-22T01:27:53.634Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-10-21T20:06:03.328Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.1"
    }
  }
}


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.