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

RFC-5849: CSRF and UI Redress #10

Open
TheRook opened this issue May 29, 2013 · 1 comment
Open

RFC-5849: CSRF and UI Redress #10

TheRook opened this issue May 29, 2013 · 1 comment

Comments

@TheRook
Copy link

TheRook commented May 29, 2013

1)Cross-Site Request Forgery:
In "RFC-5849 4.13. Cross-Site Request Forgery (CSRF)" (http://tools.ietf.org/html/rfc5849#section-4.13) it states that a Cross-Site Request Forgery cannot be used to initiate an OAuth negotiation.

This attack could be triggered an a hidden iframe which triggers the following GET request:

<iframe src=http://engineauth.scotchmedia.com/auth/google />

If the google oauth user account has already been used to authenticate then the browser will automatically authenticate with engineauth.scotchmedia.com. At this point an attacker could deliver an XSS, CSRF or Clickjacking exploit to an authenticated website.

To mitigate this issue a synchronization token should be present within the OAuth login request.

More Information on preventing CSRF:
https://www.owasp.org/index.php/Cross-Site_Request_Forgery_%28CSRF%29_Prevention_Cheat_Sheet

  1. UI Redress:
    The example application running at engineauth.scotchmedia.com is vulnerable to UI Redress. In "RFC-5849 section 4.14. - User Interface Redress" it stats that the buttons used to initiate the OAuth negotiation need to be protected against Clickjacking attacks.

This vulnerability can be mitigated by setting the "x-frame-options: sameorigin" HTTP header.

More Information on preventing clickjacking:
https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant