[SK shieldus Rookies 19기] 클라우드 기반 취약점 진단 및 대응 실무 2일차

기록하는짱구·2024년 4월 28일
0

SK Shieldus Rookies 19기

목록 보기
35/43
post-thumbnail

https://news.hada.io/

📌 2024 클라우드 보안 가이드 (AWS, AZURE, GCP)

https://www.skshieldus.com/kor/support/eventDetail.do?idx=501

2. 권한 관리

2.1 인스턴스 서비스 정책 관리

AWS 인스턴스 서비스(EC2, RDS, S3 등)의 리소스 생성 또는 액세스 권한은 권한 정책에 따라 결정됩니다. 계정 관리자는 IAM 자격 증명(즉, 사용자, 그룹, 역할)에 권한 정책을 연결할 수 있으며 적절한 권한을 통한 서비스 관리가 이루어져야 합니다.

EC2

가상 컴퓨팅 환경인 인스턴스를 제공하며 보안 및 네트워크 구성과 스토리지 관리가 가능함

ECS(Elastic Container Service)

컨테이너 애플리케이션을 쉽게 배포, 관리 및 확대할 수 있도록 도와주는 완전 관리형 컨테이너 오케스트레이션 서비스

Cluster에서 도커 컨테이너를 손쉽게 실행, 중지 및 관리 할 수 있게 해주는 컨테이너 관리가 가능

ECR(Elastic Container Registry)

컨테이너 이미지를 저장, 관리 및 배포 할 수 있게 지원하는 관리형 도커 레지스트리 서비스 레지스트리(이미지 레포지토리 생성 후 레포지토리에 이미지 저장), 사용자 권한 토큰(ECR 레지스트리 인증 시 Docker 클라이언트 활용)

레포지토리 정책(레포지토리 및 레포지토리 내 이미지에 대한 액세스 제어) 관리가 가능

EKS(Elastic Kubernetes Service)

Kubernetes 제어 플레인(Control Plane, 제어판)을 설치하고 운영할 필요 없이 AWS에서 Kubernetes를 손쉽게 실행하도록 하는 관리형 서비스입니다.

Kubernetes는 컨테이너화된 애플리케이션의 배포, 조정 및 관리 자동화를 위한 오픈 소스 시스템

EFS(Elastic File System)

AWS 클라우드 서비스와 온프레미스 리소스에서 사용할 수 있는 간단하고 확장 가능하며 탄력적인 완전 관리형 탄력적 NFS(Network File System, 네트워크에 파일을 저장하는 메커니즘) 파일 시스템

RDS(Relational Database Service)

AWS 클라우드에서 관계형 데이터베이스를 더 쉽게 설치, 운영 및 확장할 수 있는 웹 서비스입니다.

산업 표준 관계형 데이터베이스를 위한 경제적이고 크기 조절이 가능한 용량을 제공하고 공통 데이터베이스 관리 작업이 가능

S3

Amazon Simple Storage Service(Amazon S3)는 인터넷용 스토리지입니다. Amazon S3을 사용하면 웹을 통해 언제 어디서든 원하는 양의 데이터를 저장하고 검색할 수 있습니다. 간편하고 직관적인 웹 인터페이스인 AWS Management 콘솔을 사용하여 이러한 작업을 수행할 수 있습니다.

2.2 네트워크 서비스 정책 관리

AWS 네트워크 서비스(VPC, Route 53, Direct Connect 등)의 리소스 생성 또는 액세스 권한은 권한 정책에 따라 결정됩니다. 계정 관리자는 IAM 자격 증명(즉, 사용자, 그룹, 역할)에 권한 정책을 연결할 수 있으며 적절한 권한을 통한 서비스 관리가 이루어져야 합니다.

VPC

사용자가 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있습니다. 이 가상 네트워크는 AWS의 확장 가능한 인프라를
사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 매우 유사합니다.

CloudFront

.html, .css, .js 및 이미지 파일과 같은 정적 및 동적 웹 콘텐츠를 사용자에게 더 빨리 배포하도록 지원하는 웹 서비스

Route 53

가용성과 확장성이 우수한 DNS(도메인 이름 시스템) 웹 서비스입니다. Route 53을 사용하여 세 가지 주요 기능, 즉 도메인
등록, DNS 라우팅, 상태 확인을 조합하여 실행할 수 있는 서비스

API Gateway

규모와 상관없이 REST 및 WebSocket API를 생성, 게시, 유지하고 모니터링 및 보안하기 위한 AWS 서비스

Direct Connect

표준 이더넷 광섬유 케이블을 통해 내부 네트워크를 AWS Direct Connect 위치에 연결할 수 있습니다. 케이블의 한쪽 끝을
사용자의 라우터에 연결하고 다른 쪽 끝을 AWS Direct Connect 라우터에 연결하는 서비스

AppMesh

애플리케이션의 모든 서비스에 대해 일관된 가시성과 네트워크 트래픽 제어를 제공하는 서비스

CloudMap

AWS Cloud Map를 사용하여 Amazon API Gateway에 배포된 API, Amazon EC2 인스턴스, Amazon DynamoDB 테이블, Amazon S3 버킷, Amazon Simple Queue Service(Amazon SQS) 대기열 등과 같은 모든 클라우드 리소스를 등록해 찾을 수 있는 서비스

2.3 기타 서비스 정책 관리

