CSRF란?

steve·2023년 8월 8일
0

Backend

목록 보기
2/17

CSRF

CSRF(Cross-Site Request Forgery)란 사이트 간 요청 위조라는 뜻으로, 해커가 인증된 사용자를 대신하여 악성 요청을 보내는 공격 기법. 이러한 공격은 악성 코드를 삽입한 웹사이트를 통해 이루어지며, 대부분의 웹사이트에서 사용되는 인증 쿠키를 탈취하거나, 악성 코드를 통해 사용자가 자신도 모르게 악성 요청을 보내게 한다.

예) 은행에서는 사용자가 로그인한 후, 계좌 이체와 같은 중요한 작업을 하기 전에 비밀번호를 한번 더 확인하지만, CSRF 공격을 통해 해커는 사용자의 인증 정보를 탈취하고, 사용자가 자신도 모르게 계좌 이체 요청을 보내게 됨

CSRF 예방

CSRF 공격을 예방하기 위해서는 다음과 같은 프로세스 준수해야 함

1. CSRF 토큰 사용

CSRF 토큰은 사용자가 악성 요청인지 아닌지를 판단하는 용도로 사용됨. 웹사이트에는 사용자의 요청에 대한 CSRF 토큰이 포함되어 있으며, 이는 사용자가 악성 요청인지 아닌지를 판단하는 데 사용됨. 만약 토큰이 일치하지 않는 경우, 요청은 거부

2. SameSite 쿠키 속성 사용

SameSite 쿠키 속성은 쿠키를 전송할 때, 도메인이 다른 경우 쿠키를 차단하는 기능. 이를 사용하면 악성 웹사이트에서 사용자의 인증 정보를 탈취하는 것을 방지.

3. HTTP Referer 확인

HTTP Referer를 확인하면, 악성 요청이 원래 요청 페이지에서 온 것인지 확인할 수 있으며 이를 통해 악성 요청을 걸러낼 수 있다

1개의 댓글

comment-user-thumbnail
2023년 8월 8일

많은 도움이 되었습니다, 감사합니다.

답글 달기

관련 채용 정보