본문 바로가기
Security/SK 쉴더스 루키즈 23기

[취약점 진단 실무] 보안 가이드 업데이트 실습

by seoyamin 2024. 12. 18.

타겟 설정

가이드   2024 클라우드 보안 가이드 (SK 쉴더스)
항목   1.5 Key Pair 접근 관리

 

1.5 Key Pair 접근 관리

분류   계정 관리 중요도   상
항목명   Key Pair 접근 관리
항목 설명 EC2는 키(Key)를 이용한 암호화 기법을 제공합니다. 해당 기법은 퍼블릭/프라이빗 키를 통해 각각 데이터의 암호화 및 해독을 하는 방식으로 여기에 사용되는 키를 ‘Key Pair’ 라고 하며, 해당 암호화 기법을 사용할 시 EC2의 보안성을 향상시킬 수 있으므로 EC2 인스턴스 생성 시 Key Pair 등록을 권장합니다.

또한, Amazon EC2에 사용되는 키는 ‘2048비트 SSH-2 RSA 키’이며, Key Pair는 리전당 최대 5천 개까지 보유할 수 있습니다.
설정 방법   1. AWS Console을 이용한 키 생성 및 등록
  1.1. 키 생성
  1) AWS Console > EC2 > Network & Security > Key Pairs > Create key pair


  2) Key Pair 생성

  3) 생성 후 자동으로 다운로드되는 Key Pair 파일을 쉽게 유추 및 접근할 수 없는 공간에 보관


  1.2. 키 등록
  1) 인스턴스 생성 시 생성한 Key Pair 등록


  2) 인스턴트 생성 완료 시 Key Pair 정상 등록 여부 확인

  2. PuTTY-Gen을 통한 키 생성 및 등록
  2.1. 키 생성
  1) PuTTYGen.exe > Conversions > Import Key


  2) Key passphrase 입력 > Generate > Save public/private key


  3) 생성된 Key Pair 파일을 쉽게 유추 및 접근할 수 없는 공간에 보관


  2.2. 키 등록
  1) AWS Console > EC2 > Network & Security > Key Pairs > Actions > Import key pair


  2) Key Pair 설정 후 Import key pair


  3) 생성한 키가 콘솔에 정상적으로 등록되었는지 확인
진단 기준

  [양호] Key Pair(.pem)를 통해 EC2 인스턴스에 접근할 경우
  [취약] Key Pair(.pem)가 아닌 일반 패스워드로 EC2 인스턴스에 접근할 경우
진단 방법
  1. AWS Console 이용
  1) AWS Console > EC2 > Instances
  2) Key Pair 정상 등록 여부 확인
  2. AWS CLI 이용
  1) ec2 describe-instances 명령어로 인스턴스 목록 조회 [공식문서]
       $ aws ec2 describe-instances

  2) KeyName 속성이 비어있는지 여부를 확인
  3. AWS SDK 이용
  1) Boto3 describe_instances로 인스턴스 목록 조회 [공식문서]
       EC2.Client.describe_instances(**kwargs)

   2) Response로 받은 Instances에 대하여 KeyName 속성이 비어있는지 여부를 확인