AWS 기타 서비스(CloudWatch, CloudTrail, KMS 등)의 리소스 생성 또는 액세스 권한은 권한 정책에 따라 결정됩니다. 계정 관리자는 IAM 자격 증명(즉, 사용자, 그룹, 역할)에 권한 정책을 연결할 수 있으며 적절한 권한을 통한 서비스 관리가 이루어져야 합니다.

3. 가상 리소스 관리

3.1 보안 그룹 인/아웃바운드 ANY 설정 관리

VPC에서의 보안 그룹은 EC2 인스턴스에 대한 인/아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 합니다. VPC에서 EC2 인스턴스를 시작할 때 최대 5개의 보안 그룹에 인스턴스를 할당할 수 있습니다. 보안 그룹은 서브넷 수준이 아니라 인스턴스 수준에서 작동하므로 VPC에 있는 서브넷의 각 인스턴스를 서로 다른 보안 그룹 세트에 할당할 수 있습니다.

보안 그룹은 인/아웃바운드의 규칙 편집을 통해 특정 소스(출발지)에서의 통신이 가능하도록 유형(네트워크 프로토콜) 및 단일/범위 포트를 설정할 수 있습니다.

3.2 보안 그룹 인/아웃바운드가 잘못 설정된 경우

보안 그룹에 관한 불필요한 허용 정책을 제거해야 한다.

인/아웃바운드의 허용 IP가 0.0.0.0/0인 경우

3.3 네트워크 ACL 인/아웃바운드 트래픽 정책 관리

네트워크 ACL(Access Control List)은 1개 이상의 서브넷 내부와 외부의 트래픽을 제어하기 위한 방화벽 역할
→ 서브넷 단위로 정의

VPC에 사용할 수 있는 보안 기능
→ NACL(서브넷 단위로 적용)과 보안 그룹(인스턴스 단위로 적용)

NACL은 VPC 서브넷 계층에서 동작하며 VPC 서브넷과는 1:1로 대응

정책의 방식은 허용(Allow) 및 거부(deny) 정책(WhiteList or BlackList) 기능으로 Stateless 방식으로 사용
→ Stateless란 들어올 때 적용되는 것과 나갈 때 적용되는 것을 달리 함을 의미

3.4 라우팅 테이블 정책 관리

라우팅 테이블
→ 트래픽이 전달될 위치를 정의

트래픽을 인터넷 게이트웨이 쪽으로 전달 → 퍼블릭 라우팅
트래픽을 로컬 영역으로 전달 → 프라이빗 라우팅(로컬 라우팅)

서브넷 → 하나의 라우팅 테이블에만 연결 가능
라우팅 테이블 → 여러 서브넷에 연결 가능

3.5 인터넷 게이트웨이 연결 관리

인터넷 게이트웨이
→ 외부와 연결이 가능하도록 도와주는 역할
→ VPC 내에 생성된 인스턴스와 인터넷 간 통신이 가능하게 만들어주는 역할

3.6 NAT 게이트웨이 연결 관리

NAT 디바이스
→ NAT 게이트웨이를 통해 프라이빗 서브넷의 인스턴스가 인터넷 쪽으로 나갈 수 있도록 도와주는 역할

트래픽이 인터넷으로 이동하면 소스 IPv4 주소가 NAT 디바이스의 주소로 대체되고, 이와 마찬가지로 응답 트래픽이 해당 인스턴스로 이동하면 NAT 디바이스에서 주소를 해당 인스턴스의 프라이빗 IPv4 주소로 다시 변환

3.7 S3 버킷/객체 접근 관리

객체
→ S3 버킷에 만들어진 파일이나 디렉토리

ACL
→ S3 버킷/객체 권한에 대해 소유자, 모든 사람, 외부 계정으로 나누어 읽기, 쓰기 등의 권한을 설정하고 리스트 생성
→ 모든 사람이나 외부 계정은 내용을 함부로 읽지 못하도록 설정

3.8 RDS 서브넷 가용 영역 관리

서브넷 그룹이란 하나의 IP 네트워크 주소를 지역적으로 나누어 이 하나의 네트워크 IP 주소가 실제로 여러 개의 서로 연결된 지역 네트워크로 사용할 수 있도록 하는 방법

RDS는 외부에서 접근할 수 없는 서브넷, 즉 프라이빗 서브넷에 생성되어야 하는데 서브넷 그룹에 퍼블릭 서브넷이 포함되어 있다면 RDS가 퍼블릭 서브넷에 생성될 수 있으므로 주의

3.10 ELB(Elastic Load Balancing) 연결 관리

Elastic Load Balancing은 둘 이상의 가용 영역에서 EC2 인스턴스, 컨테이너, IP 주소 등 여러 대상에 걸쳐 수신되는 트래픽을 자동으로 분산해주는 서비스

ELB의 종류로 Application Load Balancers, Network Load Balancers, Gateway Load Balancers 및 Classic Load Balancer가 있으며 이 중 애플리케이션을 주로 이용

ALB는 애플리케이션 트래픽 라우팅
NLB는 IP 주소 및 기타 네트워크 정보를 검사해 트래픽을 최적으로 리다이렉션
GLB는 외부로 트래픽 분산 시 사용

ALB는 7계층, NLB는 4계층, GLB는 3계층과 7계층에서 동작

0개의 댓글