2011-05-01 4 views
0

시나리오 : 내 사이트에서 세션을 시작할 때 사용자에게 한 번 표시되는 랜드 토큰을 생성합니다. 그들이 나중에 사용하기 위해 그것을 "저장"한다고 가정 해보십시오. 그런 다음 타임 스탬프가있는 SQL에 md5 (토큰)를 삽입합니다. 사용자가 로그인과 같은 다른 페이지를 방문하면 유효성 검사 프로세스의 일부로 URL을 통해 토큰을 전달해야합니다. 토큰이 있는지 확인하고이 토큰에 대한 사용자 ID를 UPDATE합니다.세션 하이재킹을 방지하는 좋은 방법은 무엇입니까?

So. 누군가가 사용자의 PHPSESSID 쿠키를 훔쳐도 토큰을 모른 채 이러한 페이지에 액세스 할 수 없으므로 해커에게 도움이되지 않습니까?

답변

1

토큰이없는 페이지에는 액세스 할 수 없지만 추가 된 점으로는 IP 추적 또는 브라우저 추적을 동시에 사용하고 싶습니다.

PHPSESSID 쿠키와 토큰을받는 경우에도 동일한 브라우저를 사용할뿐만 아니라 동일한 IP 소스에서오고 있어야한다는 이론적 근거가 있습니다. 그렇다면 이것은 단지 모호함에 의한 안전의 수단 일뿐입니다.

보안에 대해 정말로 염려하는 경우 HTTPS 연결을 사용해 볼 수 있습니다. 희망이 도움이되었습니다. 건배!

+0

ssl에 대한 좋은 아이디어. 그것은 토큰을 들여다 보는 데 도움이 될 것입니다. 덕분에 도와 줬어 !! – Newphper

관련 문제