WEB/Django concept

[Django][ORM with View] CSRF 토큰

bay07 2024. 3. 28. 10:57
CSRF 토큰
Cross-Site-Request-Forgery
사이트 간 요청 위조 
해킹의 가장 기본 단계
일반 사용자가 의도없이 해킹을 하게 끔 하는 것 
해킹범이 가짜 사이트를 준다
그리고 가짜 사이트에서 로그인하도록 유도한다
거기의 아이디, 비번이 해킹범에게 넘어간다 

 

CSRF 토큰 적용
장고 : "이거 내가 전송한 페이지 맞아?? 토큰 값으로 한번 확인해봐야겠어"

DTL의 csrf_token 태그를 사용해서, 사용자에게 손쉽게 토큰 값을 부여할 수 있다. 
요청 시 토큰 값도 함께 서버로 전송될 수 있도록 하는 것 
{% csrf_token %}

 

요청 시 CSRF 토큰을 함께 보내야 하는 이유
장고가 직접 제공한 페이지 맞아 아니야?
이것에 대한 확인 수단이 필요하다 

겉모습이 똑같은 위조 사이트에 대한 방어수단
정상적이지 않은 요청에 대한 방어 수단
기존) 요청 데이터 => 게시글 작성
변경) 요청 데이터 + 인증 토큰 => 게시글 작성