Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
🐍 PyPI

GHSA-qx5f-ghc2-7g5c

GHSA-qx5f-ghc2-7g5c is a CWE-288 vulnerability in ethyca-fides. O3 Security confirms whether GHSA-qx5f-ghc2-7g5c is actually reachable in your code before you act, and blocks exploitation at runtime until you patch.

Ethyca Fides has a Privacy Request Identity Verification Bypass Vulnerability via Duplicate Detection

Also known asCVE-2026-42303PYSEC-2026-2471
Published
May 5, 2026
Updated
Jul 13, 2026
Affected
1 pkg
Patched
1 / 1
Exploits
None indexed

Blast Radius

1 pkg affected
🐍ethyca-fides

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.

Description

Summary

Fides deployments that enable both subject identity verification and duplicate privacy request detection are affected by a vulnerability in which an administrator can approve a privacy request whose identity was never verified. For erasure policies, this can result in unauthorized deletion of a data subject's records across every integration configured in the affected deployment.

A related lower-severity denial-of-service issue, in which an unauthenticated attacker could prevent a legitimate data subject from completing their own privacy requests, is also patched in the fix for this vulnerability.

Am I affected?

This vulnerability only affects deployments that use Fides's privacy request (data subject request) features, also known collectively as "Lethe". Deployments that do not submit, process, or manage privacy requests through Fides are not affected.

Within deployments that do use privacy request features, your deployment is affected if both of the following settings are effectively set to true:

  • subject_identity_verification_required
  • privacy_request_duplicate_detection.enabled

Both settings default to false.

Each setting can be configured in multiple places. If the same setting is configured in more than one place, Fides resolves conflicts in the following precedence order, highest priority first:

  1. Admin UI / configuration API - stored in the application database and applied at runtime
  2. Environment variables - read at webserver startup
  3. fides.toml - read at webserver startup
  4. Default value - used if none of the above set the value

To determine whether your deployment is affected, check each setting in every location that applies to your configuration management.

subject_identity_verification_required

  • fides.toml: under the [execution] section as subject_identity_verification_required = true
  • Environment variable: FIDES__EXECUTION__SUBJECT_IDENTITY_VERIFICATION_REQUIRED=true
  • No Admin UI control - this setting is not exposed through the Admin UI and cannot be set via the configuration API

privacy_request_duplicate_detection.enabled

  • fides.toml: under the [privacy_request_duplicate_detection] section as enabled = true
  • Environment variable: FIDES__PRIVACY_REQUEST_DUPLICATE_DETECTION__ENABLED=true
  • Admin UI: Settings → Privacy requests → Duplicate detection, via the "Enable duplicate detection" toggle. The toggle reflects only values set through the Admin UI or configuration API. A value set via fides.toml or environment variable will not appear here.
<figure> <img width="1392" height="940" alt="GHSA - Duplicate Detection Enabled" src="https://github.com/user-attachments/assets/e384f273-ce68-403c-adb2-93536eca5f3a" /> <figcaption> <em> The "Enable duplicate detection" toggle when it's enabled, under Settings → Privacy requests in the Admin UI. </em> </figcaption> </figure>

Details

When duplicate detection classifies a privacy request as a duplicate before its identity has been verified, the administrative interface presents that request with Approve, Deny, and Delete options. An administrator performing routine duplicate request triage may approve such a request without realising the identity was never verified. The request is then processed as if verification had succeeded.

An attacker exploits this by submitting two privacy requests using a target's email address, never completing the OTP verification. The second request is classified as a duplicate and becomes approvable through the administrative interface.

The fix for this vulnerability also patches a lower-severity issue, present in versions 2.82.0 through 2.83.1, in which a legitimate data subject could not complete identity verification on a privacy request that had been classified as a duplicate, allowing an unauthenticated attacker to block that data subject from exercising their privacy rights through the affected deployment.

Impact

