2013-08-31 6 views
2

이 바보 같은 질문처럼 보이지만 궁금 :강제로 HTTPS로 리디렉션하지 않고 HSTS를 활성화 하시겠습니까?

  • 가 어떻게 HSTS가 HTTPS에 강제로 사용자를 리디렉션하지 않고 배포?
  • HTTP 도메인은 HSTS를 사용하는 도메인과 동일한 도메인에서 어떻게 제공됩니까? (전체 사이트 또는 혼합 컨텐츠 중 하나)
  • 왜이 작업을 수행합니까?

나는 from the EFF site을 읽고 있어요 그리고 것을이 수행 된 것으로 나타납니다 eff.org에 대한

우리는 최근에 활성화 HSTS는. 설정하는 데 1 시간 미만의 시간이 걸렸으며 강제로 사용자를 HTTPS로 리디렉션하지 않고도이를 수행 할 수있는 방법을 찾았으므로 HTTPS 액세스에 대한 명확한 선호도를 명시하면서 HTTP에서 사이트를 계속 사용할 수있게 만들 수 있습니다. 그것은 매력처럼 작동했으며 상당 부분의 사용자가 HTTPS로 자동으로 사이트에 액세스하고 있습니다. 아마도 알지도 못했을 것입니다. 내가 그 헤더를 전송 https://example.net/의 페이지에 액세스하는 경우를 들어, 도메인 example.net에 대한 이후의 모든 요청을 그래서

Strict-Transport-Security: max-age=31536000 

: 나는 알고 있어요으로

, HSTS는 HTTP 헤더를 전송하여 작동 다음 31536000 초가 HTTPS를 사용하고 HTTP 응답 인 경우 브라우저에 거대한 빨간색 경고가 표시됩니다.

누군가 나를 설명해 주시겠습니까? HSTS에 대한 정확한 이해가 있습니까?

+0

나는 이에 대한 답을 알고 싶다. HSTS 헤더는 HTTP를 통해 전송되는 경우 무시되어야하므로 사용자가 HTTPS로 리다이렉트하여 가져올 수 있어야합니다. 브라우저가 사이트를 HSTS 호스트로 인식하면 후속 요청은 모두 HTTPS를 통해 전송됩니다. 나의 이해에 그것은 이해되지 않는다. –

답변

3

HSTS 헤더는 HTTPS를 통해서만 발행되어야하며 HTTPS를 통해 수신 된 경우 사용자 에이전트에 의해서만 시행되어야합니다. 사용자 에이전트는 HTTP를 통해 전송 된 HSTS 헤더를 공격자가 악의적으로 주입 할 수 있으므로이를 무시해야합니다.

이것은 사이트가 HTTP를 통해 계속 서비스 할 수 있으며 사용자가 원하는대로 HTTP를 계속 탐색 할 수 있음을 의미합니다. 그러나 주소 표시 줄에 https : //를 수동으로 삽입하면 HSTS 헤더가 수신되고 사용자 에이전트는이를 HSTS 호스트로 처리합니다.

이것은 강제로 HTTPS 트래픽을 점진적으로 도입하는 좋은 방법입니다. 사용자가 보안 옵션을 인식하면 HTTPS 트래픽이 증가하고 HSTS 덕분에 유지됩니다. 어쩌면 EFF가 점진적으로 도입하고 있으며, 만족할 만하다는 것을 느끼면 언젠가는 큰 'HTTPS 스위치'를 쓸어 버릴지도 모릅니다.

+0

맞습니다.하지만 https : //에서 처음으로 사이트에 액세스 한 후 이상한 이유로 http : //에서 동일한 사이트를 방문하려고하면 더 이상 작동하지 않고 https : //로 자동 전송됩니다. //, 권리? (내 말은, 그게 거의 HSTS의 전체 지점 인 것 같다) –

+2

@HenrikKjusAlstad Correct! –