2013-08-23 3 views
2

사회 네트워크 사용자가 로그인하고 2 시간 이상 같은 긴 시간 동안 일부 작업을 수행하는 것처럼, 이제는 세션에서 사용자 ID (회원 테이블의 ID 번호)와 같은 일부 데이터를 저장하고이 ID로 사용자 세부 정보 데이터를 찾았습니다. .오랫동안 세션 또는 암호화 된 쿠키에 사용자 ID를 저장 하시겠습니까?

각 사용자가 사이트 i에 로그인하면 해당 사용자의이 데이터가 2 시간 동안 세션에 저장됩니다. 이 작업에 대해 120 분에 내 세션 시간을 설정했는데이 작업이 좋은지 알고 싶습니까? 2 시간 동안 세션을 저장하는 것을 의미합니다.

다른 한 손으로 나는 ID를 클라이언트의 암호화 된 쿠키에 저장할 수 있으며이 방법은 안전하고 사용자/해커가 내 쿠키를 해독하고 사용자 ID (이 ID는 ID 테이블 ID)를 검색 할 수 있다면 공격 할 수 있음을 알고 싶습니다. 내 사이트로 가서 어떤 일을 하시겠습니까?

답변

1

웹 세계에서 세션 변수의 정보 저장소 연결이 잘못되었습니다. 세션 변수를 제어하지 않으며 모든 모멘트에서 손실 될 수 있습니다.

<machineKey validationKey = "AutoGenerate, IsolateApps" 
             decryptionKey = "AutoGenerate, IsolateApps" 
             validation = "SHA1" decryption = "Auto" /> 

그것은 수 없습니다 내가 사용되는 구조를 알 수는 없지만, IIS 서버에 귀하의 사이트의 웹에 Web.config 파일에 인증 쿠키에 대한 암호화 키를 구성 할 수 있습니다이 그 정보가 클라이언트 측에서 해킹됩니다.

이 아마 쿠키를 해독하지만 전체 쿠키를 steeling되지 않습니다 더 좋은 방법

+0

사용자가 정보를 검색하면 무언가를 할 수 없다는 것을 의미합니까? – motevalizadeh

+0

예. 웹 사이트 만 인증 쿠키의 사용자 데이터를 해독 할 수 있습니다. – tdelepine

1

쿠키와 ID를 저장의 문제입니다. 이것은 일반적인 세션 쿠키와 영구 쿠키입니다.

사이트가 여전히 브라우저에서 활성화되어있는 동안 새로운 로그인으로 사용자를 괴롭히지 않으려면 짧은 세션 시간 초과를 자바 스크립트 활성 상태 (예 : 페이지 새로 고침마다 10 분)로 고려하십시오. 그렇지 않으면 서버에 세션이 더 이상 필요하지 않습니다.

브라우저 창이 닫힌 경우에도 사용자가 로그인 상태를 유지하려는 경우. 서버 암호화가 양호한 브라우저 식별 정보 (예 : Is browser fingerprinting a viable technique for identifying anonymous users?)를 쿠키에 포함하는 것을 고려하십시오.

강제로 https를 잊지 마세요.

0

암호화 된 쿠키에 저장하지 마십시오. 쿠키에 서명하십시오. 그것은 여기 다르다 인 이유 :

https://spring.io/blog/2014/01/20/exploiting-encrypted-cookies-for-fun-and-profit#modifying-the-decrypted-value

세션을 가진의 '오래된'대안은 조금 덜 확장 성이 서명 쿠키에 의존하는 것보다,하지만 경우에도 사람처럼, 더 안전해야 NSA는 서명/암호화에 관한 모든 종류의 방법을 가지고 있습니다. ** 편집 성명 ** 그러나 그런 다음 다시, 그들이 있다면, 그들은 또한 중간 액세스에 남자가있을 가능성이 높습니다 및 모든 종류의 세션은 무의미한 것입니다.

+0

이 링크는 질문에 대답 할 수 있지만 답변의 핵심 부분을 여기에 포함시키고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. – skrilled

+0

첫 번째 문장에서 링크와 동일한 솔루션을 제공합니다. 링크는 단지 이유이며, 사람들이 증거를 원한다면 그 블로그 게시물이 30k 문자를 초과 할 가능성이 가장 높고 가장 많은 블로그 게시물을 요약하기 때문에 쉽지 않습니다. 그것을 할 길을 요약했다. –

+0

@skrilled : 내 대답에 플래그를 지정 했습니까? 당신은 "이 링크가 질문에 대답하는 동안"-> 질문에 대답하지 않는다고 말하면 왜 그 이유를 설명합니다. 네가 해냈고 어떻게 든 그걸 막을 수 있다면, 제발 –

관련 문제