차단단말이 CWP페이지 Redirection이 되지 않는 문제

Genian ZTNA는 회사의 보안 정책을 준수하지 않은 사용자가 브라우저로 네트워크 접속을 시도할 때 CWP를 통해 준수해야 하는 보안 정책을 보여 줍니다. 사용자에게 접속인증페이지를 표시하기 위해 Genian ZTNA은 사용자 PC가 네트워크 통신 프로세스를 모니터링하고 사용자가 액세스하려는 페이지 대신 Genian ZTNA의 CWP 페이지를 볼 수 있도록합니다.

Genian ZTNA가 제어하는 PC에서 CWP 페이지에 연결되어 있지 않습니다. 또는 웹브라우저에 "연결이 비공개입니다." 라는 문구만 표시되는 경우가 있습니다

이 문제는 보안 정책을 준수하지 않는 사용자가 HTTPS 서비스를 사용하여 특정 사이트에 연결할 때 발생합니다. Genian ZTNA는 기본적으로 단말에서 발생하는 패킷을 우회시켜 사용자에게 CWP 화면을 표시하지만 HSTS 및 HPKP(브라우저의 인증서 확인)라는 브라우저의 기능으로 CWP 페이지 리다이렉션이 되지 않을 수 있습니다. 아래 내용들을 확인하여 ZTNA의 차단 페이지 동작방식을 이해할 수 있습니다.

HTTP 통신을 시도하는 PC에 CWP 페이지를 표시하는 방식

Genian ZTNA가 HTTPS 통신을 하려는 PC에 CWP 페이지를 표시하는 방법입니다. 차단된 단말이 WEB 브라우저로 통신을 시도할때 GENIAN ZTNA CWP 페이지가 표시되는 원리를 이해할 수 있습니다.

이 방법은 단말의 패킷을 가로채는 방법을 사용합니다.

보안 정책을 준수하지 않는 PC는 ARP 테이블이 변조된 상태에 있습니다. 모든 통신은 네트워크센서를 통해 이루어집니다. 웹 서버와 통신 할 때 네트워크센서는 웹 서버 대신 통신합니다.

../_images/mitm-attack.jpg
여기서 중요한 점은 서버 인증서가 Genian ZTNA에서 생성한 CA 인증서(FAKE 인증서)로 전송되어 암호화된 통신이 웹 서버에 연결되지 않고 Genian ZTNA로 세션이 설정되므로 네트워크센서에서 통신 내용을 확인할 수 있습니다.
따라서 Genian ZTNA는 보안 정책을 준수하지 않은 PC에서 CWP 화면을 표시할 수 있습니다.
그러나 보안 정책을 준수하지 않은 사용자가 특정 웹 사이트에 액세스 할 때 브라우저 화면에서 "연결이 비공개로 설정되어 있지 않습니다"라는 메시지만 볼 수 있고 CWP 화면을 볼 수 없는 이유는 HSTS 및 HPKP 기능 때문입니다.

1. HSTS/HPKP 로 인한 CWP 페이지가 표시되지 않는 경우

증상

보안 정책을 준수하지 않는 사용자 PC가 특정 웹 사이트에 접속할 때 브라우저 화면에 "연결이 비공개로 설정되어 있지 않습니다. ( IE : 이 사이트는 안전하지 않습니다. )" 라는 메시지가 나타납니다.

원인

Genian ZTNA가 CWP 페이지를 표시하지 못하는 경우와 보안 정책을 준수하지 않는 사용자를 제어하는 ​​방법에 대해 설명 하겠습니다.

제어 대상 PC가 HTTPS 사이트에 액세스 할 때 Genian ZTNA는 자체 인증서를 특정 사이트 인증서 대신 제어 대상 PC에 전달합니다.

여기서 브라우저는 Genian ZTNA에서 받은 인증서의 PIN 값을 사전 등록된 특정 사이트의 PIN 값과 비교 합니다. PIN 값이 서로 다른 것으로 판단되면 Genian ZTNA는 제어 대상 PC와 암호화 대상 사이에 암호화 세션을 설정할 수 없으므로 사용자 PC에 CWP 페이지를 표시 할 수 없습니다.

따라서 특정 사이트에 액세스 할 때 제어 대상 사용자 PC가 CWP 화면으로 리다이렉션되지 않고 "사용자의 연결이 비공개가 아닙니다"라는 메시지만 표시되는 것입니다.

Note

HSTS(HTTP Strict Transport security) 란?

  • 클라이언트가 요청하는 HTTP 패킷을 HTTPS로만 요청하도록 강제화 하는 설정

  • 웹서버의 응답 헤더에 ‘Strict-Transport-Security’ 를 삽입하여 최초 요청 시 부터 HTTPS로 강제화하는 설정

  • 중간자 공격 MITM (Man In The Middle) 중 일부인 SSL Strip 공격을 방지할 수 있다.

HPKP(HTTP Public Key Pinning) 란?

  • 클라이언트가 서버와 SSL/TLS 암호화 통신에 사용할 인증서를 최종 서버의 인증서로 고정(Pinning) 하는 설정

  • 잘못된 PIN 값을 가진 인증서로 접속 요청 시 고정했던 인증서를 비교하여 다를 경우 접속을 거부

  • 즉. 중간자 공격 MITM (Man In The Middle) 을 방지할 수 있다.

해결방법

리다이렉션 기능을 사용하는 모든 보안 솔루션에서 발생하는 문제이며 현재 다른 대책을 고려 중입니다.

2. Proxy 서버를 사용하여 CWP Redirection이 되지 않음

증상

네트워크를 제한하는 정책을 할당받은 노드가 WEB페이지 연결을 시도할때 CWP페이지로 Redirection 이 되지 않는 현상발생

원인

단말의 트래픽이 Proxy 서버를 거치면서 정상적으로 Redirection을 수행하지 못하는 문제로 발생

해결방법

Proxy 설정에서 정책서버의 IP를 예외처리합니다.

예외처리 방법은 하단을 참고하시기 바랍니다.

.pac 파일 수정 샘플

function FindProxyForURL(url, host) { if (isInNet(host, "[정책서버 IP]","255.255.255.255"))
return "DIRECT"; else return "PROXY [프록시 서버 주소]"; }

.dat 파일 수정 샘플

function FindProxyForURL(url, host)
{
if (isPlainHostName(host) ||
isInNet(host, "x.x.x.x", "255.255.255.255"))
return "DIRECT";
else
return "PROXY proxy.company.com:8080";
};