옵저버빌리티(Observability)를 이용한 자산 및 보안 관리
이글루코퍼레이션 연구개발본부 조호영 수석부장

이글루코퍼레이션 연구개발본부 조호영 수석부장
이글루코퍼레이션 연구개발본부 조호영 수석부장

[아이티데일리] 급격한 정보통신기술(ICT)의 발전은 우리로 하여금 매우 복잡한 IT 환경을 직면하게 했다. 이에 보안업계는 변화무쌍한 세상 속에서도 변함없이 안전한 인프라 환경을 유지하고 가용성 좋은 서비스를 제공하기 위해, 이를 위협하는 예측 불가능한 변화와 다양한 공격자들 사이의 팽팽한 줄다리기를 지속해왔다. 그러나 전 세계를 강타한 코로나19(COVID-19)는 다시 한번 IT 인프라 환경에 큰 지각 변동을 일으켰다.

장기화된 코로나 팬데믹은 사회 전반의 디지털 전환 속도를 높였다. 그리고 이러한 배경에서 클라우드 컴퓨팅(Cloud Computing) 기술이 각광받게 됐다. 최근의 클라우드 기술은 가상화 기술을 기반으로 한 대의 물리적인 서버에 가상머신(VM)을 구현해 여러 대의 운영체제, 서비스 등을 실행하고 데스크톱, 스토리지, 서버를 구축할 수 있다. 산업을 불문한 다수의 기업들은 온프레미스(On-Premise) 서버 구성에서 클라우드 환경으로의 전환을 꾀하고 있으며, 국내에서는 공공기관을 중심으로 한 클라우드 도입이 가속화되는 추세다.

2021년 4분기 클라우드 시장 점유율 / 출처: 카날리스(Canalys)
2021년 4분기 클라우드 시장 점유율 / 출처: 카날리스(Canalys)

이는 다시 말해 우리가 외부 위협으로부터 지키고 관리해야 하는 대상과 그 영역이 달라지고 있다는 걸 의미한다. 과거 온프레미스 구성의 독립된 형태로서 존재했던 다수의 서비스 서버들이 클라우드로 이전되면서, 이제는 단순히 경계선 방어를 통해 보호하기 어려워졌다. 또한 이러한 흐름에 따라 각 자산이 가지고 가는 범위와 인프라 운영 환경 내 위치에 대한 기준점 역시 변화하고 있다.

클라우드 환경 속 보안 위협의 자산 제공 범위 / 출처: 스렛스택(Threatstack)
클라우드 환경 속 보안 위협의 자산 제공 범위 / 출처: 스렛스택(Threatstack)

안전한 클라우드 환경을 구축 및 운영하기 위해서는 클라우드 인프라 내부 상황을 정확히, 또 원활히 감지하고 분석할 수 있어야 한다. 더욱이 변화하는 시대의 요구에 맞는 시스템을 기획하고 개발해야 하는 필자의 입장에서는, 새로운 인프라 환경의 위협 표면을 명확히 인지하고 이에 상응하는 자산 및 보안 관리 전략을 새로이 수립해야만 한다.


IT 인프라 확장에 따른 보안 대상 자산 범위 및 분류 체계 재정립 필요

클라우드 전환 흐름은 IT 자산 관리 주도권에도 큰 변화를 야기했다. 과거 서비스 및 솔루션을 제공하는 기업에 따라 구성됐던 독립적인 관리 영역이 이제는 인프라 운영 환경의 구성 및 방식에 따라 달라지고 있다. 이는 곧 보안 관리 대상이 기존 △컴퓨터 하드웨어나 소프트웨어의 결함 및 설계상의 허점으로 인해 사용자에게 허용된 권한 이상의 동작 △허용된 범위 이상의 정보 열람, 변조, 유출을 가능하게 하는 취약점 등을 넘어 주요한 자산의 대상 및 범위에 대한 기준을 연결하는 부분까지 확대돼야 한다는 것과 같다.

클라우드 환경에서의 서비스 제공 범위 / 출처: CSA(Cloud Security Alliance)
클라우드 환경에서의 서비스 제공 범위 / 출처: CSA(Cloud Security Alliance)

그렇기에 클라우드 서비스 기업과 사용자 간 보안 책임 범위에 대한 구분을 더욱 명확히 해야 할 필요가 생겼다. 기존에는 호스트 기반의 보안 취약점 분석 및 서비스의 취약한 설정을 로컬 환경 범위에서 직접 담당하고 관리했으며, 물리적으로 명확한 운영 체계의 중요한 파일/디렉토리의 소유자 및 권한 설정에 대한 점검을 수행했었다. 그러나 최근에는 명확히 분리돼 관리됐던 대상의 경계가 모호해지고 이로 인해 보안 관리 범위 또한 흐려지면서, 클라우드 보안 책임 범위에 대한 구분이 더욱 어려워졌다. 이렇듯 불확실성의 경계점에서 갖는 보안 취약점들은, 변화하고 있는 IT 인프라 운영 환경에 발맞춘 자산 분류 체계 및 보안상 책임 범위에 대한 재정립이 무엇보다 시급한 이유다.

