brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Dec 03. 2020

513. 보안-AWS 제어와 감사


<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에서 인스펙터 에이전트 설치해 점검한다.



감사합니다.

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari