{"id":"GHSA-p94w-42g3-f7h4","aliases":[],"status":"published","title":"Holder can (re)create authentic credentials after receiving a credential in vp-toolkit","description":"### Impact\nThe [`verifyVerifiableCredential()`](https://github.com/rabobank-blockchain/vp-toolkit/blob/master/src/service/signers/verifiable-credential-signer.ts#L57) method check the cryptographic integrity of the Verifiable Credential, but it does not check if the [`credential.issuer`](https://github.com/rabobank-blockchain/vp-toolkit-models/blob/develop/src/model/verifiable-credential.ts#L129) DID matches the signer of the credential.\n\nThe **verifier** is impacted by this vulnerability.\n\n### Patches\nPatch will be available in version 0.2.2.\n\n### Workarounds\nIn case you trust certain issuers for certain credentials as a verifier, trust the issuer\u0026#39;s public key from the `credential.proof.verificationMethod` field.\n\n### References\n[Github issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Discuss in the existing [issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n* [Contact me](https://github.com/rabomarnix)","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2020-03-06T01:16:00Z","modified":"2023-01-09T05:02:21Z","fixes":[{"ecosystem":"npm","package":"vp-toolkit","fixed_in":["0.2.2"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"vp-toolkit","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.2.2"}]}]},{"source":"osv","ecosystem":"npm","package":"vp-toolkit","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.2.2"}]}]}],"references":[{"url":"https://github.com/rabobank-blockchain/vp-toolkit/security/advisories/GHSA-p94w-42g3-f7h4","tags":["web"]},{"url":"https://github.com/rabobank-blockchain/vp-toolkit/issues/13","tags":["web"]},{"url":"https://github.com/rabobank-blockchain/vp-toolkit/commit/6315936d1d7913fd116fa51a0dbbd29d82c0ce17","tags":["web"]},{"url":"https://github.com/advisories/GHSA-p94w-42g3-f7h4"}],"sources":{"ghsa":[{"id":"GHSA-p94w-42g3-f7h4","title":"Holder can (re)create authentic credentials after receiving a credential in vp-toolkit","description":"### Impact\nThe [`verifyVerifiableCredential()`](https://github.com/rabobank-blockchain/vp-toolkit/blob/master/src/service/signers/verifiable-credential-signer.ts#L57) method check the cryptographic integrity of the Verifiable Credential, but it does not check if the [`credential.issuer`](https://github.com/rabobank-blockchain/vp-toolkit-models/blob/develop/src/model/verifiable-credential.ts#L129) DID matches the signer of the credential.\n\nThe **verifier** is impacted by this vulnerability.\n\n### Patches\nPatch will be available in version 0.2.2.\n\n### Workarounds\nIn case you trust certain issuers for certain credentials as a verifier, trust the issuer\u0026#39;s public key from the `credential.proof.verificationMethod` field.\n\n### References\n[Github issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Discuss in the existing [issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n* [Contact me](https://github.com/rabomarnix)","status":"published","published":"2020-03-06T01:16:00Z","modified":"2023-01-09T05:02:21Z","updated_at":"2026-11-02T14:36:03.040255Z"}],"osv":[{"id":"GHSA-p94w-42g3-f7h4","title":"Holder can (re)create authentic credentials after receiving a credential in vp-toolkit","description":"### Impact\nThe [`verifyVerifiableCredential()`](https://github.com/rabobank-blockchain/vp-toolkit/blob/master/src/service/signers/verifiable-credential-signer.ts#L57) method check the cryptographic integrity of the Verifiable Credential, but it does not check if the [`credential.issuer`](https://github.com/rabobank-blockchain/vp-toolkit-models/blob/develop/src/model/verifiable-credential.ts#L129) DID matches the signer of the credential.\n\nThe **verifier** is impacted by this vulnerability.\n\n### Patches\nPatch will be available in version 0.2.2.\n\n### Workarounds\nIn case you trust certain issuers for certain credentials as a verifier, trust the issuer\u0026#39;s public key from the `credential.proof.verificationMethod` field.\n\n### References\n[Github issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n\n### For more information\nIf you have any questions or comments about this advisory:\n* Discuss in the existing [issue](https://github.com/rabobank-blockchain/vp-toolkit/issues/13)\n* [Contact me](https://github.com/rabomarnix)","status":"published","published":"2020-03-06T01:16:00Z","modified":"2020-02-28T16:38:09Z","updated_at":"2026-11-02T15:46:52.891208Z"}]}}
