저는 처음으로 사용자 계정으로 사이트를 구축하고 있습니다. 사용자 로그인 보안을 유지하는 과정에 있습니다. 등록 할 때 암호를 저장하기 전에 암호 해시 한 다음 로그인시 암호가 맞으면 setCookie를 사용하여 사용자 정보로 쿠키를 저장합니다.임의의 값을 세션 "키"로 테이블에 저장하는 것이 안전합니까?
지금 계정을 하이재킹하는 것은 쿠키 값을 수정하는 것만 큼 간단합니다. 나는 사이트를 안전하게 만들고 싶다. 그러나 내가 읽고있는 대부분의 옵션도 너무 복잡해 보일 수 있고 내가 할 수있는 무언가를 사용하고 싶다. 나는 튜토리얼 몇 개를 읽었고 그것을하는 방법에 대한 기본적인 아이디어를 가지고있다. 그러나 그것이 얼마나 안전한지에 관해 모른다.
내 생각은 세션에 대한 테이블을 만들고 userid + 임의의 값을 저장하고, 쿠키를 둘 다 저장하고 모든 페이지에서 테이블에 대해 두 값을 모두로드하고 올바른 경우 갱신하십시오. 이것은 사용자가 다른 장소에서 로그인하더라도 쉽게 만들 수 있고 작동 할 수 있지만 보안 성은 어느 정도인지 알 수 없습니다. 쿠키가 보이지만 누군가가 쿠키를 훔쳐서 갱신하기 전에 사용하지 않으면 세션을 하이재킹 할 방법이 보이지 않습니다.
안전한가요? 어떤 다른 간단한 접근법을 사용할 수 있습니까?
누군가가 훔친 경우에 대한 접근의 kind_ _that DB를 누른 다음 어느쪽으로 든 망가 트린. 데이터베이스에 쿠키를 저장하고 데이터베이스가 안전한지 확인하십시오. – noel
@pst, 정말요? 그것은 "한번 사용한 번호"의 정의를 무시하는 것 같습니다. –
@ 엘 요보 원래 값의 재생성으로 "올바른 경우 갱신"했습니다. –