AWS - EC2 인증되지 않은 열거

Reading time: 3 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기

EC2 & 관련 서비스

자세한 정보는 이 페이지에서 확인하세요:

AWS - EC2, EBS, ELB, SSM, VPC & VPN Enum

공개 포트

가상 머신의 임의의 포트를 인터넷에 노출하는 것이 가능합니다. 노출된 포트에서 무엇이 실행되는지에 따라 공격자가 이를 악용할 수 있습니다.

SSRF

Cloud SSRF - HackTricks

공개 AMIs & EBS Snapshots

AWS는 누구나 AMIs와 Snapshots를 다운로드할 수 있도록 접근 권한을 부여할 수 있습니다. 이러한 리소스는 자신의 계정에서 매우 쉽게 나열할 수 있습니다:

bash
# Public AMIs
aws ec2 describe-images --executable-users all

## Search AMI by ownerID
aws ec2 describe-images --executable-users all --query 'Images[?contains(ImageLocation, `967541184254/`) == `true`]'

## Search AMI by substr ("shared" in the example)
aws ec2 describe-images --executable-users all --query 'Images[?contains(ImageLocation, `shared`) == `true`]'

# Public EBS snapshots (hard-drive copies)
aws ec2 describe-snapshots --restorable-by-user-ids all
aws ec2 describe-snapshots --restorable-by-user-ids all | jq '.Snapshots[] | select(.OwnerId == "099720109477")'

누구나 복원할 수 있는 스냅샷을 발견하면, 스냅샷을 다운로드하고 탈취하는 방법에 대해서는 AWS - EBS Snapshot Dump를 반드시 확인하세요.

공개 URL 템플릿

bash
# EC2
ec2-{ip-seperated}.compute-1.amazonaws.com
# ELB
http://{user_provided}-{random_id}.{region}.elb.amazonaws.com:80/443
https://{user_provided}-{random_id}.{region}.elb.amazonaws.com

공개 IP를 가진 EC2 인스턴스 열거

bash
aws ec2 describe-instances --query "Reservations[].Instances[?PublicIpAddress!=null].PublicIpAddress" --output text

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기