An unauthenticated attacker who knows a target's email address and can reach the public Privacy Center can cause an erasure privacy request to be approved by an administrator and processed without identity verification. The result is unauthorized deletion of the data subject's records across every integration configured in the affected deployment. Effects may be permanent and may cascade into downstream systems.

Access privacy requests are a less meaningful vector: the resulting access package is delivered to the data subject's registered email address, not to the attacker, so the attacker does not gain the data. The request still represents unauthorized processing.

Patches

The vulnerabilities have been patched in Fides OSS version 2.83.2. Users are advised to upgrade to this version or later to secure their systems against these threats.

Fides Enterprise (fidesplus) version 2.83.2 contains the same patch.

Workarounds

Disable duplicate detection by setting privacy_request_duplicate_detection.enabled to false. This can be changed under Settings → Privacy Requests → Duplicate detection in the Admin UI). This fully mitigates the vulnerability and is the recommended interim workaround for deployments that cannot immediately upgrade.

<figure> <p> <img width="1392" height="880" alt="GHSA - Disable Duplicate Detection" src="https://github.com/user-attachments/assets/fc0c87a1-7e40-4698-ba9e-e1721f591310" /> <figcaption> <em> The "Enable duplicate detection" toggle when it's disabled, under Settings → Privacy requests in the Admin UI. </em> </figcaption> <p> </figure>

Administrators of deployments that must retain duplicate detection should deny or delete, rather than approve, any privacy request whose identity has not been verified. This reduces the likelihood of exploitation but relies on administrator vigilance during each triage action.

<img width="1392" height="1044" alt="GHSA - Admin Approval of Unverified Privacy Request" src="https://github.com/user-attachments/assets/b2ad4940-40d3-468b-897e-8cca6ce4707e" /> <figcaption> <em> An administrator's view when approving an unverified privacy request in the Admin UI. </em> </figcaption> </figure>

Severity

This vulnerability has been assigned a severity of MEDIUM.

The rating reflects the fact that exploitation requires an administrator to approve the malicious request. An attacker alone cannot cause a privacy request to be processed. The administrative interface understates the verification state of a duplicate-classified request, which increases the likelihood of inadvertent approval during routine triage, but without administrator user interaction the vulnerability is not exploitable.

The related denial-of-service issue addressed in the same patch is also rated medium-severity in isolation and does not raise the overall severity of this advisory.

References

Affected Packages

1 total 1 fixed
EcosystemPackageVulnerable rangeFix
🐍PyPIethyca-fides2.75.0&&< 2.83.22.83.2

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for ethyca-fides. O3's reachability analysis confirms whether the vulnerable code path is actually invoked in your application, so you act on real exposure instead of every transitive match.

  2. Fix

    Update ethyca-fides to 2.83.2 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-qx5f-ghc2-7g5c is resolved across your whole dependency graph.

  3. Workarounds

    If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.

  4. How O3 protects you

    O3 pinpoints whether GHSA-qx5f-ghc2-7g5c is reachable in your code and exactly where to fix it, then blocks exploitation in production at runtime until the patched version is deployed.

Tailored to GHSA-qx5f-ghc2-7g5c. Runtime protection reduces exposure until a permanent patch is applied and verified — it complements patching, it doesn't replace it.

Frequently Asked Questions

### Summary Fides deployments that enable both subject identity verification and duplicate privacy request detection are affected by a vulnerability in which an administrator can approve a privacy request whose identity was never verified. For erasure policies, this can result in unauthorized deletion of a data subject's records across every integration configured in the affected deployment. A related lower-severity denial-of-service issue, in which an unauthenticated attacker could prevent a legitimate data subject from completing their own privacy requests, is also patched in the fix for t
O3 Security · Impact-Aware SCA

Is GHSA-qx5f-ghc2-7g5c in your dependencies?

O3 detects GHSA-qx5f-ghc2-7g5c across PyPI dependencies and uses function-level reachability to confirm whether the vulnerable code path is actually reachable — not just present. No false positives.