이 SSL 인증서 체인이 손상 되었습니까?


13

도메인 example.com의 SSL 인증서의 경우 일부 테스트에 따르면 체인이 불완전하고 Firefox에서 자체 인증서 저장소를 유지하므로 Mozilla ( 1 , 2 , 3 ) 에서 실패 할 수 있습니다 . 다른 사람들 은 Firefox 36과 마찬가지로 인증서 체인에 문제가 없다고 말합니다.

업데이트 : Windows XP와 MacOS X Snow Leopard에서 Opera, Safari, Chrome 및 IE를 테스트했는데 모두 정상적으로 작동합니다. 두 OS 모두에서 Firefox <36에서만 실패합니다. Linux에서 테스트 할 수는 없지만이 웹 사이트의 경우 방문자의 1 % 미만이며 대부분 봇입니다. 따라서 이것은 "이 설정이 Mozilla Firefox에서 경고를 표시합니까?"및 "SSL 인증서 체인이 끊어 졌습니까?"

따라서 문제는 ssl.ca 파일에 어떤 인증서를 배치해야하는지 확인하여 Firefox <36을 질식시키지 않도록 Apache에서 제공 할 수 있습니까?

추신 : 부수적으로, 인증서를 테스트하는 데 사용 된 Firefox 36은 완전히 새로 설치되었습니다. 이전에 동일한 체인을 사용하는 사이트를 방문하는 동안 중간 인증서를 다운로드 했기 때문에 불만이 제기되지 않았습니다 .


1
꼭 그렇지는 않습니다 - 당신이 당신의 자신의 질문에 대답 할 수 있다면 어떤 경우에, 당신은 그렇게 할 것을 권장합니다 :)
BE77Y

예, 나는 이것에 대답했지만 깨진 것이 아니라 고치는 방법을 다시 묻는 것이 더 유용 할 것입니다. 그렇게해도 괜찮습니까?
Gaia

1
물론. 여기에 대한 답변도 게시됩니다 (게시 된 시점부터 옳았습니까?)
Canadian Luke

@ 가이아 : 아, 알았어-이제 무슨 말인지 알 겠어. 나는 그것에 대해 모범 사례로 간주되는 것에 100 %가 아니지만 내 본능은 "그리고 어떻게 해결해야합니까?"를 포함하도록 질문을 업데이트하는 것입니다. 귀하의 경우 Steffen Ullrich의 답변에 따라 "COMODO RSA 인증 기관"인증서가 체인에서 누락되어 잠재적 인 클라이언트 오류를 ​​피할 수 있지만 체인에 포함시킬 수도 있습니다. 이것은 핸드 셰이크에 잠재적으로 불필요한 오버 헤드를 추가한다는 점에서 실제로 나쁜 습관으로 간주됩니다. 그렇지 않으면 해로운 영향을 미치지 않습니다.
BE77Y

또한, 모든 최신 클라이언트가 현재 SSLlabs 테스트에 따라 현재 상태로 설정되어 있어야한다는 점은 주목할 가치가 있습니다.
BE77Y

답변:


8

체인이 충분한 지 여부는 클라이언트의 CA 저장소에 따라 다릅니다. Firefox 및 Chrome에 2014 년 말 "COMODO RSA 인증 기관"에 대한 인증서가 포함 된 것 같습니다. Internet Explorer의 경우 기본 OS에 따라 다를 수 있습니다. 브라우저가 아닌 브라우저 (예 : 크롤러, 모바일 응용 프로그램 등)에서 사용하는 신뢰 저장소에는 아직 CA가 포함되어 있지 않을 수 있습니다.

어쨌든 SSLLabs 보고서 에서 볼 수 있듯이 체인이 완전히 올바르지 않습니다 .

  • 하나의 신뢰 경로에는 브라우저가 새 CA를 신뢰해야합니다. 이 경우 신뢰할 수있는 CA가 내장되어 있고 체인에 포함되어 있지 않기 때문에 여전히 잘못된 새 CA를 배송해야합니다.
  • 다른 트러스트 경로가 불완전합니다. 즉 추가 다운로드가 필요합니다. Chrome과 같은 일부 브라우저는이 다운로드를 수행하는 반면, 다른 브라우저와 비 브라우저는 필요한 모든 인증서가 제공된 체인 안에 포함되어있을 것으로 기대합니다. 따라서 새로운 CA가 내장되어 있지 않은 대부분의 브라우저와 응용 프로그램은이 사이트에서 실패합니다.

