카테고리 없음

IMDS v2는

idea9329 2026. 2. 11. 09:03
728x90
반응형

 AWS EC2 인스턴스가 자기 자신에 대한 정보를 더 안전하게 가져오도록 만든 보안 강화 버전의 메타데이터 서비스야.
한마디로 “메타데이터 조회에 인증 절차를 추가한 것”이라고 보면 딱 맞아.


IMDS가 뭐였지?

EC2 안에서 이런 정보들을 가져올 수 있는 내부 API야.

  • 인스턴스 ID
  • 리전 / AZ
  • 보안 그룹
  • IAM Role 자격증명 (매우 중요)

접속 주소는 항상 이거야 👇
http://169.254.169.254


IMDS v1의 문제점

IMDS v1은 아무 인증 없이 GET 요청만 하면 바로 정보가 나옴.

그래서 이런 사고가 가능했어:

  • SSRF 취약점이 있는 웹 앱 →
  • 공격자가 내부에서 메타데이터 호출 →
  • IAM Role 탈취 → AWS 계정 사고

👉 실제로 사고 많이 났음.


IMDS v2가 해결한 방식 (핵심)

토큰 기반 + 세션 방식으로 바뀜.

1️⃣ 먼저 토큰을 발급받아야 함

curl -X PUT "http://169.254.169.254/latest/api/token" \
  -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"

2️⃣ 토큰을 헤더에 넣어서 조회

curl -H "X-aws-ec2-metadata-token: <TOKEN>" \
  http://169.254.169.254/latest/meta-data/instance-id

✔ 토큰 없으면 접근 불가


IMDS v2의 보안 포인트

항목IMDS v1IMDS v2

인증 ❌ 없음 ✅ 토큰 필요
SSRF 대응 ❌ 취약 ✅ 강함
Hop 제한 ❌ 없음 ✅ 1-hop 제한
AWS 권장 ✅ 기본 권장

👉 컨테이너 / 프록시 / 웹앱 환경에서 특히 중요


AWS 권장 설정 (실무 기준)

AWS는 이제 사실상 이걸 기본값으로 밀고 있어.

  • IMDSv2 only
  • IMDSv1 비활성화
  • hop limit = 1

Amazon EC2 기준으로 보면
보안 감사 / 금융 / 결제 시스템에서는 거의 필수야.


언제 꼭 체크해야 하냐면

  • EC2에서 IAM Role 쓰고 있을 때
  • 웹 서버 / API 서버 (SSRF 가능성 있음)
  • EKS worker node
  • 금융·결제·개인정보 처리 시스템

한 줄 요약

IMDS v2 = “EC2 메타데이터에 토큰 인증을 붙여서 SSRF·권한 탈취를 막는 보안 강화 버전”

728x90
반응형