2011-04-05 4 views

답변

4

양식이있는 nonces의 목표는 일반적으로 데이터가 한 번만 제출되도록하고 사용자가 실제로 제출하는 지 확인하는 것입니다. 교차 사이트 요청 위조에 대한 방어에 도움이되는 두 번째 요지 : http://en.wikipedia.org/wiki/Cross-site_request_forgery

해당 내용은 상황에 따라 다릅니다. 사용자가 양식을 작성하고 넌스가 실패한 경우 페이지를 새로 고침 (데이터를 미리 채 웁니다)하고 "문제가 발생했습니다. 입력을 확인한 후 다시 제출하십시오." 유효한 사용자가 제출을 누르거나 공격이 저지되거나 사용자가 적어도 무슨 일이 일어나는지를 알 수 있습니다.

몇 가지 이유로 인증에 실패 할 수 있습니다. 브라우저 캐시의 일부 형식을 사용하도록 설정 한 경우 사용자는 특정 논스와 함께 하나의 양식을 방문한 다음 다른 논스톱으로 이동하고 (자신의 논스와 함께) 첫 번째로 뒤로 버튼을 통해 되돌릴 수 있습니다. . 브라우저 캐시가 발생하도록 허용하여 페이지를 새로 고치지 않았으므로 서버는 세션에서 해당 세션에 대해 유효한 논스를 하나만 저장하기 때문에 일치하지 않을 수 있습니다. 유효한 유스 케이스와 실패한 nonce (잠들지 않는 한, 폼이 다시 채워 졌는지 확인하지 말 것).

나는 사용자에게 다시 제출할 것을 말하고, 입력 내용을 확인해야한다고 함축적으로 암시하며, 다시 제출하기 쉽게 만듭니다.

+0

대단히 감사드립니다. –