2016-09-26 10 views
1

, 나는 HTTPS 대신 HTTP를 통해 액세스 할 때 헤더를 전송에 대해 section 7.2에 금지 명령을 참조하십시오RFC 6797이 일반 HTTP 응답보다 Strict-Transport-Security 헤더를 보내는 것을 금지하는 이유는 무엇입니까? HSTS (엄격한-운송 보안)에 대한 사양을 읽을 때

는 STS 헤더 필드를 포함해서는 안

HSTS 호스트 HTTP 응답 은 비보안 전송을 통해 전달됩니다.

왜 그렇습니까? 이것이 위반되면 어떤 위험이 있습니까?

답변

1

위험은 웹 사이트 자체의 가용성에 있습니다. 웹 사이트는 이상 (중 현재 또는 미래에) 응답 할 수있는 경우 HTTP가 아닌 HTTPS를 통해, 반영구적 사이트에 액세스하는 브라우저를 방지 할 수 있습니다 :

  1. 브라우저 :
  2. "나는 http://example.com을 원하는을" ExampleCom : "이제 3 개월 동안 https : // URL로 가야합니다!"
  3. 브라우저 :에만 HTTPS 연결을 통해 STS 헤더를 제공함으로써 [아무것도]

이 사이트가 적어도 지금가에 브라우저를 가리키는되지 않는다는 것을 보장하지 :

  • ExampleCom "나는 https://example.com 원하는" 액세스 할 수없는 사이트. 물론 최대 연령이 3 개월로 설정되고 HTTPS 사이트가 내일 중단되는 경우 효과는 동일합니다. 이것은 단지 증분 보호 일뿐입니다.

    서버 긍정적는 HTTP 대 HTTPS, 하지만 당신은 당신이 어쨌든 HTTPS를 통해 전용으로 액세스 할 수 귀하의 웹 사이트를 설정 한 생각 (예를 들면 인해 SSL/TLS 종료를 통해 액세스되고 있는지 여부를 요청 특성에서 알 수없는 경우 nginx 프록시에서), 헤더를 항상 제공해야합니다. 하지만 둘 다 제공하려는 경우 (예 : 서버에서 HTTP-> HTTPS 리디렉션을 제공하려는 경우 프록시에서 연결에 대해 알려주고 그에 대한 STS 헤더 응답을 시작하는 방법을 찾으십시오.

    (이 설명에 대한 Deirdre Connolly에게 감사!)

  • 1

    확실하지 특정 문제를 해결하고자하는, 또는 단지 호기심 위해 요구하고 있지만 더 나은 http://security.stackexchange.com

    에 요구 될 수있는 경우 당신처럼 나는 HTTP를 통해 이것을 보내는 서버로부터의 위협을 볼 수 없다. 그것은 정말로 이해가되지 않지만 정직 할 위험이 있는지 확실하지 않습니다. 헤더를 제대로 설정할 수 없다면 HSTS를 구현할 준비가되지 않았을 것입니다. 잘못 구성하면 위험 할 수 있습니다!

    HTTP 응답 불안 전송을 통해 수신되면 UA의 MUST :

    먼 더 큰 위험은 브라우저가 8.1 명시 적으로 무시해야 상태 섹션 HTTP를 통해받은 HSTS 헤더를 처리 할 수 ​​있다면입니다 현재 STS 헤더 필드를 무시합니다.

    여기에 위험은 브라우저가 잘못 처리하는 경우 악의적 인 공격자 (또는 실수로 잘못 헤더)는 HTTP 전용 웹 사이트를 오프라인 (또는 혼합 사이트의 HTTP 전용 부품) 걸릴 수 있다는 것입니다. 이렇게하면 헤더 만료 또는 사이트에서 HTTPS를 구현할 때까지 해당 사용자에 대해 DoS가 발생합니다.

    또한 브라우저가 HTTPS가 아닌 HTTP를 통해이 헤더를 허용 한 경우 MITM 공격자가 최대 길이 0으로 설정하여 헤더를 만료시킬 수 있습니다. 예를 들어, 긴 HSTS 헤더 https://www.example.com을 설정했지만 공격자는 http://example.com 이상의 includeSubDomain과 함께 max-age = 0 헤더를 게시 할 수 있었고 브라우저가 잘못 처리 한 경우 HTTPS가 www 사이트에 제공하는 보호 기능을 효과적으로 제거 할 수있었습니다.

    이러한 이유로 클라이언트 (즉, 웹 브라우저)가 올바르게 구현하고 HTTP를 통해 제공되는 경우 HSTS 헤더를 무시하고 HTTPS를 통해 처리하는 경우 매우 중요합니다. 이것은 RFC 상태 서버가 HTTP를 통해 보내지 말아야하는 또 다른 이유 일 수 있습니다. 브라우저가이 오류를 구현하는 경우에 한해서만 가능하지만 솔직히, 브라우저가 MITM 공격자가 추가 할 수있는 모든 HTTP 전용 웹 사이트를 위험에 빠뜨리고 있습니다. 그것은 위와 같습니다.

    +0

    다른 스택 교환에 대한 정보 주셔서 감사합니다! 내가 생각하기에는 너무 늦었지만, 앞으로도 계속 명심하겠습니다. – phyzome