[코드 보안③] 컨테이너 보안으로 클라우드 운영 환경 보호
상태바
[코드 보안③] 컨테이너 보안으로 클라우드 운영 환경 보호
  • 김선애 기자
  • 승인 2022.09.22 09:00
  • 댓글 0
이 기사를 공유합니다

취약점 있는 컨테이너 탐지·개선 방안 제안…CNAPP으로 진화
CWPP·CSPM·IaC 보안까지 포함하면서 클라우드 전반 보호 제공

[데이터넷] 클라우드는 ‘코드’로 운영된다. 모든 서비스가 코드로 제작될 뿐 아니라 인프라까지도 코드로 구성된다. 이 환경에서 개발단계부터 운영단계까지 전체 라이프사이클을 아우르는 코드 보안 도구와 컴플라이언스 툴이 필요하며, 코드를 공급받는 수요자 관점에서의 보안도 필수다. 코드 보안 기술 트렌드와 시장 동향을 알아본다. <편집자>

현재 개발 프로젝트에서 클라우드 네이티브를 지원하는 비율이 절반을 넘으며, 2025년까지 95%까지 올라갈 것으로 예상된다. 이는 클라우드 네이티브 환경을 위한 보안이 필요하다는 것을 의미하는데, 451 리서치 조사에 따르면 IT 의사결정권자의 46%가 클라우드 네이티브기술 도입 시 가장 중요하게 해결해야 할 과제로 ‘보안과 컴플라이언스’를 들었다.

기존의 보안 툴로는 클라우드 네이티브 환경을 보호할 수 없는데, 호스트에 에이전트를 설치하는방식의 워크로드 보안 솔루션은 에이전트를 설치할 수 없는 컨테이너 환경을 보호하지 못한다. 취약점이 있는 컨테이너를 적용했을 때 서비스 전체가 영향을 받을 수 있는데, 속도를 중시하는 클라우드 개발 환경에서 컨테이너 취약점 점검은 관심 밖으로 밀려나게 된다.

컨테이너 75%, 심각한 취약점 보유

시스딕 조사에 따르면 75%의 컨테이너가 심각한 취약점을 하나 이상 갖고 있으며, 62%에서 악의적으로 활용될 수 있는 셸이 발견됐고, 76%의 컨테이너는 루트 권한으로 실행돼 특권 권한으로 접근할 수 있게 설계됐다.

레드햇 조사에서는 개발자의 93%가 지난 12개월 동안 쿠버네티스 환경에서 한 건 이상 보안 인시던트를 경험했고, 경우에 따라 수익이나 고객 손실로 이어지기도 했다. 53%는 쿠버네티스 구성 오류로 인한 문제를 겪었으며, 55% 보안 고려 사항으로 인해 애플리케이션 배포를 지연시키거나 늦췄다고 밝혔다.

▲기업이 경험한 컨테이너·쿠버네티스 보안 문제(자료: 레드햇)
▲기업이 경험한 컨테이너·쿠버네티스 보안 문제(자료: 레드햇)

아쿠아 시큐리티는 이러한 컨테이너 보안 문제를 해결하기 위해 CI/CD 파이프라인의 모든 단계에서 컨테이너 이미지를 스캔해 안정적이고 안전한 코드와 아티팩트만 포함되도록 해야 하며, 컨테이너 파일과 구성 요소수를 최소화해 공격표면을 줄여야 한다고 조언했다. 또한 이미지에 포함된 소프트웨어 취약성, 멀웨어, 구성 결함을 식별하고, 컨테이너 구성의 드리프트를 방지해 악의적인 작업을 즉시 식별·차단해야 한다고 조언했다.

IaC 도입률이 높아지면서 IaC 코드 취약점 식별도 중요한 문제로 떠오르고 있다. IaC는 운영 팀과 개발자가 소프트웨어를 수동으로 설치·구성하는 대신 리소스를 자동으로 프로비저닝, 모니터링 할 수 있으며, 수동 프로세스에 의한 오류와 실수를 줄일 수 있고, IaC 구성파일의 버전을 지정해 가시성을 높일 수 있다.

IaC 역시 코드로 운영되기 때문에 취약점 관리가 필수다. IaC 보안 스캐닝 도구는 일반적인 클라우드 네이티브 탬플릿 형식으로 구문을 분석하며, 보안 모범 사례를 기반으로 규칙을 적용하고 환경의 보안을 강화한다.

SW 생명주기 전체 보호하는 데브섹옵스

코드 보안은 개발단계부터 운영단계까지 전체 라이프사이클을 보호해야 한다. 그런데 전통적인 개발환경에서 SAST나 DAST는 애플리케이션 개발 마지막 단계 혹은 배포 전에 구현하다보니 서비스 출시 일정을 맞추기 어렵다. 품질 표준을 지키지 못하거나 제대로 작동하지 않고, 구성오류나 취약점이 있는 상태에서도 부득이하게 서비스를 출시하거나, 출시 계획을 미뤄야 한다.

시프트 레프트는 개발 초기부터 소프트웨어 수명 주기 전체에서 보안을 구현해 데브섹옵스로 전환할 수 있게 한다. AST에 런타임 보호를 더해 실행 중인 애플리케이션에서 이상 행위가 발생하는 것을 모니터링하고 차단하며, 웹방화벽, 클라우드 보안 형상관리 등을 연계해 클라우드 애플리케이션 전체의 보안이 유지될 수 있도록 한다.

