Am I affected?

type your samly version to check

Description

Authentication Bypass by Capture-replay vulnerability in dropbox samly allows an attacker to authenticate as the subject of a captured SAML assertion by resubmitting it.

Samly.Helper.decode_idp_auth_resp/3 in lib/samly/helper.ex calls esaml_sp:validate_assertion/2, whose default duplicate detector is a no-op. The /3 arity accepting a DuplicateFun exists in esaml and implements the check, but Samly never calls it and offers no configuration to supply one, so the SAML 2.0 Web Browser SSO Profile requirement that a bearer assertion be used once is unenforced. An attacker holding a valid SAMLResponse obtained from the network, from browser history, or from logs can submit the identical bytes repeatedly until the assertion's NotOnOrAfter passes, each time establishing a session as the assertion's subject.

This issue affects samly: from 0.3.0 onward.

Weaknesses & attack patterns

Weakness

CWE-294 · Authentication Bypass by Capture-replay in catalog → MITRE ↗

Attack patterns

CAPEC-60 · Reusing Session IDs (aka Session Replay) MITRE ↗

Affected — Hex / samly Hex.pm ↗ Repository ↗

0.3.0 and up affected
every other version: unaffected
default status unaffected
cpe cpe:2.3:a:dropbox:samly:*:*:*:*:*:*:*:*
modules · source files · routines
modules 'Elixir.Samly.Helper'
source files lib/samly/helper.ex
routines 'Elixir.Samly.Helper':decode_idp_auth_resp/3

Affected — GitHub / dropbox/samly Repository ↗

8a5bb1b and up affected
every other version: unaffected
default status unaffected
cpe cpe:2.3:a:dropbox:samly:*:*:*:*:*:*:*:*
modules · source files · routines
modules 'Elixir.Samly.Helper'
source files lib/samly/helper.ex
routines 'Elixir.Samly.Helper':decode_idp_auth_resp/3

Affected — GitHub / handnot2/samly Repository ↗

8a5bb1b and up affected
every other version: unaffected
default status unaffected
cpe cpe:2.3:a:handnot2:samly:*:*:*:*:*:*:*:*
modules · source files · routines
modules 'Elixir.Samly.Helper'
source files lib/samly/helper.ex
routines 'Elixir.Samly.Helper':decode_idp_auth_resp/3

References

Credits

Mark Madsen Reporter
Jonatan Männchen / EEF Coordinator

CVSS breakdown

CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
« All CVEs