CSRF
cross site request forgery의 약자로 악의적인 사이트에서 위조된 요청을 통해 공격하는 것을 뜻한다.
예를 들어 유저 A가 N 은행 사이트에 로그인해서 인증된 상태일 때, 악의적인 사이트 X에서 N 사이트에 대해 유저 A의 브라우저로 비밀번호 변경 요청을 보낸다면? 실제 유저 A의 N 사이트 비밀번호와 아이디를 얻어 X 사이트의 해커가 유저 A의 계정으로 로그인을 할 수 있게된다.
이런식으로 인증된 유저의 브라우저를 통해서 공격하는 방식이 바로 CSRF이다.
XSS
Cross-Site Scripting의 약자로 악의적인 사이트에서 강제로 스크립트 코드를 실행해서 유저의 정보를 탈취하는 공격을 뜻한다.
예를 들어 유저 A가 X 사이트에 접근했을 때 X 사이트에서 스크립트를 실행해서 A의 브라우저에 있는 쿠키나 로컬 스토리지의 정보를 읽어 JWT와 같은 인증 정보를 탈취할 수 있다.
공통점과 차이점
CSRF와 XSS는 유저의 브라우저를 통해서 공격을 한다는 공통점이 있다.
CSRF는 유저가 의도하지 않은 요청을 발생시키고, XSS는 악의적인 스크립트를 실행한다는 점에서 방식의 차이가 있다.
Reference
Spring Security CSRF 토큰을 이용한 CSRF 방지
https://velog.io/@woohobi/Spring-security-csrf%EB%9E%80
Spring security - csrf란?
모든 코드는 github에 있습니다.최근에 Spring security를 한창 공부하고 있는데 (조만간 블로그에 security 관련 글이 여러개 올라갈것 같다) 한 가지 궁금하게 한 코드가 있었다.http.csrf().disable()에서 csr
velog.io
https://hyunsangwon93.tistory.com/28
Spring Boot CSRF AJAX 전송 방법
CSRF ? 사이트 간 요청 위조(또는 크로스 사이트 요청 위조, 영어: Cross-site request forgery, CSRF, XSRF)는 웹사이트 취약점 공격의 하나로, 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수
hyunsangwon93.tistory.com
Spring XSS 방지 필터
https://github.com/naver/lucy-xss-servlet-filter
GitHub - naver/lucy-xss-servlet-filter
Contribute to naver/lucy-xss-servlet-filter development by creating an account on GitHub.
github.com
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!