Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

[Book] 제로 트러스트 구글 엔지니어는 아무도 믿지 않는다

최근 업무상 제로 트러스트(더 정확히는 Zero Trust Network Access, ZTNA)에 관해서 알아야 할 필요가 있어서 책을 집어 들었다. 이 책은 200여 페이지의 얇은 책이지만 폰트도 크고 그림도 많아서 금방 읽을 수 있다. ZTNA를 구축한다면 도움될 책은 아니지만 제로 트러스트에 대한 개념의 이해가 필요하다면 꽤 도움이 될 책이다.(실무로는 도움이 안 된다는 의미이다.)

제로 트러스트란 글자 그대로 '아무것도 신뢰하지 않는' 보안의 새로운 사고방식이다. 이는 '모든 것을 의심한다'는 의미이기도 하다.

기존의 보안 사고방식과 제로 트러스트는 무엇이 다를까? 지금까지 주류였던 보안 사고방식은 '경계 방어'다. 경계 방어의 사고방식은 사내 네트워크는 신뢰하고 인터넷을 신뢰하지 않는다. 명확하게 구별한 후 사내 네트워크와 인터넷의 경계를 확실히 지킨다.

제로 트러스트가 뭔지 잘 설명하고 있는데 기존의 보안은 '경계 방어'다. VPN 등을 이용해서 내부 네트워크와 외부 네트워크를 분리하고 내부는 믿고 외부는 믿지 않는다. 인증/인가 등의 보안 조치는 내부 네트워크로 들어오는 경계에서 이뤄진다. 대부분은 사무실 내에 있으니까, 내부 네트워크로 인식해서 접근을 허용할 수 있지만 외부에서 접근할 수 있도록 VPN(Vitual Private Network)를 도입했다고 설명하고 있다. 이는 IT 회사에 다녔다면 꽤 익숙한 네트워크 설계일 거로 생각하고 나도 모든 생각에 기반이 VPN과 사내 네트워크 기반이기는 하다.

상황이 크게 바뀐 것은 2010년경이다. 일반적인 대책으로는 막을 수 없는 사이버 공격이 출현했다. 'APT(Advanced Persistent Threat) 공격'이다. '지능형 지속 위협'이나 '지속적 표적형 공격'이라고도 한다. 표적형 공격이란 특정 조직을 노린 사이버 공격을 의미한다. APT 공격은 표적형 공격 중에서도 높은 수준의 집요한 공격을 가리키고, 금전이나 기밀 취득 등 명확한 목적으로 기업과 조직을 노린다.

APT 공격이 널리 알려진 것은 2010년에 밝혀진 '오퍼레이션 오로라(Operation Auora)' 이후다. 중국의 해커 그룹이 했다고 여겨지는 대규모 APT 공격은 적어도 스무 개의 대기업을 표적으로 했다고 알려졌다. 오퍼레이션 오로라에서는 윈도우에 표준 탑재된 웹 브라우저인 인터넷 익스플로러의 제로 데이 취약점이 이용됐다.

오퍼레이션 오로라로 공격받은 기업 중 하나인 구글은 2010년 1월 12일 그 피해를 최초로 발표했다. 발표에 따른 인권 활동가의 지메일 계정에 접근하는 것이 목적 중 하나였다.

공격에 이용할 보안 취약점에도 비용을 들인다. 아직 보안 패치가 없는 약점을 이용하는 공격 방식이다. 이런 취약점을 '제로 데이(zero day) 취약점'이라고 하며 약점을 이용하는 공격은 '제로 데이 공격(zero day attack)'이라고 한다. 제로 데이 취약점은 암시장에서 높은 금액으로 거래된다. 공격자는 직접 취약점을 발견하기도 하지만 지금은 대부분 구입한다.

모르고 있었지만, 이 오퍼레이션 오로라가 꽤 큰 사건이었던 것 같고 이 공격을 기점으로 구글을 이러한 공격을 막기 위한 준비한다.

2004년 관련 전문가와 여러 기업이 모여 만든 제리코 포럼(Jeriko Forum)은 '비경계형 방어(de-perimeterizaton)'를 보급시키려 했다. 제리코 포럼은 비경계형 방어에 필요한 프레임워크 등을 의논하며 설계의 사고방식이나 기술 사양을 정의한 백서를 만들어 공표했으며 2013년 10월에 해산했다. 2010년에는 미국의 시장조사 기관인 포레스터 리서치(Forrester Research)도 비경계형 방어를 주장했다. '제로 트러스트 네트워크' 용어의 시초다. 다만 이 시기에는 구체적인 구현 예시가 없었다.

그림의 떡이었던 제로 트러스트를 처음 전면 도입한 것은 구글이었는데, 바로 오퍼레이션 오로라 때문이었다.

구글은 전면적으로 보안을 점검하고 약 8년에 걸쳐 제로 트러스트의 사고방식으로 사내 네트워크를 다시 구축했다. 바로 비욘드코프(BeyondCorp)다. 2014년 구글은 전면 재검토하고 구축한 과정을 논문으로 발표했다.

구글이 BeoyndCorp 논문을 공개하면서 제로 트러스트가 본격적으로 시작된다. 내가 이해한 선에서 이전에는 경계 보안으로 내부/외부 네트워크를 분리하고 진입점에서만 검사했다면 이제는 원격 근무도 많이 생기고 외부 접근도 많기 때문에 내부/외부를 아예 구분하지 않고 모든 단계에서 모두 검사, 즉 아무도 신뢰하지 않는 제로 트러스트가 더 보안에 좋다는 접근이라고 생각한다.

현실을 보면 아직 과도기 기점인 것 같지만, 책을 읽으면서 내가 느끼기에 이는 베어 메탈에서 클라우드로 넘어가는 패러다임 쉬프트로 느껴졌고 지금 시대에는 제로 트러스트가 더 맞는다는 느낌이 들었다. 물론 모든 게 그렇듯 구축하는 입장에서는 훨씬 힘들다.

요즘은 시스템이 워낙 좋기 때문에 최근 보안 사고를 보면 내부 직원의 인증정보를 어떤 식으로면 탈취한 뒤에 직원인 것처럼 내부 정보를 털어가는 게 대부분이라고 생각한다. 좋은 시스템을 공격해서 뚫기는 쉽지 않기 때문에 피싱 등을 이용해서 내부 직원을 털어서 내부 네트워크에 들어가기만 하면(특히 개발자나 인프라 엔지니어라면 훨씬 많은 곳에 접근할 수 있다.) 쉽게 많은 정보를 가져갈 수 있기에 이 접근 방법이 더 효율적이라고 생각한다.

경계 보안은 이런 공격에는 오히려 취약하기 때문에 제로 트러스트가 오히려 강점을 가진다는 느낌을 받았다. 물론 강점을 가진다고 했지만 쉽게 구축할 수 있는 것은 아니고 제로 트러스트가 모든 곳에서 인증/인가를 하겠다는 거라서 구현 방식은 조직마다 다를 수 있고 이 책에서도 구체적인 구현에 대해서는 다루지 않는다.

최근 제로 트러스트 세션도 좀 들었는데 그 용어가 어려워서 이해하기 어려웠는데 이 책에서 그 용어도 정리할 수 있었다.

  • RBA(Risk-based Authentication) : 사용자나 단말에 상황에 맞춰 인증 기준이나 방법을 동적으로 변경하는 방식이다. 새로운 디바이스나 해외에서 로그인하면 추가 인증을 요구하는 것이 RBA이다.
  • CASB(Cloud Access Security Broker, 캐스비) : 클라우드로의 통신을 모두 탐지해 검사하는 브로커이다.
  • SWG(Secure Web Gateway) : 사용자 단말을 드나드는 데이터를 확인하는 클라우드 서비스다.
  • IAM(Identity and Access Management) : 사용자를 인증하고 인가하는 시스템으로 제로 트러스트의 핵심 중 하나이다.
  • IAP(Identity Aware Proxy) : 사용자와 애플리케이션 간 통신을 중개하는 프락시다. 사내 네트워크에 '커넥터'라는 서버를 설치해서 사내 업무 애플리케이션을 이용하는 수단이 된다. IAP는 VPN의 대안으로도 주목받으며 VPN보다 네트워크 설계가 간단하면서 애플리케이션 단위 접근을 제어할 수 있다.
  • DLP(Data Loss Prevention) : 외부에 유출하면 안 되는 데이터를 감시해 유출을 막는 '감시원' 역할을 한다. 컴퓨터나 서버, 클라우드 등에 보관한 기밀 정보 등의 파일이 외부로 유출되는 것을 막는 기능을 한다.
  • EDR(Endpoint Detection and Response) : 단말을 지키는 보안 제품이나 기술이다.
  • EPP(Endpoint Protection Platform) : EDR과 구분하고자 바이러스 검사 소프트웨어를 EPP로 부르기도 한다. EPP가 맬웨어의 감염 방지에 집중한다면 EDR은 '맬웨어에 감염된 후의 피해 방지'에 중점을 둔다.
  • MDN(Mobile Device Management) : 스마트폰이나 태블릿, 노트북 등의 사용자 단말을 원격에서 관리한다. 자산을 관리하고 초기 설정이나 업무 애플리케이션 배포 등 클라이언트를 관리하고 단말의 기능을 금지하거나 원격 잠금/삭제 기능을 지원한다.
  • MAM(Mobile Application Management) : 단말에서 작동하는 애플리케이션을 개별적으로 관리한다. BYOD(Bring Your Own Device)처럼 한 대의 단말에 업무 데이터와 사적 데이터가 뒤섞인 환경이라면 애플리케이션 단위로 제어할 수 있는 MAM 도입이 바람직하다. MAM을 도입하면 사용자 단말의 영역을 회사와 개인을 나누는 것이 가능하다.
  • SIEM(Security Information and Event Management) : 부적절한 접근을 탐지할 수 있는 제품이나 서비스
2023/05/24 03:52 2023/05/24 03:52