TIL

2021.10.2 기록장

Gisungcu 2021. 10. 1. 21:54

ToDo

  • 데브 코테 문제 풀이
  • 책 읽기
  • 스프링 시큐리티

Done

  • 데브 코테 문제 풀이
  • 스프링 시큐리티

Weekly goal

  • 책 읽기

 

csrf 문제

 

해커가 사용자 인척 서버에 요청을 보내는 것.

예로 브라우저는 서버에 세션이 등록되어 있고 쿠키에 세션 ID가 있을 경우 

해커는 어떠한 방식을 통해 사용자가 자신이 정해놓은 url을 통해 서버에 접근하게 될 경우 

브라우저는 쿠키에 세션 ID를 가지고 있기에 서버는 인증된 유저라고 판단해 허가를 해준다.

 

이것이 하나의 시나리오이다.

 

이를 스프링 시큐리티에서는 기본 설정으로 막아준다.

이론은 csrf 토큰을 서버에서 인증 시에 발급을 하고 서버에도 저장을 해놓는다.

그리고 서버에서는 리퀘스트(post 방식, 중요한 정보는 get도 막을 수 있다.)들의 헤더를 검사해서 csrf 토큰이 있는지 확인하고 있다면 서버의 토큰과 대조를 한다.

이를 통해 csrf 방어를 할 수 있다.

물론 같은 도메인 내의 XSS 취약점이 있다면 취약해진다.

 

XSS는 웹 페이지에 자바스크립트를 삽입하여 쿠키에 접근하는 등의 공격을 하는 것이다.

 

https://kciter.so/posts/basic-web-hacking

 

웹 개발을 위해 꼭 알아야하는 보안 공격

이번 포스팅에선 아주 중요하지만 프로그래밍 교육 과정에서 크게 다루지 않는 보안 에 대해 이야기 해보려고 한다. 최근엔 프레임워크나 라이브러리 차원에서 잘 막아주기 때문에 큰 언급없이

kciter.so