2012-01-03 1 views
0

로그인 페이지에서 username password를 입력 한 다음 양식을 제출하십시오. 암호는 서버로 이동하여 일부 알고리즘을 사용하여 암호화 된 다음 데이터베이스에 저장됩니다. 그러나 서버에 게시 될 때 방화 광 게시물 데이터에서 볼 수 있습니다. 그렇다면 보안은 어떻게 다른 경우에서도 유사한 구현을 보았습니다. 클라이언트와 서버 사이에 갇혀있을 수 없습니다.로그인 메커니즘 비밀번호 보안을 이해하는 데 어려움이 있습니까?

답변

3

파이어 버그는 클라이언트 (통신 경로의 두 끝점 중 하나)에서 프록시 역할을하기 때문에 비밀번호를 볼 수 있습니다. SSL/TLS (https)는 두 끝점 사이를 통과하는 데이터를 암호화합니다. 내부의 실제 데이터를 볼 수있는 유일한 방법은 끝점 중 하나에 있어야합니다. Firebug는 클라이언트에서 실행되기 때문에 데이터가 암호화되지 않은 엔드 포인트에 액세스 할 수 있습니다. 전송 중에 보호되는 데이터를 전달할 수있는 터널을 생각해보십시오. 방화범이 그 터널 입구에 앉아서 들어가는 모든 것을 볼 수 있습니다.

터널의 끝점에없는 사람/사람이 데이터를 볼 수 없도록 최소한 SSL/TLS를 통해 비밀번호 (및 기타 중요한 데이터)를 전송해야합니다. 이상적으로, 세션 하이재킹 공격을 막기 위해 https를 통해 모든 것을 실행하는 것이 좋습니다 (모든 내용은 in the Wikipedia summary입니다). 적어도 자격 증명 교환 (암호 등)을 암호화하지 않은 사이트는 업계 모범 사례를 따르지 않으므로 안전하지 않은 구현으로 간주되어야합니다.

+1

사실 FireBug가 프록시로 작동하지 않습니다. 프록시를 통해 SSL/TLS 터널 (1.1 이후)을 사용하면 프록시가 SSL 데이터를 볼 수 없습니다. 파이어 버그는 브라우저의 프로세스에 있으므로 암호를 볼 수 있습니다. 즉, SSL 터널에 의해 암호화되기 전에 * 데이터를 봅니다. – AviD

+1

다른 종류의 프록시 (또는 용어의 나쁜 사용). 사용자에서 서버의 응용 프로그램 논리로 이동하는 통신 경로에 인라인으로 위치합니다. 일반/공식 HTTP 프록시 (SSL/TLS 종단점 등)를 기반으로하지는 않지만 사용자의 관점에서 볼 때 하나의 기능으로 작동합니다. 나는 의미론을 다른 토론으로 남겨 둘 것입니다. :) – jeffsix

+0

그래서 당신은 http를 실행하고 로그인을 위해 비밀 번호를 묻는 모든 사이트가 안전하지 않다는 것을 의미합니까 ?? –

1

네, 맞습니다. 데이터를 일반 텍스트로 서버에 보내면 Transit에서 캡처 할 수 있습니다. 따라서 항상 HTTPS 연결을 사용하십시오.

+0

https 연결을 사용 중입니다. 또한이 경우 많은 사람이 https 웹 사이트에없는 것을 확신 할 수있는 방법은 무엇입니까 –

+1

엄지 규칙은 신용 카드 번호, 암호 등의 기밀 정보를 보내는 데 HTTPS 사용입니다. 일반 사이트의 경우 필수는 아닙니다. 다음 질문에 대답하려면 HTTPS를 유지하는 것이 값 비쌉니다. 그 전에 공용 - 개인 키 암호화의 개념과 인증 기관이 존재하는 이유 및 성능 및 비용 문제를 이해해야 할 필요가있는 것과 동일한 것을 이해하는 데 도움이되는 링크를 발견했습니다. http://answers.yahoo.com/question/index?qid=20070604161212AAsnSFX – Anil

관련 문제