VYPR
High severityNVD Advisory· Published Jul 8, 2024· Updated Aug 2, 2024

Directus allows SSO User Enumeration

CVE-2024-39896

Description

Directus is a real-time API and App dashboard for managing SQL database content. When relying on SSO providers in combination with local authentication it can be possible to enumerate existing SSO users in the instance. This is possible because if an email address exists in Directus and belongs to a known SSO provider then it will throw a "helpful" error that the user belongs to another provider. This vulnerability is fixed in 10.13.0.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
directusnpm
>= 9.11, < 10.13.010.13.0

Affected products

1

Patches

2
454cb534d6ff

Merge pull request from GHSA-jgf4-vwc3-r46v

https://github.com/directus/directusBrainslugJun 24, 2024via ghsa
1 file changed · +2 12
  • api/src/services/authentication.ts+2 12 modified
    @@ -3,7 +3,6 @@ import { useEnv } from '@directus/env';
     import {
     	InvalidCredentialsError,
     	InvalidOtpError,
    -	InvalidProviderError,
     	ServiceUnavailableError,
     	UserSuspendedError,
     } from '@directus/errors';
    @@ -125,19 +124,10 @@ export class AuthenticationService {
     			);
     		};
     
    -		if (user?.status !== 'active') {
    +		if (user?.status !== 'active' || user?.provider !== providerName) {
     			emitStatus('fail');
    -
    -			if (user?.status === 'suspended') {
    -				await stall(STALL_TIME, timeStart);
    -				throw new UserSuspendedError();
    -			} else {
    -				await stall(STALL_TIME, timeStart);
    -				throw new InvalidCredentialsError();
    -			}
    -		} else if (user.provider !== providerName) {
     			await stall(STALL_TIME, timeStart);
    -			throw new InvalidProviderError();
    +			throw new InvalidCredentialsError();
     		}
     
     		const settingsService = new SettingsService({
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

4

News mentions

0

No linked articles in our index yet.