Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backchannel logout endpoint should only return 200 or 400 #955

Merged
merged 1 commit into from
Oct 8, 2024

Conversation

julien-nc
Copy link
Member

According to https://openid.net/specs/openid-connect-backchannel-1_0.html#rfc.section.2.6 , the backchannel logout should only respond with 200 or 400 status code responses. With bruteforce protection, 429 can be returned.

Should we add a rate limit instead? What would be reasonable values?

@edward-ly
Copy link
Contributor

I'm not sure if either protection makes sense on the logout operation. I could be wrong, but I don't see what kind of vulnerability could be exploited from this endpoint alone.

@julien-nc
Copy link
Member Author

As the backchannel logout endpoint is public, one can bruteforce it to logout people. But the logout token is pretty long so the chances such attack succeeds are very low. Even if it succeeds, it's just logging out someone.

I thought this endpoint could be the target of a DoS attack because it makes NC do a network request to the Idp (to the discovery endpoint) but this is cached.

@edward-ly I agree, it seems ok to not put any protection there.

Waiting for the ✔️ of @juliushaertl to merge.

@julien-nc julien-nc marked this pull request as ready for review October 4, 2024 08:41
Signed-off-by: Julien Veyssier <julien-nc@posteo.net>
@julien-nc julien-nc force-pushed the fix/noid/backchannel-logout-always-400-on-error branch from 8113016 to 9b5d6c6 Compare October 8, 2024 22:37
@julien-nc julien-nc merged commit cdf2b0d into main Oct 8, 2024
44 checks passed
@julien-nc julien-nc deleted the fix/noid/backchannel-logout-always-400-on-error branch October 8, 2024 22:40
@julien-nc julien-nc mentioned this pull request Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. to review enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants