CVE-2025-21871 (GCVE-0-2025-21871)
Vulnerability from cvelistv5
Published
2025-03-27 13:38
Modified
2025-05-04 07:22
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: tee: optee: Fix supplicant wait loop OP-TEE supplicant is a user-space daemon and it's possible for it be hung or crashed or killed in the middle of processing an OP-TEE RPC call. It becomes more complicated when there is incorrect shutdown ordering of the supplicant process vs the OP-TEE client application which can eventually lead to system hang-up waiting for the closure of the client application. Allow the client process waiting in kernel for supplicant response to be killed rather than indefinitely waiting in an unkillable state. Also, a normal uninterruptible wait should not have resulted in the hung-task watchdog getting triggered, but the endless loop would. This fixes issues observed during system reboot/shutdown when supplicant got hung for some reason or gets crashed/killed which lead to client getting hung in an unkillable state. It in turn lead to system being in hung up state requiring hard power off/on to recover.
Impacted products
Vendor Product Version
Linux Linux Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Version: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/tee/optee/supp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "3eb4911364c764572e9db4ab900a57689a54e8ce",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "0180cf0373f84fff61b16f8c062553a13dd7cfca",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "c0a9a948159153be145f9471435695373904ee6d",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "ec18520f5edc20a00c34a8c9fdd6507c355e880f",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "d61cc1a435e6894bfb0dd3370c6f765d2d12825d",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "fd9d2d6124c293e40797a080adf8a9c237efd8b8",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "21234efe2a8474a6d2d01ea9573319de7858ce44",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            },
            {
              "lessThan": "70b0d6b0a199c5a3ee6c72f5e61681ed6f759612",
              "status": "affected",
              "version": "4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/tee/optee/supp.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.12"
            },
            {
              "lessThan": "4.12",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.291",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.235",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.179",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.130",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.80",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.17",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.13.*",
              "status": "unaffected",
              "version": "6.13.5",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.14",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.4.291",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.235",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.179",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.130",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.80",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.17",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.13.5",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.14",
                  "versionStartIncluding": "4.12",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntee: optee: Fix supplicant wait loop\n\nOP-TEE supplicant is a user-space daemon and it\u0027s possible for it\nbe hung or crashed or killed in the middle of processing an OP-TEE\nRPC call. It becomes more complicated when there is incorrect shutdown\nordering of the supplicant process vs the OP-TEE client application which\ncan eventually lead to system hang-up waiting for the closure of the\nclient application.\n\nAllow the client process waiting in kernel for supplicant response to\nbe killed rather than indefinitely waiting in an unkillable state. Also,\na normal uninterruptible wait should not have resulted in the hung-task\nwatchdog getting triggered, but the endless loop would.\n\nThis fixes issues observed during system reboot/shutdown when supplicant\ngot hung for some reason or gets crashed/killed which lead to client\ngetting hung in an unkillable state. It in turn lead to system being in\nhung up state requiring hard power off/on to recover."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-05-04T07:22:55.829Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/3eb4911364c764572e9db4ab900a57689a54e8ce"
        },
        {
          "url": "https://git.kernel.org/stable/c/0180cf0373f84fff61b16f8c062553a13dd7cfca"
        },
        {
          "url": "https://git.kernel.org/stable/c/c0a9a948159153be145f9471435695373904ee6d"
        },
        {
          "url": "https://git.kernel.org/stable/c/ec18520f5edc20a00c34a8c9fdd6507c355e880f"
        },
        {
          "url": "https://git.kernel.org/stable/c/d61cc1a435e6894bfb0dd3370c6f765d2d12825d"
        },
        {
          "url": "https://git.kernel.org/stable/c/fd9d2d6124c293e40797a080adf8a9c237efd8b8"
        },
        {
          "url": "https://git.kernel.org/stable/c/21234efe2a8474a6d2d01ea9573319de7858ce44"
        },
        {
          "url": "https://git.kernel.org/stable/c/70b0d6b0a199c5a3ee6c72f5e61681ed6f759612"
        }
      ],
      "title": "tee: optee: Fix supplicant wait loop",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-21871",
    "datePublished": "2025-03-27T13:38:23.461Z",
    "dateReserved": "2024-12-29T08:45:45.781Z",
    "dateUpdated": "2025-05-04T07:22:55.829Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2025-21871\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-03-27T14:15:48.860\",\"lastModified\":\"2025-03-27T16:45:12.210\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ntee: optee: Fix supplicant wait loop\\n\\nOP-TEE supplicant is a user-space daemon and it\u0027s possible for it\\nbe hung or crashed or killed in the middle of processing an OP-TEE\\nRPC call. It becomes more complicated when there is incorrect shutdown\\nordering of the supplicant process vs the OP-TEE client application which\\ncan eventually lead to system hang-up waiting for the closure of the\\nclient application.\\n\\nAllow the client process waiting in kernel for supplicant response to\\nbe killed rather than indefinitely waiting in an unkillable state. Also,\\na normal uninterruptible wait should not have resulted in the hung-task\\nwatchdog getting triggered, but the endless loop would.\\n\\nThis fixes issues observed during system reboot/shutdown when supplicant\\ngot hung for some reason or gets crashed/killed which lead to client\\ngetting hung in an unkillable state. It in turn lead to system being in\\nhung up state requiring hard power off/on to recover.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: tee: optee: Fix supplicant wait loop OP-TEE supplicant es un daemon de espacio de usuario y es posible que se cuelgue, se bloquee o se elimine en medio del procesamiento de una llamada RPC OP-TEE. Se vuelve m\u00e1s complicado cuando hay un orden de apagado incorrecto del proceso suplicante frente a la aplicaci\u00f3n cliente OP-TEE, lo que puede eventualmente provocar que el sistema se cuelgue esperando el cierre de la aplicaci\u00f3n cliente. Permita que el proceso cliente que espera en el kernel la respuesta del suplicante se elimine en lugar de esperar indefinidamente en un estado imposible de eliminar. Adem\u00e1s, una espera ininterrumpida normal no deber\u00eda haber provocado que se activara el watchdog de tareas colgadas, pero el bucle infinito s\u00ed. Esto soluciona los problemas observados durante el reinicio/apagado del sistema cuando el suplicante se colgaba por alguna raz\u00f3n o se bloqueaba/eliminaba, lo que provocaba que el cliente se colgara en un estado imposible de eliminar. A su vez, provocaba que el sistema quedara en un estado colgado que requer\u00eda un apagado/encendido forzado para recuperarse.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0180cf0373f84fff61b16f8c062553a13dd7cfca\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/21234efe2a8474a6d2d01ea9573319de7858ce44\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3eb4911364c764572e9db4ab900a57689a54e8ce\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/70b0d6b0a199c5a3ee6c72f5e61681ed6f759612\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/c0a9a948159153be145f9471435695373904ee6d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/d61cc1a435e6894bfb0dd3370c6f765d2d12825d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ec18520f5edc20a00c34a8c9fdd6507c355e880f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/fd9d2d6124c293e40797a080adf8a9c237efd8b8\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


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.


Loading…

Loading…