[보안뉴스 문가용 기자] 애저 컨테이너 인스턴스(Azure Container Instances, ACI) 플랫폼에서 취약점들이 발견됐다. 사용자가 익스플로잇에 성공할 경우 원래의 인스턴스 환경에서 탈출해 컨테이너 인프라(CaaS) 전체를 장악할 수 있게 된다고 한다. 이에 대해 보안 업체 팔로알토 네트웍스(Palo Alto Networks)가 발표했다.
[이미지 = utoimage]
문제의 취약점은 새로운 컨테이너를 생성하고 실행시키는 데 활용되는 요소에서 발견된 것으로, 이미 2년 전부터 존재했던 것으로 분석됐다. 팔로알토의 보안 전문가들은 이 취약점을 익스플로잇 함으로서 애저의 멀티 테넌트 공공 클라우드 환경에서부터 탈출하고 큐버네티스 관리 시스템에까지 도달해 통제권을 가져오는 데 성공했다고 한다.
팔로알토의 클라우드 연구 팀장 아리엘 젤리반스키(Ariel Zelivansky)는 “공공 클라우드 시스템을 완전히 장악하는 해킹 시연에 성공한 것은 이번이 처음”이라며 “클러스터 관리자로까지 권한을 상승시키는 취약점을 익스플로잇 하는 데 성공했기 때문”이라고 밝혔다. “이 권한으로는 큐버네티스 내 모든 부분에 접근하는 게 가능합니다. 클라우드 공격의 성배나 다름없는 취약점이죠.”
팔로알토 네트워크는 이 취약점들에 애저스케이프(Azurescape)라는 이름을 붙였다. 당연한 절차이지만 팔로알토는 이 애저스케이프와 관련된 정보를 MS에 먼저 알렸고, MS는 8월 후반 정도에 이를 패치했다. 그러면서 “아직까지 해당 취약점들에 대한 실질적인 악성 익스플로잇 행위가 발견되지는 않았다”고 발표했다.
팔로알토 측은 WhoC라고 알려진 컨테이너 이미지를 사용해 애저의 인프라를 분석함으로써 애저스케이프 취약점들을 발견할 수 있었다. WhoC는 분석 및 보안 취약점들을 활용해 호스트의 컨테이너 런타임에 대한 정보를 모으는 기능을 가지고 있다. 팔로알토 측에서는 WhoC 컨테이너 이미지를 애저 서비스 내에서 실행시켰고, 그 결과 MS가 RunC의 5년 전 버전을 여전히 사용하고 있다는 것을 발견했다고 한다.
“ACI 내에 깜짝 놀랄 정도로 오래된 버전의 RunC가 존재한다는 걸 알고, 진짜로 깜짝 놀랐습니다. 그리고 이 부분을 찌르고 들어갈 수 있는 개념증명용 컨테이너 이미지를 조금 더 수정한 후 ACI에 적용해 보았습니다. 그 결과 저희의 컨테이너 외부로 탈출할 수 있었고, 호스트에서 루트 권한을 가진 리버스 셸을 실행시킬 수 있었습니다. 이 호스트는 큐버네티스 노드였고요.”
이 단계까지 왔지만 아직 연구원들은 단일 테넌트 영역에 갇혀 있었다. 그래서 연구원들은 다양한 실험 컨테이너들과 도구들을 이용해 실험과 조사를 이어갔다. 그러다가 큐버네티스 클러스터 내에서 취약점이 존재하는 오래된 소프트웨어가 실행되고 있음을 알 수 있었다. 팔로알토 네트워크 팀은 이 취약점들을 활용해(이미 알려진 취약점들이었다) 관리자 권한을 다시 획득할 수 있었다. 클러스터의 관리자 권한이었다.
팔로알토 네트워크는 자사 블로그 포스트를 통해 “공공 클라우드 서비스 이용자가 주어진 환경을 탈출해 같은 클라우드를 사용하는 다른 사용자들의 것으로 지정된 공간 내에서 코드를 실행할 수 있게 되는 것”이라고 이번 연구 결과를 정리하며 “이런 공격을 가능하게 해 주는 취약점이 발견된 건 이번이 처음”이라고 밝혔다. 이는 클라우드의 가장 기본적인 질서를 파괴할 수 있는 취약점이라고 볼 수 있다.
지난 8월 클라우드 보안 전문 업체인 위즈(Wiz.io)는 애저가 코스모스DB(Cosmos DB) 서비스의 사용자들에게 제공하는 기능 중 하나인 주피터 노트북(Jupyter Notebooks)의 취약점을 익스플로잇 하면 다른 코스모스DB 사용자들의 데이터에 접근할 수 있다는 사실을 증명한 바 있다. 하지만 이는 데이터에 대한 접근으로 이어지는 취약점이지 호스트 시스템을 장악하게 해 주는 건 아니었다. “공공 클라우드 생태계에서 일개 테넌트가 호스트를 장악하게 해 주는 취약점은 여태까지 한 번도 발견된 적이 없습니다.”
하지만 이러한 취약점에 대해 클라우드 사용자가 실질적으로 할 수 있는 일은 그리 많지 않다. 취약점을 발견하고 고쳐서 보다 안전한 서비스를 다시 내놓는 건 전적으로 클라우드 서비스 업체의 일이다. 젤리반스키는 “컨테이너 사용자 입장에서는 계속해서 서비스를 사용하면서 정상적인 상태가 어떤 건지를 익혀두어야 한다”고 권고한다. 그래서 평소와 조금이라도 다른 점이 나타나면 금방 알아챌 수 있어야 한다는 것이다. “특별히 클라우드 환경에 침투하는 공격자들은 암호화폐 채굴 멀웨어를 많이 가동시킵니다. 이런 멀웨어들은 찾아내기가 쉬운 편이니 모니터링과 조사를 이어가는 것이 좋습니다.”
3줄 요약
1. MS의 애저 컨테이너에서 테넌트 공간 탈출케 해 주는 취약점 발견됨.
2. 테넌트 공간 탈출해서 호스트를 완전히 장악하는 것도 가능하게 해 주는 취약점.
3. 공공 클라우드의 기본 질서를 파괴하는 취약점이 발견된 건 처음 있는 일.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>