클라우드의 속도, 민첩성 요구와 보안의 요구가 충돌하면서 데브섹옵스 전환에 대해 많은 조직이 적극 적인 움직임을 보이고 있다. 레드햇이 데브옵스, 엔지니어링, 보안 전문가를 대상으로 설문조사한 결과, 22%가 데브섹옵스 전환이 진전된 단계에 있다고 답했고 50%는 초기단계에 있다고 답해 3/4의 조직이 데브섹옵스로 개발, 운영과 보안을 통합하고 있는 것으로 나타났다.

클라우드 네이티브 보안 기술로 진화

데브섹옵스 진화를 위해서는 개발환경에서 가장 많이 사용되는 컨테이너의 보안 문제를 해결해야 한다. 그래서 컨테이너 보안 솔루션 전문 기업들이 일제히 클라우드 네이티브 애플리케이션 보호 플랫폼(CNAPP)을 출시하면서 컨테이너부터 워크로드, 규제준수, 런타임 보안까지 해결하고 있다. CNAPP은 컨테이너 보안 취약점을 스캔할 뿐 아니라 쿠버네티스, 서버리스, IaC 보안 기술까지 통합한다.

인섹시큐리티가 국내에 공급하는 시스딕은 오픈소스 보안 스택을 기반으로 구축된 플랫폼에 컨테이너 보안과 CSPM, CIEM을 지원하는 ‘시스딕 시큐어’, 컨테이너 모니터링 애플리케이션 ’시스딕 모니터’를 포함시켰으며, ▲코드 검증으로서의 인프라 ▲취약점 관리 ▲구성 및 권한 관리 & 위협 탐지 ▲사고 대응 등의 기능도 함께 제공한다.

시스딕은 클라우드 네이티브 컴퓨팅 파운데이션 (CNCF) 오픈소스 프로젝트 ‘팔코(Falco)’를 주도한 기업으로, 팔코는 4000만개 이상 도커 허브 풀을 보유하고 있으며, 컨테이너·쿠버네티스 보안위반을 탐지 하고 알림을 생성하는 런타임 정책을 정의할 수 있다. 머신러닝 기반 알고리즘으로 시스템 환경 확장에 맞춰 규칙 관리, 데이터 수집 및 성능을 확장할 수 있으며, 경고 피로를 최소화하고 오탐을 줄이기 위해 규칙을 자동으로 조정한다.

데브섹옵스 워크플로우 5가지 핵심 사항

구성 오류·의심스러운 동작을 즉시 식별하려면 지속적인 클라우드 보안이 필요하다. 사용자 환경에서 실행되는 시스템, 애플리케이션, 서비스를 포함한 클라우드 자산을 자동으로 검색하고 인벤토리를 작성하고, 모든 클라우드 계정, 사용자 및 서비스에서 예기치 않은 변경과 의심스러운 활동을 감지한다.

●취약점 관리: 컨테이너 이미지·호스트 스캔

컨테이너 이미지, 버전 및 빌드 수가 증가하면 사용 중인 소프트웨어와 소프트웨어 업데이트 적용 여부를 제어할 수 없다. CI/CD 파이프라인과 레지스트리에 위험한 이미지 배포 방지를 위한 인라인 스캐닝을 추가하며, 컨테이너 배포 후 이미지에 영향을 미치는 새로운 취약점도 지속적으로 식별한다.

●런타임 위협 탐지 및 대응

최소 권한 원칙에 따라 애플리케이션을 구성하고, 애플리케이션 활동 전체에서 비정상적인 동작과 구성 드리프트를 모니터링 해 런타임 위험을 줄인다. 애플리케이션을 중단하지 않고 공격을 방지할 수 있도록 쿠버네티스 네이티브 컨트롤을 활용하고, CPU와 리소스 사용량을 모니터링해 디도스, 암호화폐 채굴 공격을 차단한다.

●지속적인 컴플라이언스 활동

컨테이너, 호스트, 쿠버네티스, 클라우드 전반에 걸쳐 규정 준수 표준(CIS, SOC2, PCI, NIST 800-53 등)을 충족하도록 규정 준수 검사를 구현하고 지속적으로 모니터링한다. 파일 무결성 모니터링(FIM)으로 중요한 시스템 파일, 디렉토리, 무단변경을 감지하고 런타임 규제준수를 관리한다.

●컨테이너, 쿠버네티스, 클라우드 모니터링 및 문제 해결

컨테이너는 수명이 짧고 역동적이며 지속적으로 이탈한다. 컨테이너가 사라지면 내부의 모든 것이 사라지고 SSH나 로그를 볼 수 없다. 그래서 컨테이너 기반 애플리케이션 동적 특성을 모니터링하는 것은 클라우드 고가용성과 성능에 매우 중요하다.

마이크로서비스 애플리케이션은 여러 인스턴스에 분산될 수 있고, 컨테이너는 멀티 클라우드 인프라에서 이동할 수 있으므로, 쿠버네티스 오케스트레이션 상태를 계속 모니터링 해야 한다.

(자료: 시스딕 ‘2022 클라우드 네이티브 보안 및 사용량 보고서’ 중 일부)


관련기사

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.