저는 장고의 csrf-token을 사용하여 csrf 공격을 막는 장고 사이트를 가지고 있습니다. 양식 중 하나가.인증이 필요없는 페이지에 'CSRF 토큰'을 포함시키는 것이 보안 위험입니까?
CSRF 토큰에 로그인하지 않은 포함, 공공 사람들이 액세스 할 수는 크로스 도메인 요청에 대한 보호를 제공 할 예정이다.
편집 :. (내 댓글에서 인용) 는 "그러나, 허가없이 사용할 수 있습니다 POST 요청의 경우, CSRF는 (보안 문자 여기에 더 잘 할 것)을 trival 스팸 필터보다 낫다 사실, 인증을 필요로하지 않는 페이지에 CSRF 토큰 (30 분 후에 만료 됨)을 포함시켜 보안 위험을 감수해야합니다. (하지만 내 사이트가이를 수행하고 있기 때문에 처음에이 게시물을 만들었습니다) "
또한,이 경우, 하나는, 브라우저 JS 콘솔에서 해당 페이지를 가져올 수있는 몇 가지 특정 XPath를 통해 CSRF 토큰을 얻고 그 CSRF에 어떤 임의의 데이터를 게시 할 수 있습니다. 또한 쉽게 재현 할 수있는 단계, 특정 사이트에 대한 공격 또는 Django 사이트를 설계 할 수 있으므로 항상 'csrfmiddlewaretoken' 외에도 csrf 토큰을 찾을 수 있습니다 (reddit, pinterest 등의 사이트도 포함).).는 최대한 멀리 볼 수있는, 떨어져 조금 어렵게에서, CSRF 토큰은 큰 도움이되지 않았다.
거기에 어떤면이 있습니까? 내 구현이 잘못 되었습니까? 만약 내가 옳다면 당신의 csrf 토큰을 html 소스 (특히 인증을 필요로하지 않는 사람들)가 가지고 다니는 것이 멍청한가요?
어떻게 다른 사람에 대한 공격을 설명하는 과정? 당신이 세션의 소유자로서 수동 클라이언트 사이드 포스트를 수행하는 것처럼 보입니다. – jdi
[csrf 토큰은 무엇입니까? 그것은 무엇의 중요성이며 어떻게 작동합니까?] (http://stackoverflow.com/questions/5207160/what-is-a-csrf-token-what-is-its-importance-and-how-does-it- 일) – jdi
그래,하지만 내가 할 때만. 악성 플러그인이 누군가 브라우저에 설치되어 있다면 플러그인은 간단한 get 요청으로 양식을 가져 와서 csrf 토큰을 얻고 양식을 게시 할 수 있습니다. 인증을 필요로하지 않지만 양식을 포함하는 GET 요청 (csrf 토큰 포함)이 있으면 csrf가 쉽게 우회되는 것 같습니다. – Optimus