← Back to CVE Explorer

CVE-2021-47659

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: drm/plane: Move range check for format_count earlier While the check for format_count > 64 in __drm_universal_plane_init() shouldn't be hit (it's a WARN_ON), in its current position it will then leak the plane->format_types array and fail to call drm_mode_object_unregister() leaking the modeset identifier. Move it to the start of the function to avoid allocating those resources in the first place.

Severity
MEDIUM
CVSS score
5.5 (v3.1)
Vulnerability status
Analyzed
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2025-02-26 06:37:07.640000
Last modified
2026-11-05 20:16:56.093000
View original CVE JSON
{
  "id": "CVE-2021-47659",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2025-02-26T06:37:07.640",
  "lastModified": "2026-11-05T20:16:56.093",
  "vulnStatus": "Analyzed",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/plane: Move range check for format_count earlier\n\nWhile the check for format_count > 64 in __drm_universal_plane_init()\nshouldn't be hit (it's a WARN_ON), in its current position it will then\nleak the plane->format_types array and fail to call\ndrm_mode_object_unregister() leaking the modeset identifier. Move it to\nthe start of the function to avoid allocating those resources in the\nfirst place."
    },
    {
      "lang": "es",
      "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: drm/plane: mover la comprobación de rango para format_count antes Si bien la comprobación para format_count > 64 en __drm_universal_plane_init() no debería verse afectada (es un WARN_ON), en su posición actual perderá la matriz plane->format_types y no podrá llamar a drm_mode_object_unregister(), lo que filtra el identificador modeset. Muévalo al inicio de la función para evitar asignar esos recursos en primer lugar."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/gpu/drm/drm_plane.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "4ab7e453a3ee88c274cf97bee9487ab92a66d313",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "1e29d829ad51d1472dd035487953a6724b56fc33",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "b5cd108143513e4498027b96ec4710702d186f11",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "978e3d023256bfaf34a0033d40c94e8a8e70cf3c",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "787163d19bc3cdc6ca4b96223f62208534d1cf6b",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "ad6dd7a2bac86118985c7b3426e175b9d3c1ec4f",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e6fc3b68558e4c6d8d160b5daf2511b99afa8814",
              "lessThan": "4b674dd69701c2e22e8e7770c1706a69f3b17269",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/gpu/drm/drm_plane.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "4.14",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "4.14",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "4.19.247",
              "lessThanOrEqual": "4.19.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.4.198",
              "lessThanOrEqual": "5.4.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.121",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.46",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.17.14",
              "lessThanOrEqual": "5.17.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.18.3",
              "lessThanOrEqual": "5.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.19",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "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
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-11-05T19:42:32.788551Z",
          "id": "CVE-2021-47659",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Primary",
      "description": [
        {
          "lang": "en",
          "value": "NVD-CWE-noinfo"
        }
      ]
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "operator": "OR",
          "negate": false,
          "cpeMatch": [
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "4.14",
              "versionEndExcluding": "4.19.247",
              "matchCriteriaId": "CADA388B-8A88-4308-9539-3059B1718C12"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "4.20",
              "versionEndExcluding": "5.4.198",
              "matchCriteriaId": "3EC49633-14DE-4EBD-BB80-76AE2E3EABB9"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "5.5",
              "versionEndExcluding": "5.10.121",
              "matchCriteriaId": "34ACD872-E5BC-401C-93D5-B357A62426E0"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "5.11",
              "versionEndExcluding": "5.15.46",
              "matchCriteriaId": "20D41697-0E8B-4B7D-8842-F17BF2AA21E1"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "5.16",
              "versionEndExcluding": "5.17.14",
              "matchCriteriaId": "15E2DD33-2255-4B76-9C15-04FF8CBAB252"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "5.18",
              "versionEndExcluding": "5.18.3",
              "matchCriteriaId": "8E122216-2E9E-4B3E-B7B8-D575A45BA3C2"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/1e29d829ad51d1472dd035487953a6724b56fc33",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/4ab7e453a3ee88c274cf97bee9487ab92a66d313",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/4b674dd69701c2e22e8e7770c1706a69f3b17269",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/787163d19bc3cdc6ca4b96223f62208534d1cf6b",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/978e3d023256bfaf34a0033d40c94e8a8e70cf3c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/ad6dd7a2bac86118985c7b3426e175b9d3c1ec4f",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    },
    {
      "url": "https://git.kernel.org/stable/c/b5cd108143513e4498027b96ec4710702d186f11",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "tags": [
        "Patch"
      ]
    }
  ]
}