2021.07.30

"기본적으로 액세스를 의심하라" 제로 트러스트의 7가지 원칙

Chris Hughes | CSO
제로 트러스트(zero trust)를 정의해 설명한 글이 많다. 원칙, 중추, 토대, 원리 같은 단어가 잔뜩 들어 있었을 것이다. 하지만 여전히 제로 트러스트에 대한 단일한 정의는 없다. 여기서는 NIST(National Institute of Standards and Technology)가 제로 트러스트의 7가지 원칙을 설명한 ‘NIST SP 800-207 제로 트러스트 아키텍처’를 참고해 제로 트러스트의 개념을 살펴보자.
   

원칙 1. 모든 데이터 소스와 컴퓨팅 서비스는 리소스로 간주한다

엔드포인트 사용자 기기나 서버만을 리소스로 간주하던 시절은 지났다. 오늘날 네트워크는 서버와 엔드포인트 같은 기존 기기부터 사용자 환경의 다른 리소스에 대해 특정 권한 아래 수행되는 FaaS(Function-as-a-service) 같은 클라우드 컴퓨팅 서비스같이 더 동적인 특성을 갖는 여러 기기로 구성된다.

따라서 IT 환경의 모든 데이터와 컴퓨팅 리소스에 대해 원칙을 확실히 해야 한다. 여기에 가능하다면 고급 인증 통제, 최소 권한 액세스 제어 체계를 적용하는 것이 좋다. 이들 리소스는 다음에서 살펴볼 원칙과 연결되는데, 제로 트러스트의 설계적 요소에 따라 의사결정을 하는 데 도움이 되는 ‘신호’를 제공한다. 이에 대해서는 7번째 원칙에서 다시 알아본다.
 

원칙 2. 네트워크 위치와 관계없이 모든 통신을 안전하게 만든다.

제로 트러스트 환경에는 ZTNA(Zero Trust Network Access) 개념을 적용한다. 이는 사용자가 VPN에 인증한 후 네트워크 내부에서, 또는 여러 네트워크에서 자유로운 액세스 권한을 갖는 기존의 원격 액세스 패러다임과 대비되는 개념이다.

ZTNA 환경에서 액세스 정책의 기본값은 ‘거부’다. 특정 리소스에 대한 액세스가 명시적으로 승인돼야 한다. 더 나아가, ZTNA 환경의 사용자가 기존에 액세스를 명시적으로 승인받지 않았다면 환경 내부의 애플리케이션과 서비스를 인식할 수도 없다.

코로나 팬데믹으로 인해 지리적으로 직원이 더 분산되면서 2번째 원칙이 더 중요해졌다. 많은 직원이 여러 장소에서 여러 기기를 이용해 내부 리소스에 액세스하고 있기 때문이다.
 

원칙 3. 개별 엔터프라이즈 리소스에 대한 액세스는 세션 각각으로 승인된다.

“계절이 바뀌듯 사람도 바뀐다” 이 말은 디지털 신원(ID)에 꼭 맞는 말이다. 동적인 성격을 갖는 분산된 컴퓨팅 환경에서 클라우드 네이티브 아키텍처와 분산된 인력은 끊임없이 여러 위협에 노출된다. 따라서 ‘신뢰’ 개념이 특정 단일 세션 이상으로 확대되어서는 안 된다. 이전 세션에서 특정 장치나 ID를 신뢰했다고 다음 세션에서도 이를 반복해 신뢰할 수 없다는 의미다.

각 세션에서 매번 엄격하게 기기와 ID가 환경에 초래하는 위협을 판단 및 결정해야 한다. 사용자와 관련된 이례적인 동작, 장치 보안 상태의 변경 등은 발생할 수 있는 변화 가운데 하나이다. 각 세션에서 이를 바탕으로 액세스 권한과 그 정도를 결정해야 한다.
 

원칙 4. 리소스에 대한 액세스는 클라이언트 ID와 애플리케이션, 서비스, 요청 자산의 관측 가능한 상태 등 동적 정책에 의해 결정된다. 또 다른 동작, 환경적 속성이 포함될 수도 있다.

현대 컴퓨팅 환경은 복잡하고, 조직의 전통적인 경계를 훨씬 넘어선다. 이런 현실을 극복하는 한 가지 방법은 이른바 ‘신호(Signal)’를 이용해 액세스 제어에 대한 결정을 내리는 것이다. 예를 들어 마이크로소프트의 컨디셔널 액세스(Conditional Access) 다이어그램을 이용해 이를 시각화 할 수 있다. 액세스와 승인에 대한 결정에서 신호를 고려해야 한다. 사용자와 위치, 기기 및 관련 보안 상태, 실시간 위험 및 애플리케이션 컨텍스트 등이 이런 신호가 될 수 있다.


