OWASP CSRF prevention cheat sheet을 읽는 이러한 종류의 공격을 방지하기 위해 제안 된 방법 중 하나는 동기화 기 토큰 패턴입니다.(암호문이 강한) 세션 쿠키를 CSRF 토큰으로 사용해도 괜찮습니까?
세션 토큰이 암호 학적으로 강하면 다음 의사 코드에 설명 된대로 csrf 토큰으로 두 번 사용할 수 있습니까?
클라이언트 :
<script>
dom.replace(placeholder, getCookie("session-cookie"))
</script>
<form>
<input type="hidden" name="csrf-cookie" value="placeholder-value"/>
<input type="text" />
</form>
서버 :
쿠키는 우연히 그들이 경우 예를 들어, 세션 쿠키를 누출하지 못하도록하는 페이지로드에 자바 스크립트로 설정되어if(request.getParameter("csrf-cookie") != user.getSessionCookie())
print "get out you evil hacker"
그 페이지의 사본을 친구에게 이메일로 보내십시오.
전체 페이지 : 세션 토큰을 CSRF 토큰으로 사용하여 (http://stackoverflow.com/a/10685148/1709587) 임시로 [OWASP에 대한 권고] (http : //stackoverflow.com/a/10686429/1709587) 공격자가 세션 토큰을 직접 획득 할 수 없도록하는 취약점을 통해 사용자의 CSRF 토큰을 획득 할 수있는 현실적인 상황이 있기 때문입니다. 그러한 시나리오는 상관없이 나쁜 것입니다.하지만 세션 토큰을 CSRF 토큰으로 재사용하는 경우 물론 세션 토큰도 손상됩니다. 이는 엄격하게 악화됩니다. –