Skip to content

Day 10 개발일지 Web

JinGu edited this page Dec 4, 2020 · 5 revisions

작업 내용

csrf

csrf에 대한 조사를 하면서 코드로 구현하고자 했습니다. 여기에 csrf에 대한 내용과 대처방법이 잘 정리되어 있습니다만.. 적용하기가 쉽지 않습니다.

나와있는 방어 방법은

  1. csrf 토큰 사용
  2. 세션 쿠키는 SameSite 속성 적용
  3. 커스텀 헤더, 표준 헤더로 origin 검사, double submit cookie 중 1가지 이상 적용

정도가 있는데 3번은 구현하였고, 1,2번은 세션을 구현하면서 추가적으로 구현하면 될 것 같습니다.

redis

redis기본 설정 등을 작업 하였다 생각보다 삽질을 오래 하였다 가장 빠른 적용 및 설정 방법 Wiki 링크

Secret Key 생성 및 암호화 작업 수행

비밀번호는 단방향 알고리즘이 필요로하고 개인정보는 조회가 가능해야하므로 양방향성 암호화가 필요했다. 그래서 비밀번호는 bcrypt, 개인정보는 crypto로 암호화를 진행했다 ~! Secret Key 생성은 찾아보다가 Crypto도 가능하지만 speakeasy가 좀더 잘 구현되어 있어 speakeasy를 선택하게 되었다 ! base32값을 바로 만들어줘서 저장하기도 편리한 것 같다.

개인 회고

강진구

현재는 API를 사용하였지만 Secret Key 생성과 base32의 경우 직접 해보고 싶다는 마음이 생겼다. 조금 더 구현을 해보다가 기회를 봐서 공부해서 바꿔보겠다 !!!

문석암

redis 내부 설정을 보면서 redis가 어떤 구조로 돌아가는지 어떤 용도로 사용되는지 학습하게 되었고 글로 작성하여야 겠다고 생각이 들었다. 사용적인 관점보다는 사용에 관점으로 작성하려고 한다. 중간에 외부에 연결을 빼기 위해 삽질을 생각보다 너무 오래한게 시간이 좀 많이 아쉬웠다.

이도경

csrf를 공부하면서 시간을 많이 썻고 헷갈리는 부분이 많았는데 나중에 이것도 정리해서 글로 써야겠다.
그리고 reCaptcha를 공부했는데 v3는 사용자와의 인터랙션없이 검증한다는 방식인것도 처음 알았다 (이것도 글로..)
지금 개발속도가 좀 더딘 느낌이긴 한데 기초를 잡아가는 느낌이라 시간이 지나면 좀 더 속도가 날것같다. 목표달성을 위해 내일은 좀 더 달려야 할듯..

Clone this wiki locally