이런 신호들로 완전한 액세스나 제한된 액세스 승인, 또는 액세스 거부 같은 의사결정 프로세스를 지원해야 한다. 신호에 따라 더 높은 수준으로 인증을 보증하기 위해 다중 인증(MFA) 등 추가 조처를 할 수도 있다. 그리고 이런 신호를 기반으로 액세스 수준을 제한할 수 있다.
 

원칙 5. 기업은 모든 소유 및 관련 자산의 무결성과 보안 상태를 모니터링하고 측정한다.

제로 트러스트 모델은 본질적으로 어떤 기기나 자산도 신뢰하지 않는다. 모든 리소스 요청에 보안 상태 평가가 요구된다. 내부 리소스에 액세스하는 경우, 조직 소유 여부와 관계없이 환경에 액세스하는 기업 자산의 상태를 지속해서 모니터링하는 것이 여기에 포함된다. 지속적인 모니터링과 보고를 통해 획득한 인사이트를 토대로 신속히 패치를 적용하고, 취약점을 개선하는 것도 포함된다.

세션별 액세스에 관해 앞서 언급한 원칙으로 돌아가, 기기 상태를 조사해 중대한 취약점을 제거하고, 중요한 보안 픽스나 패치 적용 여부를 확인할 수 있다. 이런 동적인 인사이트, 소유 및 관련 자산의 무결성과 보안 상태를 모니터링한 결과를 토대로 액세스 수준에 대한 결정을 내릴 수 있다.
 

원칙 6. 모든 리소스 인증 및 권한 승인은 가변적이며 액세스를 허용하기 전에 엄격히 적용한다

앞서 살펴본 것처럼 액세스 승인과 신뢰에 대한 개념은 동적이면서 지속적인 방식에 토대를 둔다. 추가적인 인사이트를 위해 신호를 사용하고, 신뢰에 대한 결정을 내리기 전에 이를 평가하면서 지속해서 장치와 자산을 스캔한다는 의미다.

이는 사용자가 리소스에 대한 권한을 갖는 계정을 생성한 후에도 멈추지 않는 지속적이면서 동적인 프로세스다. 각 정책 적용에 대한 결정에 영향을 주는 여러 요소로 구성된 반복적인 프로세스다. 
 

원칙 7. 기업은 자산, 네트워크, 인프라, 통신의 현재 상태에 대한 정보를 가능한 한 많이 수집하고, 이를 활용해 보안 상태를 개선한다

기술 환경은 여러 다양한 위협에 노출된다. 기업은 환경에서 일어나는 일을 인식하기 위해 지속해서 모니터링하는 역량을 유지해야 한다. 제로 트러스트 아키텍처는 다음의 3개 핵심 구성요소로 구성된다. 이는 앞서 언급한 NIST 800-207과 카네기 멜론(Carnegie Mellon) 소프트웨어 엔지니어링 인스터튜트의 블로그 게시글에도 언급돼 있다.
 
  • 정책 엔진(PE)
  • 정책 관리자(PA)
  • 정책 적용 시점(PEP)
 
ⓒ NIST

이런 핵심 아키텍처 구성요소는 자산과 네트워크, 인프라, 통신의 현재 상태에서 수집한 정보를 이용해 의사 결정을 강화하고, 액세스와 관련된 위험한 결정을 피할 수 있게 한다.
 

제로 트러스트는 여정이다

많은 기업이 자주 하는 실수는 제로 트러스트를 목적지로 생각하는 것이다. 적합한 도구를 구매하면 자사 환경에 제로 트러스트를 구현할 수 있다고 믿는다. 하지만 그렇지 않다. 물론 도구는 제로 트러스트 구현에 도움이 된다. 기업이 제로 트러스트 아키텍처에 한 발 더 가깝게 갈 수 있다. 그러나 완벽한 해결책은 아니다. IT 및 사이버보안과 관련된 대부분처럼 사람과 프로세스, 기술이 모두 중요하다.

NSA가 발행한 ‘제로 트러스트 보안 모델 수용(Embracing a Zero Trust Security)’ 자료에 따르면, 성숙도 관점에서 제로 트러스트에 접근하는 것이 좋다. NSA는 초기 준비 단계, 기초 및 중간, 고급 단계로 성숙도를 분류한다.
 
ⓒ NSA

이에 따르면, 출발점은 ‘준비’다. 현재 상태, 격차가 존재하는 지점, 아키텍처와 사례, 프로세스가 제로 트러스트 원칙과 부합하는지 여부 등을 파악한다. 그런 후 이를 다룰 계획을 수립한다. 가장 중요한 것은 이런 과정에 상당한 시간이 걸린다는 점을 받아들이는 것이다. editor@itworld.co.kr


