<1> AWS 제어와 감사
<2 > IAM
<3> MFA ?
<4> Cloud Trail
<5> 트러스터 어드바이저
<6> 인스턴스 메타데이터 서비스 (imds)
<7> 인스펙터
<1> 제어와 감사
1
제어 - IAM
2
감사 - ColudTrail - API 호출 기록 모두 기록
3
민첩성, 자동화 - CloudFormation
4
침투 테스트는 반드시 AWS Support 에 요청하라.
일부, 사전 승인 없이 침투 테스트가 가능한 AWS서비스가 있으나
침투 테스트는 반드시 AWS support 에 요청하라.
<2 > IAM
1
Access-key 관리는 필수이다.
정기적인 키 교체
미사용 키 삭제
코드에 키 넣지 마세요
2
키가 누출 되면 조치는?
키 상태를 INACTIVE 상태로 변경하라.
지우면 나중에 추적이 불가하다.
CloudTrail을 통해 해당 키가 어디에서 사용되었는지 확인이 가능하다.
3
어플리케이션 내에 키를 넣지 마라.
Git에 올라가는 경우를 차단해야 한다.
개선 ?
역할을 통해 임시키를 부여한다.
역할에 권한을 부여 한다.
역할을 사용하면 내부 STS 와 연동된다.
임시자격증명.
aws sts get-session-token --duration-seconds 900
4
교차 계정 인증 방법 ?
AWS계정을 여러개 운영하는 경우 교차 계정 인증으로 한 계정에서 관리하자.
5
AWS Account id 1111 ------ AWS Account id 222
222에서 Crose Account 로 role 을 생성한다. S3 권한을 준다.
222에서 트러스트 관계(신뢰 관계)를 맺는다. Assume role.
111에서 임시 키를 요청한다. Access-key. Secret-key 요청
6
정책 3가지 ?
AWS관리형 정책
고객 관리형 정책
seo-s3-policy
inline 정책
사용자, s3 에 대해 고유한 정책을 부여 하고자 할때 . 객체의 특성에 따라 부여.
객체가 사라지면 inline policy 도 사라진다.
7
정책 평가
허가/거부 ?
어떤 액션 ?
리소스 = * 모든 자원 ?
최소 권한의 원칙
특정 액션
어떤 리소스로 제한
// 최소 권한의 원칙.
8
IAM Access Analyzer 분석 - 리포트 형태.
결과를 확인하라.
9
IAM > Permission 바운더리를 정할수 있다.
권한의 바운더리를 써서 , 추가 권한을 행사하지 못하도록 할수 있다.
권한 경계
<3> MFA ?
1
MAF는 2차 인증이다.
사용자 인증 + MFA 인증 이다.
2
API도 MFA 사용 가능하다.
3
CLI사용할때마다 MFA를 쓰게 할수도 있다.
하지만 불편해서 실무에서는 해당 내용을 사용하지 않는다.
<4> Cloud Trail
모든 API 호출을 기록한다.
API 호출 , 콘솔 , CLI , API 모두 기록
1
CLI나 API는 고정키를 사용한다.
2
콘솔로 접속했을때 키는 회전키이다. 임시 키다.
키가 노출되더라도 검색시 특정 시간대만 검색이 가능하다.
3
CloudTrail 가이드 ?
S3버킷에서 MFA 삭제를 적용한다.
S3 버전 관리 활성화 한다.
8
스위치롤 테스트 실습
계정의 아래 > 스위치롤 > 상대 계정 + 상대 역할이름 이 맞아야 한다. > 로그인
상대방 계정으로 로그온 됨을 확인함.
<5> 트러스터 어드바이저
보안 점검 기능 제공 한다.
<6> 인스턴스 메타데이터 서비스 (IMDS)
1
IMDS v1
IMDS v2
ssrf 취약성이 있다.
2
EC2 인스턴스 생성할때
메타데이터 접근 가능한가??
버전 2 로 사용하도록 하는게 좋다.
<7> 인스펙터
서버를 점검하는 서비스이다.
EC에서 인스펙터 에이전트 설치해 점검한다.
감사합니다.