Chrome과 IE가 모두 Windows 인증서 저장소를 사용한다는 인상을 받았습니다. Chrome에 자체 보조 상점이 있습니까?
Gaia

SSLlabs에는 "Chain issues = None"이라고 표시되어 있지만 아래에 자세한 체인 분석이 있습니다.
Gaia

1
FWIW, OS X의 Chrome은 실제로 OS 인증서 저장소 @SteffenUllrich를 사용합니다.
BE77Y

1
@Gaia : 모바일 클라이언트를 잊지 말고 다양한 Android 버전마다 다를 수있는 자체 인증서 저장소가 있습니다.
Steffen Ullrich

1
@Gaia : SSLLabs에 표시된 두 번째 신뢰 경로를 사용하여 누락 된 체인 인증서를 추가하십시오. 이 체인은 최신 CA가있는 브라우저와 아직이 CA가없는 브라우저에서 모두 유효성을 검사 할 수 있습니다.
Steffen Ullrich

8

Comodo에 연락하여 bundle.crt 파일을 다운로드했습니다. 이 서버의 설정에 따라 ssl.ca로 이름을 변경했으며 이제 인증서가 모든 테스트를 통과했습니다. Chain issues = Contains anchor통지가 문제가되지 않습니다 (아래 참조).

가장 완벽한 테스트로 널리 알려진 SSL Labs는 이제을 보여 Chain issues = Contains anchor주었지만 이전 Chain issues = None에는 다른 것으로 체인에 문제가 있음을 보여주었습니다. 이것은 서버가 클라이언트에게 보내는 여분의 1kB를 제외하고 는 실제로 문제가 아닙니다 ( 1 , 2 ).

내 결론

  1. SSL Labs 테스트에서 무시하거나 Chain issues = Contains anchor번들 파일에서 루트 인증서를 제거하십시오 (아래 주석 참조).

  2. SSL Labs에 따르면 체인이 실제로 괜찮은지 확인 하려면 다른 세 개의 테스트 사이트 ( 1 , 2 , 3 ) 중 하나 이상에서 항상 보조 테스트를 실행 하십시오 .Chain issues = None


2
실제 "앵커"/ "루트"인증서를 포함시킬 필요는 없습니다. 그러나 중간 인증서를 많이 원합니다. 처음에 중간 인증서가 없었기 때문에 문제가 발생했다고 가정합니다.
Håkan Lindqvist

@ HåkanLindqvist 그래서 인증서를 해독해야합니다. 루트 인증서가 무엇인지 찾아 체인에서 제거해야합니까?
Gaia

1
중간 인증서를 누락하는 것만 큼 심각한 문제는 아니지만 그렇게하는 것이 좋습니다 (조금 낭비입니다). Qualy의 SSL 테스트 인 Fwiw는 이것이 02faf3e291435468607857694df5e45b68851868불필요 하다는 것을 나타냅니다 .
Håkan Lindqvist

@ HåkanLindqvist를 사용하여 openssl x509 -fingerprint -in ssl.ca지문 02faf3e291435468607857694df5e45b68851868이있는 파일 부분 이 첫 번째 PEM 임을 알았습니다 . 제거한 후 i.imgur.com/1iG2UCz.pngi.imgur.com/m8gYbdG.png를 얻습니다 (OCSP 오류 : OCSP 상태로 요청 실패 : 6 [ ocsp.comodoca.com] )
Gaia

3
"앵커 포함"경고에 대한 귀하의 결론은 유효합니다-Security.SE에 대한이 답변은 읽을 가치가 있습니다. 요약하면 보내는 데 아무런 문제가 없습니다 : security.stackexchange.com/a/24566/7043
Chris J
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.