Skip to content
Heist/ feed
Back to feed
High

Security advisory

Type: advisorySources: OSVCVE: CVE-2016-6129

The rsa_verify_hash_ex function in rsa_verify_hash.c in LibTomCrypt, as used in OP-TEE before 2.2.0, does not validate that the message length is equal to the ASN.1 encoded data length, which makes it easier for remote attackers to forge RSA signatures or public certificates by leveraging a Bleichenbacher signature forgery attack.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2016-6129
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 09:40 UTC · Revision 1

Source evidence

CVE-2016-6129

core-osv · Original source

Published 13 Feb 2017, 18:59 UTC

The rsa_verify_hash_ex function in rsa_verify_hash.c in LibTomCrypt, as used in OP-TEE before 2.2.0, does not validate that the message length is equal to the ASN.1 encoded data length, which makes it easier for remote attackers to forge RSA signatures or public certificates by leveraging a Bleichenbacher signature forgery attack.

osv:CVE-2016-6129
Complete source record
{
  "id": "960f1ad3e399f64a457bdd5e80a8c58e53324b31bc8ef3deca9006630f962aa0",
  "url": "https://osv.dev/vulnerability/CVE-2016-6129",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2016-6129",
    "summary": "The rsa_verify_hash_ex function in rsa_verify_hash.c in LibTomCrypt, as used in OP-TEE before 2.2.0, does not validate that the message length is equal to the ASN.1 encoded data length, which makes it easier for remote attackers to forge RSA signatures or public certificates by leveraging a Bleichenbacher signature forgery attack.",
    "evidence": "osv:CVE-2016-6129",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2016-6129",
      "aliases": [
        "CVE-2016-6129"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/libtom/libtomcrypt",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "bbc52b9e1bf4b22ac4616e667b06d217c6ab004e"
                },
                {
                  "fixed": "5eb9743410ce4657e9d54fef26a2ee31a1b5dd0"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:libtom:libtomcrypt:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "1.17"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "5eb9743410ce4657e9d54fef26a2ee31a1b5dd0"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "1.17",
            "1.16",
            "1.15",
            "1.14",
            "1.13",
            "1.12",
            "1.11",
            "1.10",
            "1.09",
            "1.08",
            "1.07",
            "1.06",
            "1.05",
            "1.04",
            "1.03",
            "1.02",
            "1.01",
            "1.00",
            "0.99",
            "0.98",
            "0.97b",
            "0.97a",
            "0.97",
            "0.96",
            "0.95",
            "0.94",
            "0.93",
            "0.92",
            "0.91",
            "0.90",
            "0.89",
            "0.88",
            "0.87",
            "0.86",
            "0.85",
            "0.84",
            "0.83",
            "0.82",
            "0.81",
            "0.80",
            "0.79",
            "0.78",
            "0.77",
            "0.76",
            "0.75"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2016-6129.json"
          }
        }
      ],
      "modified": "2026-10-20T10:47:31.434139042Z",
      "provider": "osv",
      "references": [
        "https://www.op-tee.org/advisories/",
        "https://bugzilla.redhat.com/show_bug.cgi?id=1370955",
        "https://github.com/libtom/libtomcrypt/commit/5eb9743410ce4657e9d54fef26a2ee31a1b5dd0"
      ],
      "provider_metadata": {
        "unresolved_ranges": [
          {
            "cpes": [
              "cpe:2.3:o:trustedfirmware:op-tee:*:*:*:*:*:*:*:*"
            ],
            "vendor_product": "trustedfirmware:op-tee",
            "extracted_events": [
              {
                "range": [
                  {
                    "fixed": "2.2.0"
                  }
                ],
                "source": "CPE_RANGE"
              }
            ]
          }
        ]
      }
    },
    "related_cves": [
      {
        "value": "CVE-2016-6129",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 379466,
  "published_at": "2017-02-13T18:59:00.66+00:00"
}