{"id":"CVE-2024-22192","aliases":["EUVD-2024-0268","GHSA-6698-mhxx-r84g"],"status":"published","title":"Ursa CL-Signatures Revocation allows verifiers to generate unique identifiers for holders","description":"Ursa is a cryptographic library for use with blockchains. The revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof. The impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof. Ursa has moved to end-of-life status and no fix is expected.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-09","score":0.00317,"percentile":0.24779,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-327"],"published":"2024-01-16T21:13:40Z","modified":"2026-10-28T02:31:09Z","fixes":[{"ecosystem":"crates.io","package":"anoncreds-clsignatures","fixed_in":["0.1.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"ursa","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"0.3.7"}]}]},{"source":"ghsa","ecosystem":"crates.io","package":"anoncreds-clsignatures","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.1.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"ursa","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"last_affected":"0.3.7"}]}]},{"source":"osv","ecosystem":"crates.io","package":"anoncreds-clsignatures","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.1.0"}]}]}],"products":[{"vendor":"hyperledger","product":"ursa"},{"vendor":"hyperledger-archives","product":"ursa"}],"references":[{"url":"https://github.com/hyperledger-archives/ursa/security/advisories/GHSA-6698-mhxx-r84g","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory","web"]},{"url":"https://github.com/hyperledger/anoncreds-clsignatures-rs/commit/1e55780c890b027fa51e361e188a7743a0bf473f","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-22192","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-6698-mhxx-r84g"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/22xxx/CVE-2024-22192.json","tags":["advisory"]},{"url":"https://github.com/hyperledger-archives/ursa","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2024-22192","title":"Ursa CL-Signatures Revocation allows verifiers to generate unique identifiers for holders","description":"Ursa is a cryptographic library for use with blockchains. The revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof. The impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof. Ursa has moved to end-of-life status and no fix is expected.","status":"published","published":"2024-01-16T21:44:53.121Z","modified":"2025-06-16T19:46:20.983Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-327"],"updated_at":"2026-11-02T14:34:00.254134Z"}],"euvd":[{"id":"EUVD-2024-0268","description":"Ursa is a cryptographic library for use with blockchains. The revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof. The impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof. Ursa has moved to end-of-life status and no fix is expected.","status":"published","published":"2024-01-16T21:44:53Z","modified":"2025-06-16T19:46:20Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T20:32:23.224988Z"}],"ghsa":[{"id":"GHSA-6698-mhxx-r84g","title":"Ursa CL-Signatures Revocation allows verifiers to generate unique identifiers for holders","description":"### Summary\n\nThe revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof.\n\n### Details\n\nThe revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model, potentially allowing a malicious verifier to generate a unique identifier for a holder that provides a verifiable presentation that includes a Non-Revocation proof.\n\nThe flaws affects all CL-Signature versions published from the [Hyperledger Ursa] repository to the [Ursa Rust Crate], and is fixed in all versions published from the [Hyperledger AnonCreds CL-Signatures] repository to the [AnonCreds CL-Signatures Rust Crate].\n\nThe addressing the flaw requires updating AnonCreds holder software (such as mobile wallets) to a corrected CL-Signature implementation, such as the [AnonCreds CL Signatures Rust Crate]. Verifying presentations from corrected holders requires a updating the verifier software to a corrected CL-Signatures implementation. An updated verifier based on AnonCreds CL-Signatures can verify presentations from holders built on either the flawed Ursa CL-Signature implementation or a corrected CL-Signature implementation\n\n[Hyperledger Ursa]: https://github.com/hyperledger-archives/ursa\n[Ursa Rust Crate]: https://crates.io/crates/ursa\n[Hyperledger AnonCreds CL-Signatures]: https://github.com/hyperledger/anoncreds-clsignatures-rs\n[AnonCreds CL-Signatures Rust Crate]: https://crates.io/crates/anoncreds-clsignatures\n\nThe flaw occurs as a result of generating a verifiable presentation that includes a Non-Revocation proof from a flawed implementation.\n\n### Impact\nThe impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof.\n\n### Mitigation\n\nUpgrade libraries/holder applications that generate AnonCreds verifiable presentations using the [Ursa Rust Crate] to any version of the [AnonCreds CL-Signatures Rust Crate].","status":"published","published":"2024-01-16T21:13:40Z","modified":"2024-01-28T05:06:32Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-327"],"updated_at":"2026-11-02T14:37:33.019154Z"}],"nvd":[{"id":"CVE-2024-22192","description":"Ursa is a cryptographic library for use with blockchains. The revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof. The impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof. Ursa has moved to end-of-life status and no fix is expected.","status":"published","published":"2024-01-16T22:15:46.22Z","modified":"2026-06-17T07:10:54.47Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium","assessor":"secondary"},{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-327"],"updated_at":"2026-11-02T14:09:30.070039Z"}],"osv":[{"id":"CVE-2024-22192","title":"Ursa CL-Signatures Revocation allows verifiers to generate unique identifiers for holders","description":"Ursa is a cryptographic library for use with blockchains. The revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof. The impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof. Ursa has moved to end-of-life status and no fix is expected.","status":"published","published":"2024-01-16T21:44:53.121Z","modified":"2026-10-28T02:31:09.60923241Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-327"],"updated_at":"2026-11-02T15:44:38.577405Z"},{"id":"GHSA-6698-mhxx-r84g","title":"Ursa CL-Signatures Revocation allows verifiers to generate unique identifiers for holders","description":"### Summary\n\nThe revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model. Notably, a malicious verifier may be able to generate a unique identifier for a holder providing a verifiable presentation that includes a Non-Revocation proof.\n\n### Details\n\nThe revocation scheme that is part of the Ursa CL-Signatures implementations has a flaw that could impact the privacy guarantees defined by the AnonCreds verifiable credential model, potentially allowing a malicious verifier to generate a unique identifier for a holder that provides a verifiable presentation that includes a Non-Revocation proof.\n\nThe flaws affects all CL-Signature versions published from the [Hyperledger Ursa] repository to the [Ursa Rust Crate], and is fixed in all versions published from the [Hyperledger AnonCreds CL-Signatures] repository to the [AnonCreds CL-Signatures Rust Crate].\n\nThe addressing the flaw requires updating AnonCreds holder software (such as mobile wallets) to a corrected CL-Signature implementation, such as the [AnonCreds CL Signatures Rust Crate]. Verifying presentations from corrected holders requires a updating the verifier software to a corrected CL-Signatures implementation. An updated verifier based on AnonCreds CL-Signatures can verify presentations from holders built on either the flawed Ursa CL-Signature implementation or a corrected CL-Signature implementation\n\n[Hyperledger Ursa]: https://github.com/hyperledger-archives/ursa\n[Ursa Rust Crate]: https://crates.io/crates/ursa\n[Hyperledger AnonCreds CL-Signatures]: https://github.com/hyperledger/anoncreds-clsignatures-rs\n[AnonCreds CL-Signatures Rust Crate]: https://crates.io/crates/anoncreds-clsignatures\n\nThe flaw occurs as a result of generating a verifiable presentation that includes a Non-Revocation proof from a flawed implementation.\n\n### Impact\nThe impact of the flaw is that a malicious verifier may be able to determine a unique identifier for a holder presenting a Non-Revocation proof.\n\n### Mitigation\n\nUpgrade libraries/holder applications that generate AnonCreds verifiable presentations using the [Ursa Rust Crate] to any version of the [AnonCreds CL-Signatures Rust Crate].","status":"published","published":"2024-01-16T21:13:40Z","modified":"2026-09-10T03:50:04.917255104Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-327"],"updated_at":"2026-11-02T15:46:39.266402Z"}]}}
