인프런 커뮤니티 질문&답변

jjc5524님의 프로필 이미지
jjc5524

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

로그인 처리하기 - 쿠키 사용

로그아웃시 post를 쓰는이유

작성

·

549

0

get대신 post를 쓰는이유가 다음과 같다는것을 알게됐습니다.

  • CSRF공격에 GET이 취약하기때문

  • prefetch라는 기술때문에 강제 로그아웃이 될수있다. prefetch란 사용자가 클릭할 가능성이 있는 링크를 가정하여 미리 가져와 페이지 로딩 시간을 줄이는 기술이다. 근데 만약에 로그아웃에 대해서도 적용이된다면 강제 로그아웃이 될수있다.

 

  1. 왜 get요청은 csrf공격에 취약한가요?

  2. prefetch는 post요청에 대해서는 처리하지않나요?

답변 1

0

안녕하세요, jjc5524 님! 공식 서포터즈 codesweaver 입니다.

1. CSRF공격은 GET, POST 상관없이 가능합니다. 대체로 GET은 데이터를 조회하는 기능이며 민감한 처리를 담당하지는 않기에(등록, 수정, 삭제 등) 보안 관리에 허술할 가능성은 있습니다.

2 prefetch는 브라우저마다 구현이 다를 수 있으나, MDN 정의를 보면, A 태그도 경우에 따라 prefetch 대상이 될 수 있다고 언급하고 있습니다. 만약 로그아웃을 get 방식으로 구현한다면 원치 않는 로그아웃이 발생할 수 있습니다.

또, prefetch 대상은 대체로 <link>로 정의한 부분 혹은 HTTP 헤더에 정의한 링크를 사용한다고 설명하고 있네요.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Link_prefetching_FAQ


감사합니다.

jjc5524님의 프로필 이미지
jjc5524

작성한 질문수

질문하기