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

Fix multi saml strategy race conditions #426

Merged
merged 2 commits into from
Jul 21, 2020

Conversation

stavros-wb
Copy link
Contributor

@gunzip
Copy link
Contributor

gunzip commented Feb 27, 2020

thank you for this fix ! maybe want to provide a big warning for those still using < 1.3.3 packages from npm ?

@stavros-wb stavros-wb force-pushed the fix_multisaml_race_conditions branch from 85c4adb to a2ccde0 Compare February 27, 2020 09:35
@gunzip
Copy link
Contributor

gunzip commented Feb 27, 2020

about < 1.3.3 we should update that when this pr gets merged (to see into which release).
The main problem I see is not that

a User will authenticate successfully through the wrong IDP

but that any subsequent request which happens concurrently to the login endpoint (not an extreme condition : ) will overwrite the saml client options making the call to authenticate() fail.

@stavros-wb
Copy link
Contributor Author

Yes the simple manifestation of this bug (I agree not an extreme condition) will be an error on a user trying to login, but I don't consider this part of the Readme. There are other open issues as well, that aren't part of the Readme.

The more dangerous manifestation of the bug (which I describe happens under extreme conditions) would be a wrong authentication, a sec vulnerability.

I think we should document the false positives (more dangerous) and not the false negatives. WDYT?

@gunzip
Copy link
Contributor

gunzip commented Feb 27, 2020

imho it should be considered a vulnerability since any user can DoS the login endpoint preventing any other user to authenticate

@stavros-wb stavros-wb force-pushed the fix_multisaml_race_conditions branch from a2ccde0 to d84a8c6 Compare February 27, 2020 10:28
@stavros-wb
Copy link
Contributor Author

amended

@stavros-wb
Copy link
Contributor Author

@markstos PTAL

@markstos markstos merged commit ffbd2f6 into node-saml:master Jul 21, 2020
@markstos
Copy link
Contributor

Published in 1.3.4.

walokra pushed a commit to walokra/suomifi-passport-saml that referenced this pull request Oct 1, 2020
* upstream:
  docs: remove badges broken by project rename.
  bump version to 1.3.5
  deps: really bump xml-encryption for node-forge sub-dep upgrade to address vuln.
  docs: Update package.json / README to reflect site move.
  deps: bump xml-encryption to address node-forge sub-dep vuln.
  Update issue templates
  Update issue templates
  Bump lodash from 4.17.15 to 4.17.20 (node-saml#449)
  Bump acorn from 7.1.0 to 7.4.0 (node-saml#448)
  Return object for XML-valued AttributeValues (node-saml#447)
  Revert "doc: announce site move." (node-saml#446)
  doc: announce site move.
  add yarn-error.log to .gitignore
  bump version.
  Fix multi saml strategy race conditions (node-saml#426)
  v1.3.3
  v1.3.2

# Conflicts:
#	.gitignore
#	README.md
#	package.json
walokra added a commit to walokra/suomifi-passport-saml that referenced this pull request Oct 2, 2020
* upstream:
  docs: remove badges broken by project rename.
  bump version to 1.3.5
  deps: really bump xml-encryption for node-forge sub-dep upgrade to address vuln.
  docs: Update package.json / README to reflect site move.
  deps: bump xml-encryption to address node-forge sub-dep vuln.
  Update issue templates
  Update issue templates
  Bump lodash from 4.17.15 to 4.17.20 (node-saml#449)
  Bump acorn from 7.1.0 to 7.4.0 (node-saml#448)
  Return object for XML-valued AttributeValues (node-saml#447)
  Revert "doc: announce site move." (node-saml#446)
  doc: announce site move.
  add yarn-error.log to .gitignore
  bump version.
  Fix multi saml strategy race conditions (node-saml#426)
  v1.3.3
  v1.3.2

# Conflicts:
#	.gitignore
#	README.md
#	package.json
@cjbarth cjbarth added the bug label Sep 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants