Bespin Global 보안 웨비나 정리 노트
클라우드 보안 소개
클라우드 보안 위협 및 취약점
베스핀글로벌 '클라우드 도입의 현주소' 설문조사(2019)에 따르면 47% 가량이 보안이 우려된다고 답변했다. CSA에서 조사한 '클라우드 보안 복잡성: 하이브리드 및 멀티 클라우드 환경의 보안 관리 당면 과제' 보고서(2019)에서도 '보안 고려' 항목이 81%로 가장 높은 우선순위를 보였다.
보안 위협 사례 (1)
- Capital One 신용카드 1억 600만 건 개인정보 데이터 유출 사건
- Open Source WAF(ModSecurity)설정 오류를 이용한 SSRF(ServerSide Request Forgery)취약점을 이용한 공격
- 깃허브에 고객 정보 일부가 공유된 사실을 고객이 인지하여 신고
보안 위협 사례 (2)
- 테슬라 클라우드 서버 해킹
- 쿠버네티스 콘솔 노출
- RedRock CSI 연구팀 발견(AWS 쿠버네티스 포드 한 개에서 엑세스 자격 노출)
- 원격 측정 및 민감함 데이터가 담긴 웹 스토리지 서비스 역시 노출
- 암호화폐 채굴용으로 악용
클라우드 서비스 주요 보안 위협
1) 클라우드 보안 문제
- 가상화 문제
- VM 탈출, 호핑, 이미지 변조, 하이퍼바이저 기반 루트킷
- 중복된 신뢰 경계
- Multi-tenancy로 인한 보안 경계의 중첩, VM 내부 공격
- 안전하지 않은 API
2) 기존 보안 문제
- 네트워크 침입
- 서비스 공격
- 권한 탈취
- 과부하 공격
- 구현 오류
클라우드 서비스 주요 보안 위협 및 내용 요약
출처: 클라우드 보안의 핵심 이슈와 대응책, SPRI
-
가상화 취약점
- 악성 코드 및 서비스 가용성 침해
- 호스트OS, 게스트 OS 간 악성코드 감염
- 하이퍼바이저 감염 시 게스트 OS로 확산
- 악성 코드 및 서비스 가용성 침해
-
정보 위탁 및 접속 단말 다양성
- 소유와 관리 분리, 정보 유출 위협
- 내부자에 의한 정보 유출
- 비 인증 사용자의 접근 (해커 등)
- 단말기 분실, 보안성이 취약한 단말기에 의한 정보 유출
- 소유와 관리 분리, 정보 유출 위협
-
자원 공유 및 집중화
- 서비스 장애
- 서비스 장애의 원인을 빠르게 파악하기 어려움
- 이용자에 의한 복구 및 패치 어려움
- 중앙 시스템 위치 노출 시 DDos 공격 대상이 되기 쉬움
- 서비스 장애
-
분산 처리 환경
- 보안 적용 어려움
- 자원 공유와 가상머신 동적 재배치로 인증/접근 제어 복잡도 상승
- 분산 컴퓨팅 시스템에 일괄적인 인증/접근 제어 적용이 어려움
- 보안 적용 어려움
-
법규 및 규제의 문제
- 정보 유출 및 손실 시 책임 소재 불분명
- 해외 서버 사용시 국내법 적용 어려움
- 자원 공유에 따라 감사 증적이 어려움
- 클라우드 점검을 위한 보안 점검 및 규제 항목 부재
책임 공유 모델 (Shared Responsibility Model)
모든 CSP는 고객과 공동 책임을 명시한다.
- 2020년까지 클라우드에서 발생하는 보안사고의 95%가 고객(사용자)의 잘못 때문에 발생할 것(Gartner)
- On-Promise와 Multi-Cloud 환경의 보안 통합 관리
- Comprehensive한 Security Governance/Process/Tool이 필요
클라우드 서비스 계층별 보안 (In-Depth Security)
원의 가장 안쪽부터 바깥쪽까지 순서대로
1) 데이터 보안 (KSM, HSM)
- 논리적 접근 제어
- 사용자 인증
- 데이터 암호화
2) 시스템 보안 (AMI, Role, IAM)
- 안전한 AMI 제공
- OS/APP 패치 관리
- EC2 Role 제어
- 역할별 접근 제어 (IAM)
3) 네트워크 보안 (SG NACL, WAF, Shield)
- 보안 그룹
- VPC Network ACL
- 웹 방화벽 (WAF)
- 중계(Bastion) 서버
- 데이터 전송 암호화
4) 물리적 보안 (AWS 컴플라이언스 프로그램, ISO 인증)
클라우드 도입 보안
AWS 클라우드 보안 디자인 원칙 (예시)
- 강력한 신원 기반 구현
- 최소한의 권한 원칙을 구현하고 상호 작용에 대한 권한을 부여해 직무 분리
- 추적 로그 설정
- 모든 변경 사항과 작업 실시간 모니터링 로깅 및 감사하고 자동 응답 및 조치
- 모든 계층 보안 적용
- 인프라 경계에서 보안 뿐만 아니라 모든 계층(Edge, VPC, ELB, OS 및 애플리케이션) 보안 적용 및 제어
- 보안 모범 사례 자동 적용
- 최적화된 이미지 사용하고 인프라 버전 관리된 템플릿을 통해 정의
- 전송 중 유효 시 데이터 보호
- 민감도 수준으로 데이터를 분류, 필요시 선택적 암호화, 토큰화 및 액세스 제어
- 사람의 실수 미연에 방지
- 사람의 실수 최소화하기 위해 데이터를 직접 액세스 또는 수동 처리 최소화
- 보안 이벤트 대비
- 사고 대응 시뮬레이션을 실행하고 자동화된 도구를 사용해 탐지, 조사 및 복구 속도 향상
컨테이너 보안, 5가지 리스크
컨테이너 기술 아키텍처의 전체 라이프사이클
Tier | - | Phase | |
---|---|---|---|
T1 | 개발자 시스템 이미지를 생성하여 테스트 및 인증 요청 |
P1 | 이미지 생성, 테스트 및 인증 |
T2 | 테스트 및 인증 시스템 이미지 내용 확인, 검증, 서명 및 레지스트리 전송 |
||
T3 | 레지스트리 시스템 이미지 저장 및 Orchestrator에 요청해 이미지 배포 |
P2 | 이미지 저장 및 검색 |
T4 | 이미지를 컨테이너로 변환 후 호스트(Node)에 배포 | ||
P3 | 컨테이너 배포 및 관리 | ||
T5 | Orchestrator의 지시에 따라 컨테니어의 실행 및 중지 |
5가지 리스크
-
Registry Risk(T2 > T3)
저장소의 접근 통제 미흡
불필요한 권한 부여
안전하지 않은 네트워크 접속 -
Image Risk(T1 ~ T3)
취약 및 검증되지 않은 이미지 (CVE, 악성코드, root 권한 등 )
-
Orchestrator Risk(T4)
사용자와 미 암호화 통신
불완전한 인증 및 권한 -
Orchestrator Risk(T4)
잘못된 오케스트레이터 설정
일관된 접근 정책 및 ID 통합 솔루션의 부재 -
Container Risk, Host OS Risk(T5)
제한되지 않은 컨테이너 접근 행위
컨테이너 트래픽 및 행위에 대한 가시성 부족
탐지하지 못한 컨테이너 변경 및 실행
부적절한 컨테이너 권한 관리
컨테이너 내 중요 데이터 저장
운영 중인 컨테이너 취약점 미 점검
호스트 OS 취약점 미 점검
컨테이너 보안 해결 (by Bespin)
1-1 CI 파이프라인 통한 이미지 취약성 분석
Jenkins Plugin, Prisma Cloud
- 이미지를 생성하고 push하는 단계에서 Image를 스캔하고 분석함
1-2 런타임 컨테이너 이미지 취약성 분석 및 차단
Prisma Cloud
2-1 Private Docker Registry 운영
Harbor(CNCF Graduated Project, 2020 June)를 사용해 이미지 관리
2-2 런타임 컨테이너 레지스트리 이미지 취약성 분석
Prisma Cloud
3-1 CD 파이프라인을 통한 컨테이너 배포
CI/CD 파이프라인에서 배포 승인 단계를 두고 관리
(Start- Request Deploy - Checkout - Deploy DEV - Proceed STAGE - Deploy STAGE - Proceed PROD - Deploy PROD - End)
3-2 사용자 권한, 접근 통제 GitOps 적용
쿠버네티스 RBAC 관리, 테넌트 별 접근 통제(네트워크 폴리시, 파드 시큐리티 컨텍스트) 등은 GitOps 방식 운영
ArgoCD(CNCF Incubating Project): 모든 감사 기록을 Git 커밋 히스토리를 통해 확인 가능
4-1 컨테이너 구성 승인 프로세스
Prisma Cloud - 사용자 권한, 접근 통제 GitOps 적용
4-2 실시간 공격 탐지 및 차단
Prisma Cloud - 디펜더
4-3 컨테이너 Cloud Native Network Firewall
Prisma Cloud - 동적 네트워크 방화벽(CNNF) 제공
학습을 통해 Ease-West 트래픽 경로 및 포트 확인, 설정을 통해 학습되지 않은 네트워크 트래픽 차단
4-4 컨테이너 Cloud Native Application Firewall
Prisma Cloud - SQL Injection, PHP Admin 정보 조회 차단 등
4-5 호스트 OS 런타임 방어
Prisma Cloud - 호스트 OS 자원에 대해서 컨테이너와 유사한 수준의 런타임 방어 기능 제공 > 레이더 화면
*memo: DevOps ToolChain
Step | OSS |
---|---|
Code | Git, Bitbucket |
Build | Jenkins |
Test | Sonarqube |
Package | Docker, Helm, Nexus, Harbor |
Release | Kubernetes, argo, lamda |
Configure | kops, Terraform |
Monitor | prometheous, Grafana, Sentry |
전체적으로 완전히 이해는 되지 않지만, 클라우드 도입 및 서버리스 도입 시에 고려해야할 보안 문제점과 이를 해결하기 위한 데모 서비스 소개 영상을 보면서 큰 그림 그리기는 좋았던 것 같다.
'📒 Tech Note > Cloud' 카테고리의 다른 글
Tekton이란? 기본 개념 소개 및 튜토리얼 (0) | 2020.09.26 |
---|---|
AWS Lambda(Serverless) 요약 (0) | 2020.07.30 |
OpenShift vs Kuberentes (0) | 2020.07.15 |
OpenShift 개요 (0) | 2020.07.15 |
OpenStack(오픈 스택)이란? (0) | 2020.07.15 |