---
id: CVE-2024-45409
title: >-
  The Ruby SAML library vulnerable to a SAML authentication bypass via Incorrect
  XPath selector
summary: >-
  The Ruby SAML library is for implementing the client side of a SAML
  authorization. Ruby-SAML in <= 12.2 and 1.13.0 <= 1.16.0 does not properly
  verify the signature of the SAML Response. An unauthenticated attacker with
  access to any sign…
severity: critical
cvss: 10
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N'
cvssSource: cna
cwe:
  - CWE-347
vendor: SAML-Toolkits
product: ruby-saml
affected:
  - ruby-saml < 1.12.3
  - 'ruby-saml >= 1.13.0, < 1.17.0'
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2024-10-16T03:55:12.641512Z'
exploitAvailable: true
published: '2024-09-10'
updated: '2026-11-04'
sourceUpdated: '2026-11-04T00:03:35.684Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2024-45409'
references:
  - url: >-
      https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-jw9c-mfg7-9rx2
    label: >-
      https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-jw9c-mfg7-9rx2
  - url: >-
      https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-cvp8-5r8g-fhvq
    label: >-
      https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-cvp8-5r8g-fhvq
  - url: >-
      https://github.com/SAML-Toolkits/ruby-saml/commit/1ec5392bc506fe43a02dbb66b68741051c5ffeae
    label: >-
      https://github.com/SAML-Toolkits/ruby-saml/commit/1ec5392bc506fe43a02dbb66b68741051c5ffeae
  - url: >-
      https://github.com/SAML-Toolkits/ruby-saml/commit/4865d030cae9705ee5cdb12415c654c634093ae7
    label: >-
      https://github.com/SAML-Toolkits/ruby-saml/commit/4865d030cae9705ee5cdb12415c654c634093ae7
tags:
  - cve.org
  - exploit-available
epss: 0.10684
epssPercentile: 0.95823
exploits:
  github: 2
  githubRepos:
    - 'https://github.com/synacktiv/CVE-2024-45409'
    - 'https://github.com/barkotenicholas/CVE-2024-45409'
  checkedAt: '2026-11-05T20:33:42.475Z'
ingestedAt: '2026-11-05T20:33:06.643Z'
---

## Overview

The Ruby SAML library is for implementing the client side of a SAML authorization. Ruby-SAML in <= 12.2 and 1.13.0 <= 1.16.0 does not properly verify the signature of the SAML Response. An unauthenticated attacker with access to any signed saml document (by the IdP) can thus forge a SAML Response/Assertion with arbitrary contents. This would allow the attacker to log in as arbitrary user within the vulnerable system. This vulnerability is fixed in 1.17.0 and 1.12.3.

## Affected

- `ruby-saml < 1.12.3`
- `ruby-saml >= 1.13.0, < 1.17.0`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
