# CVE-2025-24894: SAML Response Signature Verification Bypass in SPID.AspNetCore.Authentication

> Attackers can bypass SAML signature verification to impersonate any user, requiring an upgrade to the SPID.AspNetCore.Authentication library.

- **Severity:** Critical 9.1 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 18 Feb 2025
- **Updated:** 18 Feb 2025
- **Also known as:** GHSA-36h8-r92j-w9vw

## What is CVE-2025-24894?

CVE-2025-24894 is a critical authentication bypass vulnerability in italia spid-aspnetcore, published on 18 Feb 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

SPID.AspNetCore.Authentication is an AspNetCore Remote Authenticator for SPID. Authentication using Spid and CIE is based on the SAML2 standard which provides two entities: Identity Provider (IDP): the system that authenticates users and provides identity information (SAML affirmation) to the Service Provider, in essence, is responsible for the management of the credentials and identity of users; Service Provider (SP): the system that provides a service to the user and relies on the Identity Provider to authenticate the user, receives SAML assertions from the IdP to grant access to resources. The validation logic of the signature is central as it ensures that you cannot create a SAML response with arbitrary assertions and then impersonate other users. There is no guarantee that the first signature refers to the root object, it follows that if an attacker injects an item signed as the first element, all other signatures will not be verified. The only requirement is to have an XML element legitimately signed by the IdP, a condition that is easily met using the IdP's public metadata. An attacker could create an arbitrary SAML response that would be accepted by SPs using vulnerable SDKs, allowing him to impersonate any Spid and/or CIE user. This vulnerability has been addressed in version 3.4.0 and all users are advised to upgrade. There are no known workarounds for this vulnerability.

Weakness: CWE-287 (Improper Authentication)

## Which versions are affected by CVE-2025-24894?

2 open source packages ship an affected version, including SPID.AspNetCore.Authentication.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `SPID.AspNetCore.Authentication` | NuGet | All versions | 3.4.0 |
| `SPID.AspNetCore.Authentication` | NuGet | All versions | 3.4.0 |

## How do I fix CVE-2025-24894?

Upgrade SPID.AspNetCore.Authentication to 3.4.0 or later.

## Is CVE-2025-24894 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-24894 exists.

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2025-24894 and fix it if it is affected.

What it is: CVE-2025-24894 is a critical authentication bypass vulnerability in italia spid-aspnetcore, published on 18 Feb 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-24894 exists.

Affected packages and fixed versions:
- SPID.AspNetCore.Authentication (NuGet): affected all versions; fixed in 3.4.0
- SPID.AspNetCore.Authentication (NuGet): affected all versions; fixed in 3.4.0

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2025-24894/ (Markdown: https://insights.sbomify.com/CVE-2025-24894/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2025-24894
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-24894
- OSV: https://osv.dev/vulnerability/CVE-2025-24894

---
From sbomify Insights: https://insights.sbomify.com/CVE-2025-24894/
Summaries are generated and may contain mistakes; the official description above is the record.
