2012-08-06 4 views
0

Form authentication 쿠키 취약점과 관련하여 질문이 있습니다. JavaScript에서는 document.cookie를 사용하여 폼 인증 쿠키 값에 액세스 할 수 있습니다 (httponly가 아니라고 가정). 이 값은 암호화됩니다. 많은 블로그에서 누군가가이 가치를 얻으면 우리의 보안이 침해당하는 것을 읽었습니다. 제 질문은 양식 인증 암호화 방법이 컴퓨터 키를 사용하여 쿠키를 암호화하므로 해커가 쿠키를 해독 할 수 있습니까 (해커가 쿠키 내부의 자격 증명) 어떻게 해독 할 수 있습니까? 동일한 컴퓨터 키가 필요합니까? 그렇지 않니? 이 점에 대해 쿠키 값이 취약한 이유는 공격자가 내 컴퓨터 키를 가지고 있어야만 해독 할 수 있다는 것입니다. 내가 여기 있니?폼 인증 쿠키 취약점

+0

여기에서 읽어 볼 수 있습니다. 그러나 내가 실수하지 않으면 MS에 의해 어떤 형태의 대응책이 재발행되었습니다. http://visualstudiomagazine.com/articles/2010/09/14/aspnet-security-hack.aspx – JaggenSWE

답변

2

어떻게 그가 (공격자) 위반을 양식 인증 암호화 그는 암호화 된 쿠키를 해독 할 필요가 없습니다

이후 (쿠키 내부의 자격 증명). 그는 단지 쿠키의 암호화 된 값을 사용하여 당신이 될 수 있습니다.

서버가 암호화를 수행하므로 쿠키를 제공하는 브라우저가 원래 쿠키를 발급 한 사람인지는 알 수 없습니다.

Modify This Cookie (또는 그 기능을 수행하는 다른 것)과 같은 확장자를 사용하면 쿠키를 얻을 수있는 경우 쿠키를 암호화 된 값으로 설정할 수 있습니다.

아이러니하게도 the very same question은 StackOverflow에 대해 질문했습니다. 자세한 정보는 Troy의 게시물을보십시오.

+0

MAN! 당신 말이 맞아요. 나는 그가 그의 클라이언트에 더미 쿠키를 만들 수 있고 값을 (하이재킹 된 것을 설정할 수 있고) 서버에 보낼 수 있다고 생각한다. 이 올바른지? –

+0

@RockySingh 예. 이것이 초기 인증 단계 이상으로 HTTPS가 중요한 이유입니다. HTTPS는 쿠키를 over-the-wire로 암호화합니다. – vcsjones

+0

@RockySingh 블로그에 대한 링크를 추가하여 심층적으로 설명해야합니다. – vcsjones

1

내가 한 일은 실제로 얼마나 도움이되는지는 모르겠지만 (어떤 시도가 100 번 시도되었지만) IP 주소로 쿠키를 페어링 한 적이 전혀 없었습니다. 즉, 이전 호출과 동일한 IP 주소에서 전화가 오면 찾은 다음 그렇지 않으면 다시 설정하고 다시 로그인해야합니다. 이것은 모든 사이트에서 정확하게 실행 가능한 것은 아니지만, 제 경우에는 이동성을 허용하는 것보다 보안의 일부 측정을 추가하는 것이 더 중요했습니다.

이 접근법은 아마도 MITM 공격에 매우 유용 할 수 있지만 괴물 예산과 성능 및 접근 가능성에 대한 제한이없는 경우를 제외하고는 모든 우발적 인 상황에서 자신을 보호 할 수 없습니다.

+0

사용자가 동일한 IP 주소에 머물러 있어야 합법적 인 사용자에게 액세스가 거부 될 위험이 있습니다. 사용자가 세션 내에서 다양한 이유로 세션 내에서 IP 주소를 변경할 수 있습니다. * 이더넷 케이블을 꽂거나 뽑고 Wi-Fi와 교환 * 주위로 이동하여 Wi-Fi 핫스팟 또는 셀 타워 변경 * VPN 연결/연결 해제 * IP 주소 풀을 사용하는 동적 NAT *로드 균형 조정되거나 분산 된 프록시 IP 주소의 일부분 만 일치하면 효과를 줄일 수 있지만 같은 사람의 문을 열어 둘 수 있습니다 연결을 가로 채기위한 커피 숍. – Bruce

+0

IP 주소 확인은 주로 보안 수준이 필요한 솔루션에 배포됩니다. 내가 추측하는 바를 보호하려고 노력할 때 모든 것이 다 내린다. – JaggenSWE