ghsa-8qxj-f9rh-9fg2
Vulnerability from github
Published
2020-04-01 16:35
Modified
2024-09-20 16:52
Summary
Improper Verification of Cryptographic Signature in Pure-Python ECDSA
Details

A flaw was found in all python-ecdsa versions before 0.13.3, where it did not correctly verify whether signatures used DER encoding. Without this verification, a malformed signature could be accepted, making the signature malleable. Without proper verification, an attacker could use a malleable signature to create false transactions.

Show details on source website


{
  "affected": [
    {
      "ecosystem_specific": {
        "affected_functions": [
          "ecdsa.der.remove_constructed",
          "ecdsa.der.remove_sequence",
          "ecdsa.der.remove_octet_string",
          "ecdsa.der.remove_object",
          "ecdsa.der.remove_integer",
          "ecdsa.der.read_length",
          "ecdsa.keys.VerifyingKey.verify_digest",
          "ecdsa.util.sigdecode_string",
          "ecdsa.util.sigdecode_strings"
        ]
      },
      "package": {
        "ecosystem": "PyPI",
        "name": "ecdsa"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "0.13.3"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2019-14859"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-347"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2020-04-01T15:40:54Z",
    "nvd_published_at": "2020-01-02T15:15:00Z",
    "severity": "CRITICAL"
  },
  "details": "A flaw was found in all python-ecdsa versions before 0.13.3, where it did not correctly verify whether signatures used DER encoding. Without this verification, a malformed signature could be accepted, making the signature malleable. Without proper verification, an attacker could use a malleable signature to create false transactions.",
  "id": "GHSA-8qxj-f9rh-9fg2",
  "modified": "2024-09-20T16:52:23Z",
  "published": "2020-04-01T16:35:26Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2019-14859"
    },
    {
      "type": "WEB",
      "url": "https://github.com/warner/python-ecdsa/issues/114"
    },
    {
      "type": "WEB",
      "url": "https://github.com/warner/python-ecdsa/pull/115"
    },
    {
      "type": "WEB",
      "url": "https://github.com/tlsfuzzer/python-ecdsa/commit/3427fa29f319b27898a28601955807abb44c0830"
    },
    {
      "type": "WEB",
      "url": "https://github.com/tlsfuzzer/python-ecdsa/commit/9080d1d5ac533da0de00466aaffb49bee808bb4e"
    },
    {
      "type": "WEB",
      "url": "https://github.com/tlsfuzzer/python-ecdsa/commit/b0ea52bb3aa9a16c9a4a91fdc0041edbfed10b31"
    },
    {
      "type": "WEB",
      "url": "https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-14859"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/advisories/GHSA-8qxj-f9rh-9fg2"
    },
    {
      "type": "WEB",
      "url": "https://github.com/pypa/advisory-database/tree/main/vulns/ecdsa/PYSEC-2020-163.yaml"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/warner/python-ecdsa"
    },
    {
      "type": "WEB",
      "url": "https://github.com/warner/python-ecdsa/releases/tag/python-ecdsa-0.13.3"
    },
    {
      "type": "WEB",
      "url": "https://pypi.org/project/ecdsa/0.13.3"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N",
      "type": "CVSS_V3"
    },
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Improper Verification of Cryptographic Signature in Pure-Python ECDSA"
}


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.