2012-12-07 5 views
0

다른 서버의 웹 페이지에 양식을 삽입하는 책갈피가 있습니다. 이 양식은 제출 된 데이터를 데이터베이스에 추가하여 jQuery를 사용하여 JSONP를 통해 데이터를 내 서버로 다시 제출합니다.CSRF 위험 및 토큰

질문 :

<input type="hidden" name="csrf_token" value="MWkgtQbdH6maJhuGL7ObwPcbgqARUCTjb4NSdo29"> 

이 여전히 CSRF 위험을 초래할 것 :이 양식은 또한 숨겨진 필드에서 CSRF 토큰을 포함하고 주입?

+0

토큰을 어떻게 생성합니까? – meagar

+0

토큰은 PHP 프레임 워크에서 생성되어 세션 쿠키에 저장됩니다. http://laravel.com/docs/views/forms#csrf-protection – Nyxynyx

답변

0

페이지를 스크래핑하고 원격으로 제출할 수 있습니다. 그것은 억지력이지만 절대적인 해결책은 아닙니다. 링크를 중지하지만 누군가가 양식을 원격으로 게시 할 수 있습니다.

리퍼러도 확인할 수 있지만 일부 클라이언트와 방화벽은 리퍼러를 보내지 못하게합니다.

하나의 해결책은 제출시 js를 통해 쿠키를 설정 한 다음 해당 서버 측의 유효성을 검사하는 것입니다.

+0

사용자가 내 북마크를 사용하는 사이트가 삽입 된 양식의 CSRF 토큰을 긁어 내고 CSRF 공격을 수행 할 수 있다는 것을 의미합니까? – Nyxynyx

+0

당신이 해결하려고하는 문제를 이해하기 위해서는 더 많이 알아야 할 것 같지만, 토큰은 입력에서 검색하여 양식 이외의 다른 방법으로 전달할 수 있습니다. – deyes