사용자의 의지와 무관
, 공격자의 의도대로
서버에 특정 요청을 보내도록 하는 공격 방식
A라는 도메인에서, **인증된 사용자 H
**가 **위조된 request
**를 포함한 link, email을 사용하였을 경우
이 사용자가 일반 유저인지, 악용된 공격인지 구분할 수가 없다.
CSRF는 Spring Security에서 default로 설정
즉 protection을 통해 GET 요청을 제외한
상태를 변화시킬 수 있는 POST, PUT, DELETE 요청으로부터 보호
**CSRF protection을 적용
**했을 때
html에서 다음과 같은 csrf 토큰이 포함돼야 요청을 받아들이게 됨으로써 위조 요청을 방지
<input type="hidden" name="${_csrf.parameterName}" value="${_csrf.token}"/>
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
return http
.csrf().disable()
disable 하는 이유가 뭘까??