인스턴스 메타데이터는 실행 중인 인스턴스를 구성 또는 관리하는 데 사용될 수 있는 인스턴스 관련 데이터이다.
메타데이터는 인스턴스의 ID, 보안그룹, 호스트 이름, OS 등 정보를 말한다.
IMDS의 버전은 2가지가 존재하는데 현재 인스턴스는 어떤 버전인지 확인해보자.
aws ec2 describe-instances --region <region> --instance-id <instance-id> --query "Reservations[0].Instances[0].MetadataOptions"
어떤 버전이 출력되는가? 2023년 이후에는 Default로 IMDS 2로 설정되어 생성된다는 걸로 알고있다.
근데 IMDS v1의 인스턴스는 어떤 문제가 있을까?
내가 이 글을 작성하는 이유도 IMDS v1의 초점을 맞추었다.
IMDS v1의 인스턴스의 경우에는 Metadata 조회는 별도의 IAM Role 없이도 AWS EC2라면 모두 조회가 가능하다는 특징이 있다.
그럼 어떤 문제가 발생할 수 있을까?

1. 만약 Userdata 중요 정보를 저장하고 있다면? > 조회가 가능하다.
2. 인스턴스에 부여한 권한을 통해서 자격증명을 발급받아 해당 권한을 막무가내로 사용이 가능한가? > 가능하다.
3. Version1의 경우 SSRF(Server Side Request Forgery) 공격에 취약하다.
그럼 Version 2는 무엇이 달라졌을까?기존 Version 1의 경우에는 그냥 메타데이터를 손쉽게 요청 및 답변을 받을 수 있는 경로가 존재한다면,Version 2의 경우 Put 요청을 통해 발급받은 Token을 통해서만 접근이 가능하다는 큰 보안적 장점이 존재한다.
즉, 중요도가 높아지는 서버일수록 IMDSv2를 적용하는 것을 권고한다.
'AWS > EC2(Elastic Compute Cloud)' 카테고리의 다른 글
| 6. Amazon EC2 Autoscaling Group은 무엇인가? (0) | 2024.01.19 |
|---|---|
| 4. Userdata 뭐야? (0) | 2024.01.12 |
| 3. Instance LifeCycle (0) | 2024.01.12 |
| 2. EC2 Instance 구성요소 (0) | 2024.01.11 |
| 1. Amazon EC2 무엇인가? (2) | 2024.01.11 |