2021.07.30

"기본적으로 액세스를 의심하라" 제로 트러스트의 7가지 원칙

Chris Hughes | CSO
제로 트러스트(zero trust)를 정의해 설명한 글이 많다. 원칙, 중추, 토대, 원리 같은 단어가 잔뜩 들어 있었을 것이다. 하지만 여전히 제로 트러스트에 대한 단일한 정의는 없다. 여기서는 NIST(National Institute of Standards and Technology)가 제로 트러스트의 7가지 원칙을 설명한 ‘NIST SP 800-207 제로 트러스트 아키텍처’를 참고해 제로 트러스트의 개념을 살펴보자.
   

원칙 1. 모든 데이터 소스와 컴퓨팅 서비스는 리소스로 간주한다

엔드포인트 사용자 기기나 서버만을 리소스로 간주하던 시절은 지났다. 오늘날 네트워크는 서버와 엔드포인트 같은 기존 기기부터 사용자 환경의 다른 리소스에 대해 특정 권한 아래 수행되는 FaaS(Function-as-a-service) 같은 클라우드 컴퓨팅 서비스같이 더 동적인 특성을 갖는 여러 기기로 구성된다.

따라서 IT 환경의 모든 데이터와 컴퓨팅 리소스에 대해 원칙을 확실히 해야 한다. 여기에 가능하다면 고급 인증 통제, 최소 권한 액세스 제어 체계를 적용하는 것이 좋다. 이들 리소스는 다음에서 살펴볼 원칙과 연결되는데, 제로 트러스트의 설계적 요소에 따라 의사결정을 하는 데 도움이 되는 ‘신호’를 제공한다. 이에 대해서는 7번째 원칙에서 다시 알아본다.
 

원칙 2. 네트워크 위치와 관계없이 모든 통신을 안전하게 만든다.

제로 트러스트 환경에는 ZTNA(Zero Trust Network Access) 개념을 적용한다. 이는 사용자가 VPN에 인증한 후 네트워크 내부에서, 또는 여러 네트워크에서 자유로운 액세스 권한을 갖는 기존의 원격 액세스 패러다임과 대비되는 개념이다.

ZTNA 환경에서 액세스 정책의 기본값은 ‘거부’다. 특정 리소스에 대한 액세스가 명시적으로 승인돼야 한다. 더 나아가, ZTNA 환경의 사용자가 기존에 액세스를 명시적으로 승인받지 않았다면 환경 내부의 애플리케이션과 서비스를 인식할 수도 없다.

코로나 팬데믹으로 인해 지리적으로 직원이 더 분산되면서 2번째 원칙이 더 중요해졌다. 많은 직원이 여러 장소에서 여러 기기를 이용해 내부 리소스에 액세스하고 있기 때문이다.
 

원칙 3. 개별 엔터프라이즈 리소스에 대한 액세스는 세션 각각으로 승인된다.

“계절이 바뀌듯 사람도 바뀐다” 이 말은 디지털 신원(ID)에 꼭 맞는 말이다. 동적인 성격을 갖는 분산된 컴퓨팅 환경에서 클라우드 네이티브 아키텍처와 분산된 인력은 끊임없이 여러 위협에 노출된다. 따라서 ‘신뢰’ 개념이 특정 단일 세션 이상으로 확대되어서는 안 된다. 이전 세션에서 특정 장치나 ID를 신뢰했다고 다음 세션에서도 이를 반복해 신뢰할 수 없다는 의미다.

각 세션에서 매번 엄격하게 기기와 ID가 환경에 초래하는 위협을 판단 및 결정해야 한다. 사용자와 관련된 이례적인 동작, 장치 보안 상태의 변경 등은 발생할 수 있는 변화 가운데 하나이다. 각 세션에서 이를 바탕으로 액세스 권한과 그 정도를 결정해야 한다.
 

원칙 4. 리소스에 대한 액세스는 클라이언트 ID와 애플리케이션, 서비스, 요청 자산의 관측 가능한 상태 등 동적 정책에 의해 결정된다. 또 다른 동작, 환경적 속성이 포함될 수도 있다.

현대 컴퓨팅 환경은 복잡하고, 조직의 전통적인 경계를 훨씬 넘어선다. 이런 현실을 극복하는 한 가지 방법은 이른바 ‘신호(Signal)’를 이용해 액세스 제어에 대한 결정을 내리는 것이다. 예를 들어 마이크로소프트의 컨디셔널 액세스(Conditional Access) 다이어그램을 이용해 이를 시각화 할 수 있다. 액세스와 승인에 대한 결정에서 신호를 고려해야 한다. 사용자와 위치, 기기 및 관련 보안 상태, 실시간 위험 및 애플리케이션 컨텍스트 등이 이런 신호가 될 수 있다.