통합 인프라 관리를 활용한 보안 위협 분석 구성도 / 출처: 스플렁크(Splunk)
통합 인프라 관리를 활용한 보안 위협 분석 구성도 / 출처: 스플렁크(Splunk)

이는 동시에 보안을 바라보는 대상의 관점을 보다 넓히는 계기로 작용할 것이라 판단된다. ‘IT 생태계 속 모든 보안 위협이 정확히 분리된 자산에 대해서만 존재하는 것일까?’에 대한 질문에서 한 발짝 더 나아가, IT 환경이 클라우드로 확장됨에 따라 인프라 관리 또한 새로운 차원의 복잡성을 안겨주게 됐다는 사실을 마주할 필요가 생겼다. 변화와 위험을 감지하기 더욱 어려워진 인프라 환경 속에서 통합적인 관리 자산의 가시성은 더욱 강조될 것으로 보인다.


클라우드 환경 확장 차원에서의 옵저버빌리티

이러한 배경에서, 시스템 모니터링의 새로운 접근 방식으로 옵저버빌리티(Observability)가 부상하고 있다. 옵저버빌리티란 외부 출력만을 이용해 내부 상태를 측정할 수 있는 기능을 가리킨다. 기존 모니터링이 ‘무엇이 언제 일어났는가’에 초점을 둔다면, 옵저버빌리티는 여기서 한 발짝 더 나아가 ‘왜 어떻게 일어났는가’까지 파악할 수 있도록 도와준다. 즉 예상하지 못했던 숨겨진 이슈까지 발견해 주는 게 모니터링과 가장 큰 차별점이며, 이러한 기능의 옵저버빌리티는 복잡한 IT 인프라에 대한 포괄적이고 통합된 가시성을 제공해 주고 동시에 심층적인 분석까지 가능하게 한다.

옵저버빌리티는 로그(Log), 성능지표(Metrics), 이벤트(Event), 추적(Traces) 등의 여러 관점에서 인프라를 파악하고 분석하게 되는데, 이를 위해서는 곳곳에 흩어진 서로 다른 정보들을 단순 데이터가 아닌 자산의 형태로 한 곳에 모으는 작업이 선행돼야 한다. 그리고 이를 바탕으로 그 정보들의 맥락과 연관성을 파악할 수 있어야 하며, 이렇게 시스템을 한눈에 파악할 수 있는 능력을 갖췄을 때, 그제야 비로소 자산에 대한 가시성을 확보했다고 할 수 있다.

옵저버빌리티를 구축한다면 클라우드 환경에서의 자산 및 취약점 관리 또한 한층 효과적으로 수행 가능해진다. 우선 우리가 운영하고 있는 자산 대상 및 범위를 정확하게 파악할 수 있기에 관리가 수월해지고, 이후 위협탐지시스템(SIEM)을 활용한 위협에 대한 정확도 평가 및 중요도 분류 작업도 수행할 수 있게 된다. 서비스 가용성, 사용 빈도, 편의성, 기존 공격에 유효성 이력 등 여러 요소를 종합적으로 평가해 대응 우선순위와 방법에 관한 선제적인 전략 수립이 가능해져 효과적인 위협 탐지 프로세스를 정립할 수 있다. 더 나아가 발생하는 여러 보안 위협에 대한 유효 경보에 적합한 자산을 확인하고, 해당 유효 경보에 실효성을 높이고, 이를 통해 분석 시점에서의 귀중한 시간을 절약함으로써 효과적인 보안관제를 수행할 수 있다.

클라우드 환경에서의 서비스 제공 범위 / 출처: 가트너(Gartner)
클라우드 환경에서의 서비스 제공 범위 / 출처: 가트너(Gartner)

사실 옵저버빌리티가 갖는 중요한 가치를 제대로 파악하기 위해서는, 단순히 복잡해진 오늘날의 IT 인프라 환경을 넘어 그간 IT 시스템이 어떻게 변화했는지에 대한 흐름을 이해하는 것이 좋다. 최근 10년간 IT 서비스는 매우 빠르고 크게 확장돼 왔으며, 이러한 규모는 고정된 형태의 구성 환경으로는 감당할 수 없는 수준에 이르렀다. 결론적으로는 처리해야 하는 트랜잭션(Transaction), 사용자 수가 과거와 비교가 안 될 정도로 증가한 환경에서 문제없이 그 규모를 감당하기 위해서 새로운 시스템을 도입해야만 했고, 이때 등장한 게 바로 클라우드다. 클라우드는 컴퓨팅 리소스를 필요에 따라 사용할 만큼만 할당받아 쓸 수 있는 방식으로, 달라지는 수요에 유연하게 대응할 수 있는 구조를 가졌기 때문이다.

