[개발지식] csrf

Hyo Kyun Lee·2025년 4월 10일
0

개발지식

목록 보기
82/84

1. 개요

이전 글에 이어서, 프론트 버전의 jwt인 csrf 토큰에 대한 이슈에 대응하고 보안에 대한 개념을 정립하기 위해 찾아보고 공부한 내용을 기록한다.

2. csrf

Cross Site Request Forgery, 말 그대로 사용자 요청에 대해 위조된 응답을 보내는 것.

CSRF는 내부적으로 사용자가 인가를 받았더라도, 그 이후 페이지를 발행하는 과정에서 악의적으로 의도된 페이지를 사용자에게 보여주어 변조된 응답을 보내주는 공격을 말한다.

페이지 발행에 대한 위조이므로 내부 인가과정과 상관없이 발생할 수 있다.

CSRF token의 핵심은 내부 인가과정을 페이지에도 적용한다는 점이다. 서버가 페이지 발행 시 랜덤으로 생성한 토큰값을 사용자 세션에 저장하고, 사용자는 이를 페이지 요청과 함께 전송하여 위조된 페이지가 아니라는 것을 확인하는 과정이다.

Csrf방지를 위해 발급하는 토큰값은 페이지마다, 요청마다 항상 새로운값을 생성하게 되어 위조공격을 방지할 수 있다.

3. 참고자료

csrf 개념 - https://codevang.tistory.com/282
csrf 방지할 수 있는 방법 - https://www.guardrails.io/blog/what-is-csrf-and-how-do-you-prevent-it/

0개의 댓글