이런 신호들로 완전한 액세스나 제한된 액세스 승인, 또는 액세스 거부 같은 의사결정 프로세스를 지원해야 한다. 신호에 따라 더 높은 수준으로 인증을 보증하기 위해 다중 인증(MFA) 등 추가 조처를 할 수도 있다. 그리고 이런 신호를 기반으로 액세스 수준을 제한할 수 있다.
 

원칙 5. 기업은 모든 소유 및 관련 자산의 무결성과 보안 상태를 모니터링하고 측정한다.

제로 트러스트 모델은 본질적으로 어떤 기기나 자산도 신뢰하지 않는다. 모든 리소스 요청에 보안 상태 평가가 요구된다. 내부 리소스에 액세스하는 경우, 조직 소유 여부와 관계없이 환경에 액세스하는 기업 자산의 상태를 지속해서 모니터링하는 것이 여기에 포함된다. 지속적인 모니터링과 보고를 통해 획득한 인사이트를 토대로 신속히 패치를 적용하고, 취약점을 개선하는 것도 포함된다.

세션별 액세스에 관해 앞서 언급한 원칙으로 돌아가, 기기 상태를 조사해 중대한 취약점을 제거하고, 중요한 보안 픽스나 패치 적용 여부를 확인할 수 있다. 이런 동적인 인사이트, 소유 및 관련 자산의 무결성과 보안 상태를 모니터링한 결과를 토대로 액세스 수준에 대한 결정을 내릴 수 있다.
 

원칙 6. 모든 리소스 인증 및 권한 승인은 가변적이며 액세스를 허용하기 전에 엄격히 적용한다

앞서 살펴본 것처럼 액세스 승인과 신뢰에 대한 개념은 동적이면서 지속적인 방식에 토대를 둔다. 추가적인 인사이트를 위해 신호를 사용하고, 신뢰에 대한 결정을 내리기 전에 이를 평가하면서 지속해서 장치와 자산을 스캔한다는 의미다.

이는 사용자가 리소스에 대한 권한을 갖는 계정을 생성한 후에도 멈추지 않는 지속적이면서 동적인 프로세스다. 각 정책 적용에 대한 결정에 영향을 주는 여러 요소로 구성된 반복적인 프로세스다. 
 

원칙 7. 기업은 자산, 네트워크, 인프라, 통신의 현재 상태에 대한 정보를 가능한 한 많이 수집하고, 이를 활용해 보안 상태를 개선한다

기술 환경은 여러 다양한 위협에 노출된다. 기업은 환경에서 일어나는 일을 인식하기 위해 지속해서 모니터링하는 역량을 유지해야 한다. 제로 트러스트 아키텍처는 다음의 3개 핵심 구성요소로 구성된다. 이는 앞서 언급한 NIST 800-207과 카네기 멜론(Carnegie Mellon) 소프트웨어 엔지니어링 인스터튜트의 블로그 게시글에도 언급돼 있다.
 
  • 정책 엔진(PE)
  • 정책 관리자(PA)
  • 정책 적용 시점(PEP)
 
ⓒ NIST

이런 핵심 아키텍처 구성요소는 자산과 네트워크, 인프라, 통신의 현재 상태에서 수집한 정보를 이용해 의사 결정을 강화하고, 액세스와 관련된 위험한 결정을 피할 수 있게 한다.
 

제로 트러스트는 여정이다

많은 기업이 자주 하는 실수는 제로 트러스트를 목적지로 생각하는 것이다. 적합한 도구를 구매하면 자사 환경에 제로 트러스트를 구현할 수 있다고 믿는다. 하지만 그렇지 않다. 물론 도구는 제로 트러스트 구현에 도움이 된다. 기업이 제로 트러스트 아키텍처에 한 발 더 가깝게 갈 수 있다. 그러나 완벽한 해결책은 아니다. IT 및 사이버보안과 관련된 대부분처럼 사람과 프로세스, 기술이 모두 중요하다.

NSA가 발행한 ‘제로 트러스트 보안 모델 수용(Embracing a Zero Trust Security)’ 자료에 따르면, 성숙도 관점에서 제로 트러스트에 접근하는 것이 좋다. NSA는 초기 준비 단계, 기초 및 중간, 고급 단계로 성숙도를 분류한다.
 
ⓒ NSA

이에 따르면, 출발점은 ‘준비’다. 현재 상태, 격차가 존재하는 지점, 아키텍처와 사례, 프로세스가 제로 트러스트 원칙과 부합하는지 여부 등을 파악한다. 그런 후 이를 다룰 계획을 수립한다. 가장 중요한 것은 이런 과정에 상당한 시간이 걸린다는 점을 받아들이는 것이다. editor@itworld.co.kr


X