멀티 클라우드 환경에서의 서비스 자산 범위 / 출처: Thomas Suedbroecker (https://suedbroecker.net)
멀티 클라우드 환경에서의 서비스 자산 범위 / 출처: Thomas Suedbroecker (https://suedbroecker.net)

그러나 기존 온프레미스 시스템들을 클라우드로 이전하는 과정에서 또 한 번 난관에 부딪히게 됐다. 하나의 큰 애플리케이션, 다시 말해 모놀리식 아키텍처(Monolithic Architecture)를 통째로 클라우드로 전환하는 것이 구조적으로 쉽지 않았던 까닭이다. 보다 수월한 이전을 위해서는 큰 애플리케이션을 작게 분리할 필요가 생겼고, 그렇게 등장한 것이 바로 하나의 시스템을 작은 마이크로 단위로 나눠 개발하는 마이크로서비스 아키텍처(MSA, MicroService Architecture)다. 이렇듯 달라진 환경 속에서 자산의 구성 또한 자연스럽게 변화하게 됐다.

가속화되는 클라우드 전환과 마이크로서비스 아키텍처의 확산으로 훨씬 더 복잡해진 IT 및 개발 환경 내에서 전체 인프라를 확인하는 것은 필수불가결한 요소가 됐고, 이는 동시에 옵저버빌리티가 각광받게 된 이유이기도 하다.


클라우드 인프라 전환 시대에 맞는 보안 관점의 변화

환경도, 자산의 구성도 빠르게 변화하고 있는 지금이지만 기존 레거시 인프라에 맞춰 설계된 보안 솔루션 및 프로세스에는 클라우드 네이티브 아키텍처(Cloud Native Architecture)의 동적이고 고도로 노출된 ‘경계 없는’ 패러다임에 충분히 대처할 수 있는 기능이 없다. 간단히 말해서 기존의 보안 솔루션은 최신 클라우드 환경의 요구 사항을 맞출 수 없다는 말이다. 그러나 더욱 큰 문제는 이러한 점이 클라우드 네이티브 애플리케이션 보안을 위해 해결해야 하는 수많은 과제 중 하나에 불과하다는 사실이다.

기본적으로 클라우드 환경의 서비스를 보호하기 위해서는 IT/운영 보안 책임에 사용되는 개념을 애플리케이션 보안 모델로 마이그레이션(migration)하는 접근 방식이 요구되며, 이러한 구성 요소를 보호하려면 IT 운영에 전적으로 맡기기보다는 애플리케이션을 구축하는 개발자 시점에서부터 전략이 수립돼야 한다.

클라우드 보안에 대한 접근 방식의 변화 / 출처: 스니크(snyk)
클라우드 보안에 대한 접근 방식의 변화 / 출처: 스니크(snyk)

클라우드 환경에서 보호하고 관리해야 하는 대상의 주체를 단순 자산이 아닌 클라우드 환경을 구축하고 운영하는 팀, 프로세스 및 인프라 모델의 변경 사항으로 확장할 필요가 있다. 따라서 클라우드 인프라 전환 시대 속에서의 자산 및 보안 전략은 클라우드 환경 구성 전체를 아울러야 하며, 개발 시점부터 취약점을 식별하고 관리해 나가야 한다. 접근 방식은 보다 전체적이어야 하며, 보안은 소프트웨어 개발 수명 주기 전반에 걸쳐 구현돼야 한다.

클라우드 환경으로 변화하는 현대화(Modernization)를 거치면서 그와 동시에 참 많은 것들이 함께 달라지고 또 진화하고 있다. 그러나 명심해야 하는 건 비단 클라우드뿐만 아니라 전반적인 IT 인프라 환경 속에서의 자산은, 우리가 살고 있는 천체에 비유하자면 무언가에 의존하며 따라 회전하는 행성이 아닌 중심에 자리하고 있는 항성과도 같은 존재라는 사실이다. 마치 태양계의 태양처럼, 자산 데이터는 지금껏 그래왔듯 앞으로 보안 서비스의 중심에 서서 변화하는 환경에 대응하고 전략 수립의 핵심 역할을 해낼 것이다. 자산(데이터) 중심의 최적화된 전략으로 큰 변화의 바람에도 흔들리지 않는 보안 체계를 구현해나갈 수 있길 바란다.

클라우드 환경 속 자산(데이터)의 위치 / 출처: IBM
클라우드 환경 속 자산(데이터)의 위치 / 출처: IBM

 

저작권자 © 아이티데일리 무단전재 및 재배포 금지