2014-09-04 3 views
0

웹 양식에서 서버 쪽 유효성 검사를 수행 할 때 사용자가 암호 상자에 잘못된 암호를 전송하면 암호 상자는 페이지로 돌아 왔을 때 입력 한 암호를 유지하지 않습니다. 그것을 다시 입력해야합니다 - 그들을 좌절시킵니다. 이 문제는 암호 상자를 '끈적'으로 만들어서 사용자가 일반 텍스트 상자처럼 동작하고 사용자가 페이지로 돌아올 때 채워지도록 수정하여 수정할 수 있습니다.첨부 된 암호 상자 관련 문제

그러나 암호 상자의 일반적인 동작은이 정보를 저장하지 않는 이유가 있어야합니다. 끈적 끈적한 암호 상자를 만들면 사용자에게 어떤 종류의 보안 위험이 발생합니까? 그렇지 않은 경우 사용자 환경을 개선하면 암호 입력 상자의 정상적인 동작으로 인해 사용자가 입력 한 데이터가 유지되지 않는 이유는 무엇입니까?

+0

내가 생각 & 패스를 링크로를 검색 할 수있을 것입니다 채워진 경우 사용자 상자를 다시

  • 채워졌다
  • 참고 클릭 사용자는이 동작에 꽤 익숙합니다. 원하지 않는 경우 클라이언트 측 유효성 검사 (HTML 5 양식 유효성 검사 및/또는 AJAX 기반)를 미리 수행하여 입력 된 데이터가 최종적으로 제출할 때 서버 측 유효성 검사를 통과 할 가능성이 높습니다. – CBroe

  • 답변

    0

    예, 보안상의 이유로 작동하지 않습니다.

    예를 들어, 양식을 제출하고 사용자가 앱에서 로그 아웃 한 후에도 양식에 사용 된 비밀번호를 얻을 수 있습니다.

    네비게이터의 뒤로 버튼은 다음 페이지로 이동하기 전에 페이지의 마지막 상태를 복구하는 데 사용되므로 로그인 양식까지 충분히 뒤로 이동 한 경우 거기에서 사용 된 비밀번호를 볼 수 있습니다. 이 컴퓨터를 공유 컴퓨터에 연결하면 문제가 발생할 수 있습니다.

    또는 악의적 인 JS 코드 history.go(-1)을 사용하면 가능합니다.

    는 현재 시뮬레이션을 확인할 수 있습니다 http://codepen.io/luizgrs/pen/EHgjf

    1. 는 두 상자를 입력하고 전송 버튼을 클릭합니다.
    2. 지금 뒤로 링크 암호 상자는 또한 사용자에게