안녕하세요,
최종 사용자가 zscaler를 이용한 https/ssl 트래픽이 감시/검사되고 있다는 것을 알 수 있나요? 만약 가능하다면 어떻게 알 수 있나요?
안녕하세요,
최종 사용자가 zscaler를 이용한 https/ssl 트래픽이 감시/검사되고 있다는 것을 알 수 있나요? 만약 가능하다면 어떻게 알 수 있나요?
웹페이지에 서버 인증서가 zscaler로 교체된 것을 보면 알 수 있죠.
SSL 복호화에 대해 이야기한다면, 회사의 인증서를 보는 것이 일반적입니다. Zscaler 인증서가 사용되면 ZIA를 나타내거나, 내부 인증서를 사용하여 SSL 복호화에 의존하는 다양한 기술을 사용할 수 있습니다.
일반적으로 ZCC 또는 시스템 PAC가 트래픽을 ZIA로 보내는 것이 가장 흔한 방법이지만, GRE/IPSEC를 사용하는 사이트에서는 로컬 머신에 아무 것도 필요 없을 수 있습니다.
어떤 것을 하려고 하나요?
명확히 하자면, 트래픽이 복호화되지 않더라도(브라우저가 제시하는 인증서가 원래 인증서인 경우) 해당 웹사이트 접속 기록, 전송 및 수신 데이터 양, 기타 몇 가지 매개변수는 기록됩니다. 그러나 보안 및 DLP 정책에 의해 스캔되지 않는 것은 세션의 내용인 파일 또는 데이터입니다. 세션이 복호화되고 파일이 스캔된 경우에도, 특별한 경우를 제외하고(샌드박스 또는 민감 업로드에 대한 DLP 정책에 의해 일치하는 제로데이 멀웨어) Zscaler는 구체적인 파일이나 폼 내용을 기록하지 않습니다.
이 경우, 서버 인증서가 변경되지 않았다면 SSL 검사가 사용자와 서버 간에 이루어지고 있지 않다고 안전하게 가정할 수 있나요?
맞는 답변입니다. 사이트의 인증서를 사용하는 경우, Zscaler가 아니면 검사되지 않는다고 볼 수 있습니다.
거의 맞습니다. MITM 인증서/기술을 감지할 만큼 똑똑하다면, 일반 암호화된 트래픽이 모니터링될 가능성이 있지만, 백엔드 구성을 이해하지 않으면 최종 사용자는 트래픽을 어떻게 하고 있는지 알기 어렵습니다. 복호화하거나 DLP를 강제하는 것일 수 있지만, 사실상 트래픽이 모니터링될 가능성만을 알려줄 뿐입니다.
또 한 가지—복호화되지 않는 트래픽의 경우, 관리자는 진짜 객체/전체 URL을 알지 못합니다. 도메인/호스트만 알 수 있습니다. 예를 들어, 관리자는 google.com만 볼 수 있고, google.com/someSearchString은 볼 수 없습니다.
이 경우, 브라우저가 제시하는 인증서가 원래 것이라면 SSL 트래픽이 검사/복호화되지 않는다고 안전하게 가정할 수 있나요? 아니면 트래픽을 검사하면서도 원래 인증서를 보여주는 새 방법이 있나요? 이게 어리석은 질문임을 압니다. SSL의 원칙을 깨뜨릴 수 있기 때문에요.
두 번째 질문은, 예를 들어 https://facebook.com에 접속하려고 할 때, Zscaler에서 SSL 검사가 이루어지지 않더라도, Zscaler는 인증서 내 SNI를 통해 사용자가 facebook.com에 접속하는 것을 알 수 있나요? 그리고 세션 내의 하위 URL이나 디렉터리, 페이지 등의 접속을 알 수 있나요? SNI도 브라우저 주소창에서 보는 전체 URL을 포함하나요?
네, 진짜 인증서인 한 그렇게 추정할 수 있습니다. 다른 중간자 공격이 있을 수도 있지만, 마찬가지로 그 인증서는 Digicert, Entrust, Verisign 등에서 발행된 “진짜” 인증서와 다른 것임을 알 수 있습니다.
이게 바로 제 두 번째 질문입니다. 예를 들어 Google이 일부 서브도메인을 사용하는 경우, Zscaler는 알겠죠? 예를 들어, google.com으로 가서 검색을 시작하면 Google이 그 요청을 search.google.com 같은 서브도메인으로 이동시키는데, 이때 SNI는 변경되나요? 그리고 Zscaler는 사용자가 google.com으로 처음 접속한 것과, 이후 search.google.com으로 이동한 것을 알 수 있나요?
새로운 방법은 없습니다. 원래 인증서라면 트래픽이 복호화되지 않는다는 의미지만, Zscaler는 사용자가 특정 도메인에 접속했는지, 대략적인 데이터 양(바이트 수, 요청 수 등)을 알 수 있을 뿐입니다—정확한 URL이나 구체적인 요청 내용은 암호화에 묶여 있어서 알 수 없습니다.