[Security] 제로 트러스트(Zero-Trust)
제로 트러스트(Zero-Trust)란
제로 트러스트 아키텍처는 “무엇이든 신뢰하지 않고 항상 검증하라”는 원칙을 기반으로 신뢰가 완전히 제거된 IT 시스템의 설계 및 구현에 대한 접근 방식을 규정한다.
전통적인 보안 모델은 기업 네트워크 내부의 시스템과 장치는 기본적으로 신뢰할 수 있는 경계 내에 있다고 간주하여 서로 제약이 없이 자유롭게 통신하는 구조였다.
이와 다르게, 제로 트러스트는 전통적인 보안 모델에서 취급했던 신뢰가 보안의 취약점이라 정의하고, 내부와 외부를 구분하지 않고 모든 접근 요청을 철저하게 검증하는 것을 의미한다.
이는 사용자, 디바이스, 애플리케이션을 신뢰하지 않고, 각 요청을 세밀하게 검사하여 보안 위협을 최소화하는 구조다.
Nvidia에서는 아래의 원칙을 따라서 제로 트러스트 아키텍처를 수립할 수 있다고 한다.
https://blogs.nvidia.co.kr/blog/what-is-zero-trust/
1. 모든 리소스의 확인과 보안
2. 액세스 제어의 제한과 엄격한 시행
3. 네트워크 트래픽 일체의 검사와 기록
제로 트러스트의 필요성
1. 내부 위험 : 내부 직원이나 계약자가 의도적 또는 실수로 보안 사고를 일으킬 수 있고, 제로 트러스트는 이러한 위험에 효과적으로 대응할 수 있다.
2. 정교한 공격 기법 : 사이버 공격이 점점 더 정교해지고 있기에, 단순 방화벽으로는 계속 발전되는 공격을 막기에는 다소 어려움이 존재하고, 제로 트러스트 아키텍처를 통한 다중 검증으로 보안을 강화할 수 있다.
3. 클라우드와 원격 근무 증가 : 클라우드 서비스의 확대와 원격 근무가 증가하면서 네트워크 경계가 모호해졌고, 이는 내부와 외부의 모호성으로 취약점을 발생시키지만, 외부와 같은 내부 검증으로 보안을 강화할 수 있다.
제로 트러스트 아키텍처 구현
https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-207.pdf
위 링크는 미국 국립표준연구소(NIST)에서 제공하는 제로 트러스트 아키텍처의 상세한 지침을 볼 수 있는 링크이다.
(목차 : https://csrc.nist.gov/pubs/sp/800/207/final)
이는 얼핏 복잡해 보일 수 있으나, 중요한 부분은 무조건 Policy를 거친 요청만 신뢰할 수 있는 요청으로 취급한다는 점이라는 것이다.
제로 트러스트의 형태는 다양하게 구현할 수 있으며, 아래는 Nvidia에서 제안하는 제로 트러스트 구현 방법이다.
1. 사용자가 보호하고자 하는 것, 보호 표면(protect surface)을 정의
- 보호 표면은 기업의 사무실과 클라우드 등의 시스템 모두를 포괄한다.
2. 네트워크에서 일상적으로 흐르는 트랜잭션을 표기
- 추적이 가능하도록 기록을 남긴다.
3. 제로 트러스트 아키텍처를 수립
- 제로 트러스트를 어떻게 구현할 것인지 아키텍처를 구상하고 수립한다.
4. 수립한 아키텍처에 기반한 제로 트러스트 정책을 수립
- 수립된 제로 트러스트 아키텍처에 기반하여 어떠한 정책을 누구에게 적용할 것인지 정한다.
5. 워크로드 전반 네트워크 트래픽의 트랜잭션이 보안 정책에 위배되지 않는지 지속적인 모니터링
- 구축한 제로 트러스트가 정상적으로 수행되도록 특이사항을 모니터링하고, 유지 보수를 한다.