★ 이 책에서 다루는 내용 ★
■ 자주 사용하며, 외부에 공개된 AWS 서비스 소개 및 침투 테스트 수행
■ 인프라에서 결함, 취약점, 허점 등을 자체 감사 수행하는 방법
■ 일부 권한만 획득한 AWS 계정을 통한 수평 및 상향 이동 절차
■ 일부 권한만 획득한 AWS 계정의 지속성 및 잠입 상태 유지
■ 실전 방식으로 침투 테스팅 숙달
■ 자동화 도구를 활용한 AWS 인프라 보안 상태의 지속적인 평가 및 개선
★ 이 책의 대상 독자 ★
클라우드 환경에 침투해 취약한 곳을 찾고 보완하는 데 흥미를 가진 보안 분석가나 침투 테스터에게 적합하다. 침투 테스팅과 보안에 관한 기본적인 이해가 필요하다.
★ 이 책의 구성 ★
1장, ‘AWS에 침투 환경 구성’에서는 AWS에서 칼리 머신과 동일한 네트워크에 취약한 리눅스 가상머신과 윈도우 가상머신 환경을 구성하는 것을 집중적으로 설명한다.
2장, ‘칼리 침투 테스트 머신을 클라우드에 구성’에서는 아마존 EC2 인스턴스를 생성해 칼리 리눅스 아마존 머신 이미지(AMI)를 설치하고, 해당 호스트로 원격 접근을 설정하는 다양한 방법을 집중적으로 살펴본다.
3장, ‘칼리 리눅스를 활용한 클라우드 공격’에서는 취약점 스캐닝, 메타스플로잇을 활용한 취약점 공격, 리버스 셸 획득과 기타 공격 기법을 설명한다. 이 환경은 초보 침투 테스터들이 클라우드 환경을 연습할 수 있는 상황을 시뮬레이션해준다.
4장, ‘첫 EC2 인스턴스 구성’에서는 EC2 인스턴스의 크기, 다양한 종류의 인스턴스와 활용 목적, AMI와 커스텀 AMI 생성, 여러 종류의 스토리지, 초당 입출력 수행의 개념(IOPS), 블록 스토리지, 보안 정책, 가상 사설 클라우드(VPC) 설정을 설명한다.
5장, ‘칼리 리눅스를 활용한 EC2 인스턴스 침투 테스트’에서는 EC2 인스턴스를 공격하는 방법을 집중적으로 살펴본다.
6장, ‘블록 스토리지와 스냅샷 - 삭제된 데이터 복구’에서는 AWS가 제공하는 여러 종류의 저장 옵션을 소개하고 3장의 내용을 확장한다.
7장, ‘정찰 - 취약한 S3 버킷 탐색’에서는 AWS S3 버킷의 개념과 사용 목적, 설치와 접근법을 살펴본다.
8장, ‘재미와 수익을 얻을 수 있는 공개된 S3 버킷 공격’에서는 취약한 S3 버킷을 공격해 웹 애플리케이션에 의해 로드된 자바스크립트 파일을 찾아내고, 이를 백도어로 활용해 영구적으로 사용자 계정을 탈취하는 과정을 설명한다.
9장, ‘AWS의 ID 액세스 관리’에서는 AWS의 다양한 계층의 서비스 접근 관리와 사용자 신원 관리에 사용되는, AWS의 가장 중요한 개념 중 하나를 집중적으로 설명한다.
10장, ‘탈취한 키, Boto3, Pacu를 활용한 AWS 계정의 권한 상승’에서는 AWS 환경에서 Boto3 파이썬 라이브러리와 Pacu framework, AWS 키를 사용해 수행할 수 있는 다양한 공격을 설명한다. 접근 유효성 열거, ID 정보, 전체 계정 정보, S3 버킷 및 EC2 인스턴스와 관련된 메타데이터를 추출하는 과정을 알아본다. 앞서 소개한 일부 과정을 자동화할 수 있는 방법도 다룬다. 마지막으로 사용자 및 그룹에 관해 관리자 역할을 변경하고 설정하는 방법도 설명한다.
11장, ‘Boto3와 Pacu를 사용해 AWS 지속성 유지하기’에서는 AWS 침투 테스트의 필수 요소인 권한 열거와 권한 상승을 설명한다.
12장, ‘AWS Lambda 보안 및 침투 테스팅’에서는 취약한 Lambda 애플리케이션 생성과 코드 샌드박스 내에서의 실행을 집중적으로 다룬다. 환경 구성이 완료된 이후, 연결된 응용 서비스 간의 피벗(pivot), Lambda 샌드박스 내에서의 코드 실행 획득하기, 단기간의 지속성 확보 등을 집중해 살펴본다. 현장감 있는 침투 테스트를 시뮬레이션하기 위해 실제로 동작하는 Lambda 애플리케이션의 공격 과정도 실었다.
13장, ‘AWS RDS 침투 테스팅과 보안’에서는 관계형 데이터베이스(RDS) 샘플 인스턴스를 구성하는 과정과 워드프레스 인스턴스의 안전하거나 안전하지 않은 연결 방법을 집중적으로 살펴본다.
14장, ‘기타 서비스 공략’에서는 상대적으로 흔치 않은 AWS API 공격을 설명한다. Route53, SES, CloudFormation, Key Management Service(KMS)에서 가능한 공격과 잘못된 설정을 살펴본다.
15장, ‘CloudTrail 침투 테스트’에서는 AWS 환경에서 가장 상세한 정보를 저장하고 있는 것 중 하나인 CloudTrail을 다룬다. 내부 운영과 관련된 다양한 AWS 서비스, 가상 머신, 사용자 그리고 기타 유용한 정보를 대량으로 저장하는 CloudTrail은 공격자에게는 보물 창고가 될 수 있다.
16장, ‘GuardDuty’에서는 AWS 전용 침입 탐지 시스템인 GuardDuty를 소개한다. GuardDuty의 경고 기능과 15장에서 소개한 CloudTrail을 사용하는 방식을 설명한다. 경고 기능과 모니터링 기능을 다룬 후, 공격자 입장에서 GuardDuty의 모니터링 기능을 우회하는 방법을 살펴본다.
17장, ‘Scout Suite를 활용한 AWS 보안 감사’에서는 AWS 환경 내에서 감사를 수행해 결과를 분석하고, 웹 브라우저에서 볼 수 있도록 보고해주는 자동화 도구인 Scout Suite를 소개한다. 또한 AWS 계정과 정책 변경도 살펴본다.
18장, ‘AWS 침투 테스트에 Pacu 사용하기’에서는 AWS 공격 프레임워크인 Pacu에 관해 앞서 설명한 개념까지 통합해 전체 기능을 알아본다.
19장, ‘종합 - 실전 AWS 침투 테스트’에서는 앞서 배운 다양한 개념을 활용해 권한 열거를 시작으로 권한 상승, 계정의 백도어, EC2 인스턴스 장악, 데이터 추출까지 실제 AWS 침투 테스트 과정을 살펴본다.