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

♻️ Refactor: 리프레시토큰 쿠키에 sameSite옵션이 포함되어야합니다. #322

Open
Qone2 opened this issue Dec 15, 2022 · 0 comments · May be fixed by #324
Open

♻️ Refactor: 리프레시토큰 쿠키에 sameSite옵션이 포함되어야합니다. #322

Qone2 opened this issue Dec 15, 2022 · 0 comments · May be fixed by #324
Assignees
Labels
Back Back-end 작업사항 Refactor 리팩토링

Comments

@Qone2
Copy link
Collaborator

Qone2 commented Dec 15, 2022

Description

이전에는 테스트용이성 때문에 해당옵션을 None으로 주었지만, 이제 슬슬 해당옵션을 주어야할때가 온거같습니다.
그렇지 않으면 CSRF공격에 취약합니다.
추가로 테스트용이성을 위해서는 도메인에 localhost를 추가해보는건 어떤가 생각해봅니다.
CSRF공격이 localhost로 유도되어 요청하지는 않을것이기 때문입니다.

ETC

  • 주의 사항 혹은 기타 내용
@Qone2 Qone2 self-assigned this Dec 15, 2022
@Qone2 Qone2 added Back Back-end 작업사항 Refactor 리팩토링 labels Dec 15, 2022
Qone2 added a commit that referenced this issue Dec 15, 2022
sameSite옵션을 Strict로 변경했습니다. CSRF공격을 예방하기 위해 변경하였습니다.
도메인 옵션은 삭제하였습니다. 이렇게 될 경우, 요청을 보낸곳의 도메인으로 맞춰서 보내주게됩니다.
개발편의성을 위해서 그렇게 수정하였고,
도메인을 맞춰서 보내준다고 하더라도, 따로 아이디비밀번호를 아는것이 아니면 공격을 받을 염려는 없다고 생각하여 그렇게 하였습니다.
path설정은 저렇게 하면 /auth/**요청에만 쿠키를 보내는것이 테스트로 확인됐습니다. 다만, 크롬개발자탭의 application -> cookie에서는 더이상 보이지 않게 됩니다. 쿠키의 존재확인은 auth관련 요청시 Network탭에서 request cookie를 보는걸로 확인가능합니다.
해당부분은 개발자도구에서 쿠키를 보거나 지우는것이 불가능한 점에서 많이 불편하긴 합니다. 이부분에 대해 의견 부탁드려요.
@Qone2 Qone2 linked a pull request Dec 15, 2022 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Back Back-end 작업사항 Refactor 리팩토링
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant