{
  "schema_version": "1.4.0",
  "id": "GHSA-g4vj-x7v9-h82m",
  "modified": "2021-08-18T21:20:32Z",
  "published": "2021-08-25T20:56:03Z",
  "aliases": [
    "CVE-2021-38195"
  ],
  "summary": "Overflow in libsecp256k1",
  "details": "An issue was discovered in the libsecp256k1 crate before 0.5.0 for Rust. It can verify an invalid signature because it allows the R or S parameter to be larger than the curve order, aka an overflow.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "crates.io",
        "name": "libsecp256k1"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "0.5.0"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2021-38195"
    },
    {
      "type": "WEB",
      "url": "https://github.com/paritytech/libsecp256k1/pull/67"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/paritytech/libsecp256k1"
    },
    {
      "type": "WEB",
      "url": "https://rustsec.org/advisories/RUSTSEC-2021-0076.html"
    }
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-190",
      "CWE-347"
    ],
    "severity": "CRITICAL",
    "github_reviewed": true,
    "github_reviewed_at": "2021-08-18T21:20:32Z",
    "nvd_published_at": "2021-08-08T06:15:00Z"
  }
}