ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Theori] 최신 클라우드 서비스 제공업체(CSP) 취약점 동향과 보안 대응(2022 ~ 2023년)
    study/technical study 2024. 1. 21. 18:52

     

    https://blog.theori.io/cloud-service-provider-vulnerabilities-2022-2023-26f60d8fcacb

     

    최신 클라우드 서비스 제공업체 (CSP) 취약점 동향과 보안 대응 (2022 ~ 2023년)

    최근에 발생했던 CSP 취약점들을 통해 (1) 최신 CSP 취약점들의 동향과 특징을 파악하고 이를 통해 클라우드 (2) 보안 연구자, CSP, 그리고 사용자 측면의 흥미로운 인사이트들을 제공하고자 합니다.

    blog.theori.io

     

    위 글을 기반으로 작성했습니다.

     

     

     

     

    개요

    클라우드 시장의 지속적인 확장 및 최신 트렌드에 따른 다수 기업들의 클라우드 서비스 적극 활용

    → 클라우드 보안 이슈 증가

     

     

    관련 보안 이슈

    • 클라우드 서비스에 배포한 애플리케이션이 원인
    • 클라우드 서비스 제공업체(Cloud Service Provider, CSP) 자체에서 발생하는 취약점

     

    CSP 자체의 취약점 → 공급망 공격(Supply Chain Attack) → IT 산업 전반에 영향

     

    2022년~2023년 상반기까지 발생했던 CSP 취약점들을 통해

    • 최신 CSP 취약점들의 동향과 특징을 파악
    • 클라우드 보안 연구자, CSP, 사용자 측면의 흥미로운 인사이트들을 제공

     

     

     

    Cloud Service Provider(CSP)에 대해

    클라우드 컴퓨팅

    21세기를 대표하는 IT 기술 중 하나로 가상 서버, 데이터베이스, 애플리케이션 개발 및 배포, 보안 등 IT 전 분야에 걸친 다양한 서비스를 제공

     

    많은 기업들이 클라우드 기술을 도입하게 되는 이유

    클라우드 서비스가 높은 가용성, 탄력성, 편의성, 비용 절감 효과 등을 제공하기 때문

     

    클라우드 서비스 시장의 급격한 변화

    아마존과 구글, 마이크로소프트, 알리바바 등 거대 IT 기업들이 시장에 뛰어들며 CSP들의 매출 크게 증가

     

    클라우드 기술 및 사용량의 폭발적인 증가와 함께 관련 보안 위협 증가

    • 서비스를 제공하는 CSP들 뿐만 아니라 클라우드와 관련된 취약점을 악용한 공격으로 자산 탈취, 고객 개인정보 유출 등의 큰 피해 발생
    • 취약점이 클라우드 사용자의 인증 토큰 유출과 사용자 전체에 대한 공급망 공격으로 이어질 수 있음
    • CSP의 잘못된 기본 설정 → 해당 서비스 사용자가 대처 불가능

    → 모든 취약점들이 직접적인 보안 사고로 이어지는 것은 아니지만, 클라우드 서비스들이 취약점에 노출되어 있는 게 사실이고, 클라우드 보안 위협과 대책에 대해 재고할 필요성 있음

     

    2022년부터 2023년 상반기까지 공식적으로 알려진 CSP 취약점 사례 조사를 통한 취약점 유형, 심각도, 벤더와 같은 3가지 척도로부터 도출된 통계를 기반으로 비교 분석 진행

    보안 연구자가 CSP 취약점들에 대해 어떤 부분에 초점을 두고 연구를 진행해야 할지, 그리고 CSP는 취약점이 자주 발생하는 부분을 파악하고 좀 더 안전한 설계를 고려할 수 있도록 흥미로운 인사이트들을 공유

     

     

     

     

    2022 ~ 2023년도 최신 CSP 취약점 통계

    취약점 유형

    • CWE(Common Weakness Enumeration : 일반적인 취약점 분류 시스템) 참고
    • CSP의 특징적인 취약점들은 OWASP(Open WorldWide Application Security Project)의 기준 참고

    → 2022년 1월부터 2023년 1분기까지 발견된 CSP 취약점 약 60건을 취약점 유형별로 분류 선정

     

     

    Top 1. 미흡한 설정(misconfiguration)

    클라우드를 이용하여 서비스를 배포하는 기업뿐만 아니라, CSP 경우에도 미흡한 설정으로 인해 초과된 권한 부여나 API 접근 등에 대한 로깅이 제대로 되지 않는 등의 문제 발생

    특히 잘못된 권한 부여 문제가 가장 심각도 높고 발생 빈도 ↑

     

    벤더별 취약점 개수 통계

    사용자 및 매출 기준으로 현재 CSP들 중 Top3에 꼽히는 마이크로소프트 Azure, 아마존 AWS, 구글 GCP가 보고된 취약점 개수 기준으로도 Top3

    → 단편적으로 해당 서비스들이 그만큼 많은 취약점에 노출됨

    → 더 많은 보안 연구자들이 해당 클라우드 서비스들의 보안에 대해 주시하고 있음, 벤더들이 외부의 보안 및 취약점 연구자들에게 좀 더 개방적이며 취약점들에 대해 더 빠르게 대응하고 있다고 볼 수 있음

     

    수집한 취약점 데이터가 2022년부터 2023년 상반기까지의 최신 취약점들로 제한되어 있어 통계의 방향성이 다소 불분명하지만, 벤더 모두에서 미흡한 설정 문제가 가장 주요한 취약점임을 확인 가능

     

    AWS에서 10개 이상의 설정 관련 취약점 발견

    다양한 기능과 설정을 제공하는 클라우드 서비스에서 설정 미흡 취약점이 주를 이룸

    발생한 해당 유형의 취약점들 → 대부분 IAM(Identity and Access Management : CSP에서 특정 클라우드 서비스에 대하여 기본 권한으로 제공) 정책의 기본 설정 문제

    → 미흡한 접근 제어 설정은 CSP의 내부 자산 노출 및 클라우드 서비스 사용자 전체에 대한 공격으로 이어질 수 있으며, AWS 클라우드 서비스에서 이와 같은 IAM 관련 미흡한 설정 문제를 더 주의 깊게 살펴봐야 한다는 점을 의미

     

     

    Top 2. 부적절한 인증 및 인가(improper authentication & authorization)

    클라우드 컴포넌트 및 서비스 API 권한 검증이 미흡하거나 부재하여 인증되지 않은 사용자가 API에 접근 가능하거나, 클라우드 컴포넌트에서 사용되는 서비스 바이너리가 root 권한으로 실행되는 등의 취약점이 이에 해당

    → 인증 및 인가와 관련된 보안 취약점은 일반적인 컴퓨팅 환경뿐 아니라, 다양한 계층 및 격리 구조를 가지는 클라우드 환경에서 더 큰 피해 야기

     

     

    Top 3. 격리 문제(isolation failure)

    심각도 순으로 나열한 가장 높은 3가지 취약점

    • 미흡한 설정 문제나 부적절한 인증 및 인가는 여러 심각도에 걸쳐 고루 발생
    • 격리 문제는 취약점의 위험도와 파급력이 높은 Critical, High에 주로 분포

     

    미흡한 격리 문제 → 단순히 하나의 컴포넌트, 인스턴스에서 발생한 취약점을 공급망 공격과 같은 다수의 이용자에게 심각한 영향을 미칠 수 있는 공격으로 변모

     

    이외 클라우드 서비스는 3rd party 컴포넌트를 CSP에서 인스턴스나 애플리케이션 형태로 사용할 수 있도록 제공

    3rd party 컴포넌트 취약점 → CSP의 공격 표면 증가

    XSS(Cross Site Scripting), SSRF(Server Side Request Forgery) 등 일반적인 온프레미스 서버에서도 발생하는 취약점이 CSP 콘솔과 같은 곳에서 발생

     

     

     

     

    CSP 특징적인 취약점 발생 배경

    CSP에서는 일반적인 온프레미스 서버에서 발생하는 취약점뿐만 아니라 CSP에서만 특징적으로 발생하는 취약점을 확인 가능

     

    심각도 및 발생 비율

    CSP의 특징적인 취약점 > 일반적인 취약점

     

    아래에서 CSP에서 유독 자주 발생하는 취약점 유형이 CSP의 어떤 특징 때문인지와 CSP 벤더들의 대응 방안 소개

     

     

    1. 기본으로 제공되는 설정

    발생 가능한 취약점

    미흡한 설정 문제(misconfiguration)

    부적절한 인증 및 인가(improper authentication & authorization)

     

    CSP는 클라우드라는 특성상 온프레미스 서버와 달리 인프라 구축에 필요한 이용자의 노동을 최소화하고 수천 또는 수백만의 이용자에게 동일하게 확장 가능한 컴포넌트를 제공

    → 손쉬운 확장을 위해 설정이 필요한 모든 컴포넌트에 대해 기본 설정 제공(클라우드 이용자 입장에서는 서버 이전을 위해 CSP를 선정할 때에도 기본 설정 제공 수준이 편의성의 척도, CSP 입장에서는 고객의 편의를 위해 기본 설정을 제공), But 기본 설정이 잘못되어 있으면 공격자에게 고객 데이터가 노출되거나 서버가 탈취되는 등 심각한 보안 위험 초래

     

     

    2. 논리적 격리

    발생 가능한 취약점

    격리 문제(isolation failure)

     

    CSP는 본인들이 가진 컴퓨팅 리소스를 고객들에게 인스턴스 형태로 대여해주는 서비스를 제공

    클라우드 환경에서는 온프레미스 환경에 비해 훨씬 많은 고객들의 접근을 상정하기 때문에 고객들이 상호 간 리소스에 접근하거나 데이터를 노출하지 않도록 보호하기 위해 리소스 격리가 필요

    비용 및 편의성을 고려하여 물리적 격리보다는 논리적 격리인 가상화나 네트워크 격리하는 등의 방법 사용

    격리 수준은 인스턴스나 애플리케이션의 상호 작용 빈도, 중요도 등에 따라 달라지지만, 만약 이러한 컴포넌트의 성격에 따른 우회 가능성을 고려하지 않고 격리가 불충분한 수준으로 적용되어 있다면 하나의 인스턴스에 대한 공격을 시작으로 측면 이동(Lateral Movement)을 통해 다른 테넌트, 나아가 CSP 전체를 장악할 만큼의 파급력을 가진 공격에 취약할 수 있음

     

     

    3. 타사 소프트웨어를 사용한 컴포넌트 제공

    발생 가능한 취약점

    타사 소프트웨어 컴포넌트 취약점(third party vulnerability)

     

    클라우드 이용자들은 인프라 이전을 위해 CSP를 선택할 때 본인들이 사용하고 있는 타사 소프트웨어(3rd Party Software)들을 모두 CSP에서 제공하는지, 호환성을 중요한 기준으로 꼽음

    이에 따라 CSP는 다양한 타사 서비스를 인스턴스나 애플리케이션의 형태로 클라우드 서비스로 사용할 수 있도록 제공

    만약 타사 소프트웨어에 취약점이 발생하면 같은 소프트웨어를 클라우드 형태로 지원하는 CSP도 동일한 취약점이 있을 수 있음

    타사 소프트웨어를 클라우드 서비스 형태로 제공하기 위해 CSP에서 자체적으로 구현한 코드에 취약점이 있거나, 타사 소프트웨어 업데이트를 용이하게 하기 위해 구현한 서비스에 취약점이 발견되는 사례도 있음

    → 일반적인 온프레미스 환경과 다르게 클라우드 환경의 특성때문에 추가되는 공격 표면이 생기기 때문에 클라우드 보안 연구의 방향성을 결정하거나 CSP가 취약점 대응시에 클라우드 환경 특성에 기반한 취약점에 좀 더 무게를 둘 필요가 있음

     

     

     

     

    CSP의 클라우드 특성을 고려한 대응 방안

     

    AWS 버그 바운티 프로그램

     

    CSP는 서비스의 보안성, 안전성을 위해 클라우드 이용자들이 서비스의 보안성 증진에 기여할 수 있도록 취약점 연구에 대한 오픈마인드를 가지고 버그바운티를 진행하고 있고, 그 결과 다양한 취약점들이 발견 및 패치될 뿐만 아니라 클라우드 보안에 대한 연구가 활발히 진행중

     

    일반적인 환경에서 발생하는 취약점 뿐만 아니라 위와 같은 클라우드의 특성을 고려한 취약점의 연구와 보완을 위해 클라우드 보안 리서치 그룹과의 파트너쉽을 맺어 연구를 함께하고 있음

     

    클라우드의 특성상 이용자에게 자율성을 부여할수록 CSP의 관리 범위에서 벗어나기 때문에, CSP가 안전한 도구를 제공하기 위해 노력하더라도 이용자의 서비스 설정, 구현에 따라 클라우드 애플리케이션에 취약점이 발생하는 경우가 있음

    → CSP는 더욱 안전한 클라우드 환경을 위해 공동 책임 모델(Shared Responsibility Model, SRM)을 제시하고 있음

     

    공동 책임 모델 : 서비스에 따라 사용자와 제공자가 각각 어떤 책임을 갖는지 나타내는 모델

    클라우드 애플리케이션의 보안 책임은 클라우드 사용자와 제공자 모두에게 있으며, 사용자는 그 도구를 안전하게 사용할 책임이 있음. CSP는 공동 책임 모델을 통해 이용자에게 클라우드 서비스 설정의 자율성을 보장하되, 서비스의 보안성을 유지해야 한다는 책임을 이용자와 같이 부담하고자 함.

    → CSP 뿐 아니라 이용자 측면에서도 클라우드를 사용할 때는 보안적으로 안전한 구성을 영위해야할 필요가 있음

     

     

     

     

    결론

    원문에 나와 있는 것처럼 CSP는 취약점 유형 Top3를 중점적으로 고려해야하며 XSS, SQL Injection, Command Injection 등과 같은 일반적인 취약점도 클라우드 서비스의 특징적인 취약점과 함께 악용되어 더 큰 규모의 보안 문제를 일으킬 수 있으므로 해당 취약점들에 대한 높은 수준의 보안성 검증과 방어 대책 수립이 필요하다. 또한 사용자는 보안성이 뛰어난 CSP를 선정하는 것뿐만 아니라, CSPM(Cloud Security Posture Management) 도구나 서비스 등을 활용하여 클라우드 인프라에 영향을 미칠 수 있는 CSP 취약점을 신속히 파악하고 그로 인한 위협에 적극적으로 대응해야 한다.

    Theori에서 수집한 취약점 이외에도 다양한 취약점이 존재할 수 있으며, 아직까지 공개되지 않았거나 알려지지 않은 공격 벡터가 존재할 수 있다. 따라서 이에 대한 보안 연구가 더욱 활발하게 이뤄져야 한다.

     

     

     

     

    마치며

    클라우드 보안에 대해 기본적인 내용도 잘 몰랐기에 이에 대해 공부하고 싶었는데, 이번 기술스터디로 Theori의 글을 읽고 정리한 것이 나에게 큰 도움이 되었다. 아직도 스스로 부족한 지식이 많다고 생각되어 꾸준히 기술스터디를 하는 것이 중요할 것 같다.

     

Designed by Tistory.