크로스 사이트 요청 위조(CSRF)
Title
크로스 사이트 요청 위조(CSRF)
Category
WebTags
Aliases
크로스 사이트 요청 위조(CSRF)
교차 요청 위조
CSRF
CSRF(교차 요청 위조)
XSRF
Related
Created
2 years ago
Updated
last year
- 신뢰할 수 있는 사용자를 가장하여 웹 사이트에 원치 않는 명령을 보내는 공격이다.
Example
- 유저가 공격대상 사이트(
https://site-a.com
)에 이미 사용자 인증을 수행함. - 공격자가 피해자에게 그럴듯한 사이트 링크(
https://site-b.com
)를 전송하고 접속하게 함. - 링크를 누르고 HTML 문서가 열렸을 때, 아래와 같은 코드로 공격 대상 사이트에 HTTP 요청을 보냄.html
<img src="https://site-a.com/withdraw?account=bob&amount=1000000&for=mallory" />
<img src="https://site-a.com/withdraw?account=bob&amount=1000000&for=mallory" />
- 이 요청에는 서드 파티 쿠키가 포함되어 있으므로 공격자가 유도한 공격을 실행할 수 있음.
방어 방법
- 서버 요청 시에 CSRF 토큰을 포함시키도록 한다.
- 민감한 작업(ex. 세션 쿠키)에 사용되는 쿠키의 동일 사이트(Same Site) 속성을 Strict 또는 Lax로 설정하고, 짧은 수명을 가지게 한다.
- 위의 두 방법을 모두 사용해야 한다.
- 동일 사이트(Same Site) 속성은 하위 도메인에서 발생하는 공격에 도움이 되지 않는다.