입력값이 실제로 존재하는 이메일인지 확인해주는 서비스를 제공하는 사이트.
이메일 검증시 서버로 보내는 Request 파라미터 값 중 _csrf, CSRF에 대해 알아봤다.
1. CSRF?
- 사이트 간 요청 위조(크로스 사이트 요청 위조, Cross-site request forgery, CSRF, XSRF)는
웹 사이트 취약점 공격의 하나로, 사용자가 공격자가 의도한 행위를 특정 웹사이트에 요청하게 한다.
- 사이트간 요청 위조(CSRF)는 특정 웹사이트가 사용자의 웹 브라우저를 신뢰하는 점을 노린다.
사용자가 웹사이트에 로그인 한 상태에서 CSRF 공격 코드가 삽입된 페이지를 열면, 공격 대상이 되는 웹사이트는 위조된 공격 명령이 믿을 수 있는 사용자로부터 요청된 것으로 판단하게 되어 공격 당하게 된다.
2. 어떻게방어하지?
1) Referrer 체크
- request의 referrer를 확인하여 domain(eg. naver.com)이 일치하는지 검증.
- 같은 도메인에서 들어오는 요청은 허용하고 나머지는 차단하는 개념.
2) security token 사용(CSRF 토큰)
- 사용자 세션에 임의의 난수값을 저장하고 사용자의 요청마다 해당 난수 값을 포함시켜 전송
- 서버에서 요청 받을 때마다 세션에 저장된 토큰값과 요청 파라미터에 저장된 토큰 일치 여부 검증
3. _csrf?
- 스프링 시큐리니에서 from 태그 사용시 CsrfRequestDataValueProcessor를 사용하여 CsrfToken이 자동으로 들어간다.
'Develop > Network' 카테고리의 다른 글
String contains non ISO-8859-1 code point. (0) | 2022.09.15 |
---|---|
[ssh] permissions 0644 for are too open (0) | 2022.03.04 |
API Gateway 란? 🤔 (0) | 2022.02.25 |
[network] 네트워크 클래스, 서브넷, 서브넷 마스크, 서브넷팅 (0) | 2021.12.25 |
[nginx] nginx ssl 적용 방법 기록 (0) | 2021.10.09 |
댓글