CVE-2026-19349 PUBLISHED

Lemonldap::NG::Portal versions from 2.0.0 before 2.16.9, from 2.17.0 before 2.21.5, from 2.22.0 before 2.23.3 for Perl allow authentication bypass via an OAuth2 state parameter stored as an SSO session in the GitHub and LinkedIn backends

Assigner: CPANSec
Reserved: 08.08.2026 Published: 16.08.2026 Updated: 16.08.2026

Lemonldap::NG::Portal versions from 2.0.0 before 2.16.9, from 2.17.0 before 2.21.5, from 2.22.0 before 2.23.3 for Perl allow authentication bypass via an OAuth2 state parameter stored as an SSO session in the GitHub and LinkedIn backends.

Before redirecting to the identity provider, extractFormInfo() creates the state session with the positional call getApacheSession( undef, 1, 0, 'GitHubState' ). getApacheSession() takes a session id followed by a named argument hash, so the trailing arguments become that hash, kind defaults to SSO, and the state is written to the global session storage as a regular SSO session. Its identifier is handed to the unauthenticated visitor as the state parameter of the redirection URL.

Any visitor who reaches the GitHub or LinkedIn endpoint can replay that identifier as a session cookie and obtain a valid SSO session without authenticating. The session holds neither _user nor authenticationLevel, which the shipped bootstrap configuration accepts because it grants virtual hosts a "default => accept" access rule; deployments whose rules test the user or require an authentication level are less exposed. Only configurations with the GitHub or LinkedIn authentication module enabled are affected.

Product Status

Package Collection https://cpan.org/modules
Package Name Lemonldap-NG-Portal
Versions Default: unaffected
  • affected from 2.0.0 to 2.16.9 (excl.)
  • affected from 2.17.0 to 2.21.5 (excl.)
  • affected from 2.22.0 to 2.23.3 (excl.)

Workarounds

For deployments that cannot upgrade, disable the GitHub and LinkedIn authentication modules.

Solutions

Upgrade to Lemonldap-NG-Portal 2.16.9, 2.21.5 or 2.23.3 or later. Only 2.23.3 is on CPAN; the 2.16.9 and 2.21.5 LTS releases are available from https://lemonldap-ng.org/download.html.

References

Problem Types

  • CWE-305 Authentication Bypass by Primary Weakness CWE
  • CWE-628 Function Call with Incorrectly Specified Arguments CWE