Skip to content
Heist/ feed
Back to feed
Medium

optee-os — security advisory

Type: advisorySources: OSVAdvisory ID: UBUNTU-CVE-2026-45614

OP-TEE is a Trusted Execution Environment (TEE) designed as companion to a non-secure Linux kernel running on Arm; Cortex-A cores using the TrustZone technology. Prior to version 4.11.0, on many of the ECDH shared secret paths, the public key isn't verified to be a point on the correct curve. By passing approximately 30-40 crafted public keys to OP-TEE, the private key can be reconstructed by a normal world attacker. When calling TEE_DeriveKey the public key is provided with full X and Y values, but the (X, Y) point might not satisfy the `Y^2 == X^3 + aX + b mod P` math for the specific curve that is used. When those public keys aren't rejected, the attacker can select public keys such that each DeriveKey call will leak `d % r` where `d` is the private key and `r` comes from the relationship between the correct curve and the attacker selected curve. With enough leaked data the Chinese remainder theorem can be used to recover the full private key. Version 4.11.0 fixes the issue.

Products
optee-os
Affected versions
4.10.0-1, 4.10.0-2, 4.5.0-1, 4.5.0-2, 4.7.0-1, 4.8.0-1
Fixed versions
Not specified
CVEs
CVE-2026-45614
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 00:32 UTC · Revision 1

Source evidence

UBUNTU-CVE-2026-45614

core-osv · Original source

Published 3 Jun 2026, 19:16 UTC

OP-TEE is a Trusted Execution Environment (TEE) designed as companion to a non-secure Linux kernel running on Arm; Cortex-A cores using the TrustZone technology. Prior to version 4.11.0, on many of the ECDH shared secret paths, the public key isn't verified to be a point on the correct curve. By passing approximately 30-40 crafted public keys to OP-TEE, the private key can be reconstructed by a normal world attacker. When calling TEE_DeriveKey the public key is provided with full X and Y values, but the (X, Y) point might not satisfy the `Y^2 == X^3 + aX + b mod P` math for the specific curve that is used. When those public keys aren't rejected, the attacker can select public keys such that each DeriveKey call will leak `d % r` where `d` is the private key and `r` comes from the relationship between the correct curve and the attacker selected curve. With enough leaked data the Chinese remainder theorem can be used to recover the full private key. Version 4.11.0 fixes the issue.

osv:UBUNTU-CVE-2026-45614

optee-os

Fixed versions: Not specified

optee-os

Fixed versions: Not specified

optee-os

Fixed versions: Not specified

Complete source record
{
  "id": "0fde6e243d76c31442a2f29d29ed8f8c75fb6bac33dcf13d862d6c253625a7d3",
  "url": "https://osv.dev/vulnerability/UBUNTU-CVE-2026-45614",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "UBUNTU-CVE-2026-45614",
    "summary": "OP-TEE is a Trusted Execution Environment (TEE) designed as companion to a non-secure Linux kernel running on Arm; Cortex-A cores using the TrustZone technology. Prior to version 4.11.0, on many of the ECDH shared secret paths, the public key isn't verified to be a point on the correct curve. By passing approximately 30-40 crafted public keys to OP-TEE, the private key can be reconstructed by a normal world attacker. When calling TEE_DeriveKey the public key is provided with full X and Y values, but the (X, Y) point might not satisfy the `Y^2 == X^3 + aX + b mod P` math for the specific curve that is used. When those public keys aren't rejected, the attacker can select public keys such that each DeriveKey call will leak `d % r` where `d` is the private key and `r` comes from the relationship between the correct curve and the attacker selected curve. With enough leaked data the Chinese remainder theorem can be used to recover the full private key. Version 4.11.0 fixes the issue.",
    "evidence": "osv:UBUNTU-CVE-2026-45614",
    "products": [
      {
        "name": {
          "value": "optee-os",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "4.5.0-1",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "4.5.0-2",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "4.7.0-1",
            "evidence": "/affected/0/versions"
          }
        ]
      },
      {
        "name": {
          "value": "optee-os",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "4.8.0-1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "4.10.0-1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "4.10.0-2",
            "evidence": "/affected/1/versions"
          }
        ]
      },
      {
        "name": {
          "value": "optee-os",
          "evidence": "/affected/2/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "4.7.0-1",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "4.8.0-1",
            "evidence": "/affected/2/versions"
          }
        ]
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "UBUNTU-CVE-2026-45614",
      "aliases": [
        "UBUNTU-CVE-2026-45614"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"
        },
        {
          "type": "Ubuntu",
          "score": "medium"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "optee-os",
            "purl": "pkg:deb/ubuntu/optee-os?arch=source&distro=questing",
            "ecosystem": "Ubuntu:25.10"
          },
          "versions": [
            "4.5.0-1",
            "4.5.0-2",
            "4.7.0-1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-45614.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "optee-os",
                "binary_version": "4.7.0-1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "optee-os",
            "purl": "pkg:deb/ubuntu/optee-os?arch=source&distro=stonking",
            "ecosystem": "Ubuntu:26.10"
          },
          "versions": [
            "4.8.0-1",
            "4.10.0-1",
            "4.10.0-2"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-45614.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "optee-os",
                "binary_version": "4.10.0-2"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "optee-os",
            "purl": "pkg:deb/ubuntu/optee-os?arch=source&distro=resolute",
            "ecosystem": "Ubuntu:26.04:LTS"
          },
          "versions": [
            "4.7.0-1",
            "4.8.0-1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-45614.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "optee-os",
                "binary_version": "4.8.0-1"
              }
            ]
          }
        }
      ],
      "modified": "2026-10-17T12:55:37.484809281Z",
      "provider": "osv",
      "upstream": [
        "CVE-2026-45614"
      ],
      "references": [
        "https://ubuntu.com/security/CVE-2026-45614",
        "https://www.cve.org/CVERecord?id=CVE-2026-45614",
        "https://github.com/OP-TEE/optee_os/security/advisories/GHSA-g6qf-hwf7-mg9h"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2026-45614",
        "evidence": "/upstream"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 353910,
  "published_at": "2026-06-03T19:16:00+00:00"
}