Vulnerabilites related to node-saml - passport-saml
cve-2022-39299
Vulnerability from cvelistv5
Published
2022-10-12 00:00
Modified
2024-08-03 12:00
Severity ?
EPSS score ?
Summary
Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. A remote attacker may be able to bypass SAML authentication on a website using passport-saml. A successful attack requires that the attacker is in possession of an arbitrary IDP signed XML element. Depending on the IDP used, fully unauthenticated attacks (e.g without access to a valid user) might also be feasible if generation of a signed message can be triggered. Users should upgrade to passport-saml version 3.2.2 or newer. The issue was also present in the beta releases of `node-saml` before version 4.0.0-beta.5. If you cannot upgrade, disabling SAML authentication may be done as a workaround.
References
Impacted products
Vendor | Product | Version | ||
---|---|---|---|---|
node-saml | passport-saml |
Version: < 3.2.2 |
{ containers: { adp: [ { providerMetadata: { dateUpdated: "2024-08-03T12:00:44.015Z", orgId: "af854a3a-2127-422b-91ae-364da2661108", shortName: "CVE", }, references: [ { tags: [ "x_transferred", ], url: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-m974-647v-whv7", }, { tags: [ "x_transferred", ], url: "https://github.com/node-saml/passport-saml/commit/8b7e3f5a91c8e5ac7e890a0c90bc7491ce33155e", }, { tags: [ "x_transferred", ], url: "http://packetstormsecurity.com/files/169826/Node-saml-Root-Element-Signature-Bypass.html", }, ], title: "CVE Program Container", }, ], cna: { affected: [ { product: "passport-saml", vendor: "node-saml", versions: [ { status: "affected", version: "< 3.2.2", }, ], }, ], descriptions: [ { lang: "en", value: "Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. A remote attacker may be able to bypass SAML authentication on a website using passport-saml. A successful attack requires that the attacker is in possession of an arbitrary IDP signed XML element. Depending on the IDP used, fully unauthenticated attacks (e.g without access to a valid user) might also be feasible if generation of a signed message can be triggered. Users should upgrade to passport-saml version 3.2.2 or newer. The issue was also present in the beta releases of `node-saml` before version 4.0.0-beta.5. If you cannot upgrade, disabling SAML authentication may be done as a workaround.", }, ], metrics: [ { cvssV3_1: { attackComplexity: "HIGH", attackVector: "NETWORK", availabilityImpact: "NONE", baseScore: 7.4, baseSeverity: "HIGH", confidentialityImpact: "HIGH", integrityImpact: "HIGH", privilegesRequired: "NONE", scope: "UNCHANGED", userInteraction: "NONE", vectorString: "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", version: "3.1", }, }, ], problemTypes: [ { descriptions: [ { cweId: "CWE-347", description: "CWE-347: Improper Verification of Cryptographic Signature", lang: "en", type: "CWE", }, ], }, ], providerMetadata: { dateUpdated: "2022-11-14T00:00:00", orgId: "a0819718-46f1-4df5-94e2-005712e83aaa", shortName: "GitHub_M", }, references: [ { url: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-m974-647v-whv7", }, { url: "https://github.com/node-saml/passport-saml/commit/8b7e3f5a91c8e5ac7e890a0c90bc7491ce33155e", }, { url: "http://packetstormsecurity.com/files/169826/Node-saml-Root-Element-Signature-Bypass.html", }, ], source: { advisory: "GHSA-m974-647v-whv7", discovery: "UNKNOWN", }, title: "Signature bypass via multiple root elements in Passport-SAML", }, }, cveMetadata: { assignerOrgId: "a0819718-46f1-4df5-94e2-005712e83aaa", assignerShortName: "GitHub_M", cveId: "CVE-2022-39299", datePublished: "2022-10-12T00:00:00", dateReserved: "2022-09-02T00:00:00", dateUpdated: "2024-08-03T12:00:44.015Z", state: "PUBLISHED", }, dataType: "CVE_RECORD", dataVersion: "5.1", }
cve-2021-39171
Vulnerability from cvelistv5
Published
2021-08-27 22:05
Modified
2024-08-04 01:58
Severity ?
EPSS score ?
Summary
Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. Prior to version 3.1.0, a malicious SAML payload can require transforms that consume significant system resources to process, thereby resulting in reduced or denied service. This would be an effective way to perform a denial-of-service attack. This has been resolved in version 3.1.0. The resolution is to limit the number of allowable transforms to 2.
References
▼ | URL | Tags |
---|---|---|
https://github.com/node-saml/passport-saml/security/advisories/GHSA-5379-r78w-42h2 | x_refsource_CONFIRM | |
https://github.com/node-saml/passport-saml/pull/595 | x_refsource_MISC |
Impacted products
Vendor | Product | Version | ||
---|---|---|---|---|
node-saml | passport-saml |
Version: < 3.1.0 |
{ containers: { adp: [ { providerMetadata: { dateUpdated: "2024-08-04T01:58:18.150Z", orgId: "af854a3a-2127-422b-91ae-364da2661108", shortName: "CVE", }, references: [ { tags: [ "x_refsource_CONFIRM", "x_transferred", ], url: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-5379-r78w-42h2", }, { tags: [ "x_refsource_MISC", "x_transferred", ], url: "https://github.com/node-saml/passport-saml/pull/595", }, ], title: "CVE Program Container", }, ], cna: { affected: [ { product: "passport-saml", vendor: "node-saml", versions: [ { status: "affected", version: "< 3.1.0", }, ], }, ], descriptions: [ { lang: "en", value: "Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. Prior to version 3.1.0, a malicious SAML payload can require transforms that consume significant system resources to process, thereby resulting in reduced or denied service. This would be an effective way to perform a denial-of-service attack. This has been resolved in version 3.1.0. The resolution is to limit the number of allowable transforms to 2.", }, ], metrics: [ { cvssV3_1: { attackComplexity: "LOW", attackVector: "NETWORK", availabilityImpact: "LOW", baseScore: 5.3, baseSeverity: "MEDIUM", confidentialityImpact: "NONE", integrityImpact: "NONE", privilegesRequired: "NONE", scope: "UNCHANGED", userInteraction: "NONE", vectorString: "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", version: "3.1", }, }, ], problemTypes: [ { descriptions: [ { cweId: "CWE-400", description: "CWE-400: Uncontrolled Resource Consumption", lang: "en", type: "CWE", }, ], }, ], providerMetadata: { dateUpdated: "2021-08-27T22:05:11", orgId: "a0819718-46f1-4df5-94e2-005712e83aaa", shortName: "GitHub_M", }, references: [ { tags: [ "x_refsource_CONFIRM", ], url: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-5379-r78w-42h2", }, { tags: [ "x_refsource_MISC", ], url: "https://github.com/node-saml/passport-saml/pull/595", }, ], source: { advisory: "GHSA-5379-r78w-42h2", discovery: "UNKNOWN", }, title: "Unlimited transforms allowed for signed nodes", x_legacyV4Record: { CVE_data_meta: { ASSIGNER: "security-advisories@github.com", ID: "CVE-2021-39171", STATE: "PUBLIC", TITLE: "Unlimited transforms allowed for signed nodes", }, affects: { vendor: { vendor_data: [ { product: { product_data: [ { product_name: "passport-saml", version: { version_data: [ { version_value: "< 3.1.0", }, ], }, }, ], }, vendor_name: "node-saml", }, ], }, }, data_format: "MITRE", data_type: "CVE", data_version: "4.0", description: { description_data: [ { lang: "eng", value: "Passport-SAML is a SAML 2.0 authentication provider for Passport, the Node.js authentication library. Prior to version 3.1.0, a malicious SAML payload can require transforms that consume significant system resources to process, thereby resulting in reduced or denied service. This would be an effective way to perform a denial-of-service attack. This has been resolved in version 3.1.0. The resolution is to limit the number of allowable transforms to 2.", }, ], }, impact: { cvss: { attackComplexity: "LOW", attackVector: "NETWORK", availabilityImpact: "LOW", baseScore: 5.3, baseSeverity: "MEDIUM", confidentialityImpact: "NONE", integrityImpact: "NONE", privilegesRequired: "NONE", scope: "UNCHANGED", userInteraction: "NONE", vectorString: "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L", version: "3.1", }, }, problemtype: { problemtype_data: [ { description: [ { lang: "eng", value: "CWE-400: Uncontrolled Resource Consumption", }, ], }, ], }, references: { reference_data: [ { name: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-5379-r78w-42h2", refsource: "CONFIRM", url: "https://github.com/node-saml/passport-saml/security/advisories/GHSA-5379-r78w-42h2", }, { name: "https://github.com/node-saml/passport-saml/pull/595", refsource: "MISC", url: "https://github.com/node-saml/passport-saml/pull/595", }, ], }, source: { advisory: "GHSA-5379-r78w-42h2", discovery: "UNKNOWN", }, }, }, }, cveMetadata: { assignerOrgId: "a0819718-46f1-4df5-94e2-005712e83aaa", assignerShortName: "GitHub_M", cveId: "CVE-2021-39171", datePublished: "2021-08-27T22:05:11", dateReserved: "2021-08-16T00:00:00", dateUpdated: "2024-08-04T01:58:18.150Z", state: "PUBLISHED", }, dataType: "CVE_RECORD", dataVersion: "5.1", }