AWS Pentesting

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

рдореВрд▓ рдЬрд╛рдирдХрд╛рд░реА

AWS рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреЗрдВрдЯреЗрд╕реНрдЯрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, AWS рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдмрд╛рддреЗрдВ рдЬрд╛рдирдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рддрд╛рдХрд┐ рдЖрдк рд╕рдордЭ рд╕рдХреЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдЧрд▓рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреИрд╕реЗ рдЦреЛрдЬреЗрдВ рдФрд░ рдЙрдирдХрд╛ рдХреИрд╕реЗ рд▓рд╛рдн рдЙрдард╛рдПрдВред

рд╕рдВрдЧрдарди рдХреА рдкрджрд╛рдиреБрдХреНрд░рдо, IAM рдФрд░ рдЕрдиреНрдп рдмреБрдирд┐рдпрд╛рджреА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдЬреИрд╕реЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╕рдордЭрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдПрдБ

рд╣рдорд▓реЛрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг:

AWS Pentester/Red Team рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА

AWS рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдСрдбрд┐рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЬрд╛рдирдирд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ: рдХреМрди рд╕реА рд╕реЗрд╡рд╛рдПрдБ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВ, рдХреНрдпрд╛ рдкреНрд░рдХрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдХрд┐рд╕рдХреЗ рдкрд╛рд╕ рдкрд╣реБрдБрдЪ рд╣реИ, рдФрд░ рдЖрдВрддрд░рд┐рдХ AWS рд╕реЗрд╡рд╛рдПрдБ рдФрд░ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдПрдБ рдХреИрд╕реЗ рдЬреБрдбрд╝реА рд╣реБрдИ рд╣реИрдВред

Red Team рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, AWS рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдиреЗ рдХрд╛ рдкрд╣рд▓рд╛ рдХрджрдо рдХреБрдЫ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИред рдпрд╣рд╛рдБ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рджрд┐рдП рдЧрдП рд╣реИрдВ рдХрд┐ рдЖрдк рдРрд╕рд╛ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • github (рдпрд╛ рд╕рдорд╛рди) рдореЗрдВ рд▓реАрдХ - OSINT

  • рд╕рд╛рдорд╛рдЬрд┐рдХ рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ

  • рдкрд╛рд╕рд╡рд░реНрдб рдкреБрди: рдЙрдкрдпреЛрдЧ (рдкрд╛рд╕рд╡рд░реНрдб рд▓реАрдХ)

  • AWS-рд╣реЛрд╕реНрдЯреЗрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпрд╛рдБ

  • рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдЕрдиреБрд░реЛрдз рдзреЛрдЦрд╛рдзрдбрд╝реА рдЬрд┐рд╕рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдПрдВрдбрдкреЙрдЗрдВрдЯ рддрдХ рдкрд╣реБрдБрдЪ рд╣реИ

  • рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рдкрдврд╝реЗрдВ

  • /home/USERNAME/.aws/credentials

  • C:\Users\USERNAME\.aws\credentials

  • 3rd рдкрд╛рд░реНрдЯреА рд╣реИрдХ рдХреА рдЧрдИ

  • рдЖрдВрддрд░рд┐рдХ рдХрд░реНрдордЪрд╛рд░реА

  • Cognito рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕

рдпрд╛ рдЕрдкреНрд░рдорд╛рдгрд┐рдд рд╕реЗрд╡рд╛ рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдХреЗ рдЬреЛ рдкреНрд░рдХрдЯ рдХреА рдЧрдИ рд╣реИ:

рдпрд╛ рдпрджрд┐ рдЖрдк рдПрдХ рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЖрдк рдмрд╕ рдЗрди рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдорд╛рдВрдЧ рд╕рдХрддреЗ рд╣реИрдВ:

рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд┐рд╕рдХреЗ рд╣реИрдВ, рдФрд░ рдЗрдирдХреЗ рдкрд╛рд╕ рдХреНрдпрд╛ рдкрд╣реБрдБрдЪ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

рдмреБрдирд┐рдпрд╛рджреА рдЧрдгрдирд╛

SSRF

рдпрджрд┐ рдЖрдкрдиреЗ AWS рдХреЗ рдЕрдВрджрд░ рдПрдХ рдорд╢реАрди рдореЗрдВ SSRF рдкрд╛рдпрд╛ рд╣реИ, рддреЛ рдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреГрд╖реНрда рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:

Whoami

рдЖрдкрдХреЛ рдЬрд╛рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХреМрди рд╣реИрдВ (рдЖрдк рдХрд┐рд╕ рдЦрд╛рддреЗ рдореЗрдВ рд╣реИрдВ рдФрд░ AWS рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА):

# Easiest way, but might be monitored?
aws sts get-caller-identity
aws iam get-user # This will get your own user

# If you have a Key ID
aws sts get-access-key-info --access-key-id=ASIA1234567890123456

# Get inside error message
aws sns publish --topic-arn arn:aws:sns:us-east-1:*account id*:aaa --message aaa

# From metadata
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"`
curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/dynamic/instance-identity/document

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдХрдВрдкрдирд┐рдпрд╛рдВ canary tokens рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдпрд╣ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ tokens рдЪреБрд░рд╛рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдпрд╣ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдПрдХ token canary token рд╣реИ рдпрд╛ рдирд╣реАрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреГрд╖реНрда рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ.

рд╕рдВрдЧрдарди Enumeration

IAM Enumeration

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реИрдВ рддреЛ AWS рдЦрд╛рддреЗ рдХреЗ рдЕрдВрджрд░ рдкреНрд░рддреНрдпреЗрдХ рдЗрдХрд╛рдИ рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЖрдкрдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдХрд┐ рдЖрдк рдФрд░ рдЕрдиреНрдп рдкрд╣рдЪрд╛рди рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреИрд╕реЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ IAM рдХреЛ enumerate рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЪреБрд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреНрд░реВрдЯрдлреЛрд░реНрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрдЦреНрдпрд╛рдВрдХрди рдФрд░ рдмреНрд░реВрдЯ-рдлреЛрд░реНрд╕рд┐рдВрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ:

рдЕрдм рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ (рдФрд░ рдпрджрд┐ рдЖрдк рдПрдХ рд░реЗрдб рдЯреАрдо рд╣реИрдВ рддреЛ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдк рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓реЗ рд╣реИрдВ)ред рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ рдХрд┐ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдХреМрди рд╕реА рд╕реЗрд╡рд╛рдПрдБ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВред рдЕрдЧрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЖрдк рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕рдВрдЦреНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕рдВрдЦреНрдпрд╛рдВрдХрди, рдкреЛрд╕реНрдЯ-рдПрдХреНрд╕рдкреНрд▓реЙрдЗрдЯреЗрд╢рди рдФрд░ рд╕реНрдерд┐рд░рддрд╛

AWS рдореЗрдВ рд╕реЗрд╡рд╛рдУрдВ рдХреА рдПрдХ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рдорд╛рддреНрд░рд╛ рд╣реИ, рдЕрдЧрд▓реЗ рдкреГрд╖реНрда рдкрд░ рдЖрдкрдХреЛ рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдирдХрд╛рд░реА, рд╕рдВрдЦреНрдпрд╛рдВрдХрди cheatsheets**,** рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рддрд░реАрдХреЗ, рд╕реНрдерд┐рд░рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдиреНрдп рдкреЛрд╕реНрдЯ-рдПрдХреНрд╕рдкреНрд▓реЙрдЗрдЯреЗрд╢рди рддрд░рдХреАрдмреЗрдВ рдорд┐рд▓реЗрдВрдЧреА:

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдкрдХреЛ рд╕рднреА рдХрд╛рд░реНрдп рд╣рд╛рде рд╕реЗ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЗ рдиреАрдЪреЗ рдЖрдк рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЕрдиреБрднрд╛рдЧ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдХрд░рдгред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ рдЪрд░рдг рдореЗрдВ рдЖрдк рдЕрд╕рддреНрдпрд╛рдкрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реЗрд╡рд╛рдПрдБ рдЙрдЬрд╛рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╢реЛрд╖рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╡реГрджреНрдзрд┐

рдпрджрд┐ рдЖрдк рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдкрд░ рдХрдо рд╕реЗ рдХрдо рдЕрдкрдиреА рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЬрд╛рдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЖрдЧреЗ рдХреА рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдХрдо рд╕реЗ рдХрдо рдЙрди рдЕрдиреБрдорддрд┐рдпреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ:

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдЙрдЬрд╛рдЧрд░ рд╕реЗрд╡рд╛рдПрдБ

рдЬрдм рдЖрдк AWS рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рд╕рдВрдЦреНрдпрд╛рдВрдХрди рдХрд░ рд░рд╣реЗ рд╣реЛрдВрдЧреЗ, рддреЛ рдЖрдк рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рддрддреНрд╡ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реБрдП рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ (VM/Containers рдкреЛрд░реНрдЯ, рдбреЗрдЯрд╛рдмреЗрд╕ рдпрд╛ рдХрддрд╛рд░ рд╕реЗрд╡рд╛рдПрдБ, рд╕реНрдиреИрдкрд╢реЙрдЯ рдпрд╛ рдмрдХреЗрдЯ...)ред рдПрдХ pentester/red teamer рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдпрд╣ рдЬрд╛рдВрдЪрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЙрди рдкрд░ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА / рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рдЦреЛрдЬ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЖрдкрдХреЛ AWS рдЦрд╛рддреЗ рдореЗрдВ рдЖрдЧреЗ рдХреА рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕ рдкреБрд╕реНрддрдХ рдореЗрдВ рдЖрдкрдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдорд┐рд▓реЗрдЧреА рдХрд┐ рдЙрдЬрд╛рдЧрд░ AWS рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рдЦреЛрдЬреЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдЬрд╛рдВрдЪреЗрдВред рдЙрдЬрд╛рдЧрд░ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬрдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░реВрдВрдЧрд╛:

рд╕рдВрдЧрдарди рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдирд╛

рд░реВрдЯ/рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рд╕реЗ

рдЬрдм рдкреНрд░рдмрдВрдзрди рдЦрд╛рддрд╛ рд╕рдВрдЧрдарди рдореЗрдВ рдирдП рдЦрд╛рддреЗ рдмрдирд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рдирдпрд╛ рднреВрдорд┐рдХрд╛ рдирдП рдЦрд╛рддреЗ рдореЗрдВ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ OrganizationAccountAccessRole рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рдХреЛ рдирдП рдЦрд╛рддреЗ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП AdministratorAccess рдиреАрддрд┐ рджреА рдЬрд╛рддреА рд╣реИред

рддреЛ, рдПрдХ рдмрдЪреНрдЪреЗ рдХреЗ рдЦрд╛рддреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рдХреЛ рд╕рдордЭреМрддрд╛ рдХрд░рдирд╛ рдФрд░ рдмрдЪреНрдЪреЗ рдХреЗ рдЦрд╛рддреЛрдВ рдХреЗ ID рдФрд░ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рдирд╛рдо (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ OrganizationAccountAccessRole) рдХреЛ рдЦреЛрдЬрдирд╛ рдЬреЛ рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред

  • рдмрдЪреНрдЪреЛрдВ рдХреЗ рдЦрд╛рддреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП AWS рдХрдВрд╕реЛрд▓ рдореЗрдВ рд╕рдВрдЧрдардиреЛрдВ рдХреЗ рдЕрдиреБрднрд╛рдЧ рдкрд░ рдЬрд╛рдПрдБ рдпрд╛ aws organizations list-accounts рдЪрд▓рд╛рдПрдБред

  • рдЖрдк рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рдирд╛рдо рд╕реАрдзреЗ рдирд╣реАрдВ рдЦреЛрдЬ рд╕рдХрддреЗ, рдЗрд╕рд▓рд┐рдП рд╕рднреА рдХрд╕реНрдЯрдо IAM рдиреАрддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдиреАрддрд┐ рдХреЛ рдЦреЛрдЬреЗрдВ рдЬреЛ sts:AssumeRole рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдЦреЛрдЬреЗ рдЧрдП рдмрдЪреНрдЪреЛрдВ рдХреЗ рдЦрд╛рддреЛрдВ рдкрд░ рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред

  • рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рдореЗрдВ рдПрдХ principal рдХреЛ sts:AssumeRole рдЕрдиреБрдорддрд┐ рдХреЗ рд╕рд╛рде рд╕рдордЭреМрддрд╛ рдХрд░реЗрдВ рдЬреЛ рдмрдЪреНрдЪреЛрдВ рдХреЗ рдЦрд╛рддреЛрдВ рдореЗрдВ рднреВрдорд┐рдХрд╛ рдкрд░ рд╣реИ (рдпрд╣рд╛рдВ рддрдХ рдХрд┐ рдпрджрд┐ рдЦрд╛рддрд╛ рдкреНрд░рдмрдВрдзрди рдЦрд╛рддреЗ рд╕реЗ рдХрд┐рд╕реА рдХреЛ рднреА рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд░рд╣рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдмрд╛рд╣рд░реА рдЦрд╛рддрд╛ рд╣реИ, рд╡рд┐рд╢рд┐рд╖реНрдЯ sts:AssumeRole рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ)ред

рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдХрд░рдг

рдкреБрдирдГ рдЦреЛрдЬ

  • aws-recon: рдПрдХ рдорд▓реНрдЯреА-рдереНрд░реЗрдбреЗрдб AWS рд╕реБрд░рдХреНрд╖рд╛-рдХреЗрдВрджреНрд░рд┐рдд рдЗрдиреНрд╡реЗрдВрдЯрд░реА рд╕рдВрдЧреНрд░рд╣ рдЙрдкрдХрд░рдг рдЬреЛ Ruby рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред

# Install
gem install aws_recon

# Recon and get json
AWS_PROFILE=<profile> aws_recon \
--services S3,EC2 \
--regions global,us-east-1,us-east-2 \
--verbose
  • cloudlist: Cloudlist рдПрдХ рдорд▓реНрдЯреА-рдХреНрд▓рд╛рдЙрдб рдЯреВрд▓ рд╣реИ рдЬреЛ рдХреНрд▓рд╛рдЙрдб рдкреНрд░рджрд╛рддрд╛рдУрдВ рд╕реЗ рдПрд╕реЗрдЯреНрд╕ (рд╣реЛрд╕реНрдЯрдиреЗрдо, рдЖрдИрдкреА рдкрддреЗ) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред

  • cloudmapper: CloudMapper рдЖрдкрдХреЛ рдЖрдкрдХреЗ Amazon Web Services (AWS) рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдЕрдм рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджреЛрдВ рдХреЗ рд▓рд┐рдП рдСрдбрд┐рдЯрд┐рдВрдЧ рд╕рд╣рд┐рдд рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИред

# Installation steps in github
# Create a config.json file with the aws info, like:
{
"accounts": [
{
"default": true,
"id": "<account id>",
"name": "dev"
}
],
"cidrs":
{
"2.2.2.2/28": {"name": "NY Office"}
}
}

# Enumerate
python3 cloudmapper.py collect --profile dev
## Number of resources discovered
python3 cloudmapper.py stats --accounts dev

# Create HTML report
## In the report you will find all the info already
python3 cloudmapper.py report --accounts dev

# Identify potential issues
python3 cloudmapper.py audit --accounts dev --json > audit.json
python3 cloudmapper.py audit --accounts dev --markdow > audit.md
python3 cloudmapper.py iam_report --accounts dev

# Identify admins
## The permissions search for are in https://github.com/duo-labs/cloudmapper/blob/4df9fd7303e0337ff16a08f5e58f1d46047c4a87/shared/iam_audit.py#L163-L175
python3 cloudmapper.py find_admins --accounts dev

# Identify unused elements
python3 cloudmapper.py find_unused --accounts dev

# Identify publivly exposed resources
python3 cloudmapper.py public --accounts dev

python cloudmapper.py prepare #Prepare webserver
python cloudmapper.py webserver #Show webserver
  • cartography: Cartography рдПрдХ Python рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рдХреЗ рд╕рдВрдмрдВрдзреЛрдВ рдХреЛ рдПрдХ рд╕рд╣рдЬ рдЧреНрд░рд╛рдл рджреГрд╢реНрдп рдореЗрдВ рд╕рдВрдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ Neo4j рдбреЗрдЯрд╛рдмреЗрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реИред

# Install
pip install cartography
## At the time of this writting you need neo4j version 3.5.*

# Get AWS info
AWS_PROFILE=dev cartography --neo4j-uri bolt://127.0.0.1:7687 --neo4j-password-prompt  --neo4j-user neo4j
  • starbase: Starbase рд╕реЗрд╡рд╛рдУрдВ рдФрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рд╕реЗ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдФрд░ рд╕рдВрдмрдВрдзреЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреНрд▓рд╛рдЙрдб рдЕрд╡рд╕рдВрд░рдЪрдирд╛, SaaS рдЕрдиреБрдкреНрд░рдпреЛрдЧ, рд╕реБрд░рдХреНрд╖рд╛ рдирд┐рдпрдВрддреНрд░рдг рдФрд░ рдЕрдзрд┐рдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬреЛ Neo4j рдбреЗрдЯрд╛рдмреЗрд╕ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдПрдХ рд╕рд╣рдЬ рдЧреНрд░рд╛рдл рджреГрд╢реНрдп рдореЗрдВ рд╣реИред

  • aws-inventory: (python2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ) рдпрд╣ рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдПрдХ рдЦрд╛рддреЗ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рд╕рднреА AWS рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИред

  • aws_public_ips: рдпрд╣ рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдПрдХ AWS рдЦрд╛рддреЗ рд╕реЗ рдЬреБрдбрд╝реЗ рд╕рднреА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ IP рдкрддреЗ (IPv4/IPv6 рджреЛрдиреЛрдВ) рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

Privesc & Exploiting

  • SkyArk: рд╕реНрдХреИрди рдХрд┐рдП рдЧрдП AWS рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рдмрд╕реЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ, рдЬрд┐рд╕рдореЗрдВ AWS Shadow Admins рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдпрд╣ powershell рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрдк https://github.com/cyberark/SkyArk/blob/master/AWStealth/AWStealth.ps1 рдореЗрдВ Check-PrivilegedPolicy рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдиреАрддрд┐рдпреЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

  • pacu: Pacu рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ AWS рд╢реЛрд╖рдг рдврд╛рдВрдЪрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдХреНрд▓рд╛рдЙрдб рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рдЦрд┐рд▓рд╛рдл рдЖрдХреНрд░рд╛рдордХ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╕реВрдЪреАрдмрджреНрдз рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЧрд▓рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЦреЛрдЬ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╢реЛрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЖрдк https://github.com/RhinoSecurityLabs/pacu/blob/866376cd711666c775bbfcde0524c817f2c5b181/pacu/modules/iam__privesc_scan/main.py#L134 рдореЗрдВ user_escalation_methods dict рдХреЗ рдЕрдВрджрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред

  • рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ pacu рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рдЕрдкрдиреЗ privescs рдкрдереЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ (рдЦрд╛рддреЗ рдХреЗ рд╕реНрддрд░ рдкрд░ рдирд╣реАрдВ)ред

# Install
## Feel free to use venvs
pip3 install pacu

# Use pacu CLI
pacu
> import_keys <profile_name> # import 1 profile from .aws/credentials
> import_keys --all # import all profiles
> list # list modules
> exec iam__enum_permissions # Get permissions
> exec iam__privesc_scan # List privileged permissions
  • PMapper: рдкреНрд░рд┐рдВрд╕рд┐рдкрд▓ рдореИрдкрд░ (PMapper) рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ AWS рдЦрд╛рддреЗ рдпрд╛ AWS рд╕рдВрдЧрдарди рдХреЗ рд▓рд┐рдП AWS рдкрд╣рдЪрд╛рди рдФрд░ рдкрд╣реБрдВрдЪ рдкреНрд░рдмрдВрдзрди (IAM) рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЬреЛрдЦрд┐рдореЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдпрд╣ рдПрдХ рдЦрд╛рддреЗ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди IAM рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рднреВрдорд┐рдХрд╛рдУрдВ рдХреЛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЧреНрд░рд╛рдл рдХреЗ рд░реВрдк рдореЗрдВ рдореЙрдбрд▓ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ privilege escalation рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪ рдФрд░ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрди рдпрд╛ рдХреНрд░рд┐рдпрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ рдкрдереЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЖрдк privesc рдкрдереЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА permissions рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдореЗрдВ _edges.py рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреА рд╣реИрдВ https://github.com/nccgroup/PMapper/tree/master/principalmapper/graphing

# Install
pip install principalmapper

# Get data
pmapper --profile dev graph create
pmapper --profile dev graph display # Show basic info
# Generate graph
pmapper --profile dev visualize # Generate svg graph file (can also be png, dot and graphml)
pmapper --profile dev visualize --only-privesc # Only privesc permissions

# Generate analysis
pmapper --profile dev analysis
## Run queries
pmapper --profile dev query 'who can do iam:CreateUser'
pmapper --profile dev query 'preset privesc *' # Get privescs with admins

# Get organization hierarchy data
pmapper --profile dev orgs create
pmapper --profile dev orgs display
  • cloudsplaining: Cloudsplaining рдПрдХ AWS IAM рд╕реБрд░рдХреНрд╖рд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рдиреНрдпреВрдирддрдо рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдХреЗ рдЙрд▓реНрд▓рдВрдШрдиреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдЬреЛрдЦрд┐рдо-рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╡рд╛рд▓рд╛ HTML рд░рд┐рдкреЛрд░реНрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рд╕рдВрднрд╛рд╡рд┐рдд over privileged рдЧреНрд░рд╛рд╣рдХ, inline рдФрд░ aws policies рджрд┐рдЦрд╛рдПрдЧрд╛ рдФрд░ рдХреМрди рд╕реЗ principals рдХреЛ рдЙрди рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред (рдпрд╣ рди рдХреЗрд╡рд▓ privesc рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдмрд▓реНрдХрд┐ рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреА рджрд┐рд▓рдЪрд╕реНрдк рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреА рднреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИ)ред

# Install
pip install cloudsplaining

# Download IAM policies to check
## Only the ones attached with the versions used
cloudsplaining download --profile dev

# Analyze the IAM policies
cloudsplaining scan --input-file /private/tmp/cloudsplaining/dev.json --output /tmp/files/
  • cloudjack: CloudJack AWS рдЦрд╛рддреЛрдВ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рддрд╛ рд╣реИ рдЙрдкрдбреЛрдореЗрди рд╣рд╛рдЗрдЬреИрдХрд┐рдВрдЧ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдЬреЛ Route53 рдФрд░ CloudFront рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЕрд▓рдЧ рд╣реЛрдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣реЛрддреА рд╣реИрдВред

  • ccat: ECR рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рд╕реВрдЪреА -> ECR рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЦреАрдВрдЪреЗрдВ -> рдЗрд╕реЗ рдмреИрдХрдбреЛрд░ рдХрд░реЗрдВ -> рдмреИрдХрдбреЛрд░ рдХреА рдЧрдИ рдЫрд╡рд┐ рдкреБрд╢ рдХрд░реЗрдВ

  • Dufflebag: Dufflebag рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ Elastic Block Storage (EBS) рд╕реНрдиреИрдкрд╢реЙрдЯреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрди рд░рд╣рд╕реНрдпреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЧрд▓рддреА рд╕реЗ рдЫреЛрдбрд╝реЗ рдЧрдП рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдСрдбрд┐рдЯ

  • cloudsploit: Aqua рджреНрд╡рд╛рд░рд╛ CloudSploit рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдХреНрд▓рд╛рдЙрдб рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдЦрд╛рддреЛрдВ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдЬреЛрдЦрд┐рдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), Oracle Cloud Infrastructure (OCI), рдФрд░ GitHub (рдпрд╣ ShadowAdmins рдХреА рддрд▓рд╛рд╢ рдирд╣реАрдВ рдХрд░рддрд╛)ред

./index.js --csv=file.csv --console=table --config ./config.js

# Compiance options: --compliance {hipaa,cis,cis1,cis2,pci}
## use "cis" for cis level 1 and 2
  • Prowler: Prowler рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ AWS рд╕реБрд░рдХреНрд╖рд╛ рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдЖрдХрд▓рди, рдСрдбрд┐рдЯ, рдШрдЯрдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛, рдирд┐рд░рдВрддрд░ рдирд┐рдЧрд░рд╛рдиреА, рд╣рд╛рд░реНрдбрдирд┐рдВрдЧ рдФрд░ рдлреЙрд░реЗрдВрд╕рд┐рдХреНрд╕ рддреИрдпрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

# Install python3, jq and git
# Install
pip install prowler
prowler -v

# Run
prowler <provider>
prowler aws --profile custom-profile [-M csv json json-asff html]
  • CloudFox: CloudFox рдЖрдкрдХреЛ рдЕрдкрд░рд┐рдЪрд┐рдд рдХреНрд▓рд╛рдЙрдб рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдЧрд░реВрдХрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЯреВрд▓ рд╣реИ рдЬрд┐рд╕реЗ рдкреЗрдирд┐рдЯреНрд░реЗрд╢рди рдЯреЗрд╕реНрдЯрд░реНрд╕ рдФрд░ рдЕрдиреНрдп рдЖрдХреНрд░рд╛рдордХ рд╕реБрд░рдХреНрд╖рд╛ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдХреЛ рдХреНрд▓рд╛рдЙрдб рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣рдорд▓реЗ рдХреЗ рд░рд╛рд╕реНрддреЗ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

cloudfox aws --profile [profile-name] all-checks
  • ScoutSuite: Scout Suite рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдорд▓реНрдЯреА-рдХреНрд▓рд╛рдЙрдб рд╕реБрд░рдХреНрд╖рд╛-рдСрдбрд┐рдЯрд┐рдВрдЧ рдЙрдкрдХрд░рдг рд╣реИ, рдЬреЛ рдХреНрд▓рд╛рдЙрдб рд╡рд╛рддрд╛рд╡рд░рдг рдХреА рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЖрдХрд▓рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред

# Install
virtualenv -p python3 venv
source venv/bin/activate
pip install scoutsuite
scout --help

# Get info
scout aws -p dev
  • cs-suite: рдХреНрд▓рд╛рдЙрдб рд╕реБрд░рдХреНрд╖рд╛ рд╕реВрдЯ (python2.7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдкреНрд░рдмрдВрдзрд┐рдд рд▓рдЧрддрд╛ рд╣реИ)

  • Zeus: Zeus AWS EC2 / S3 / CloudTrail / CloudWatch / KMS рдХреЗ рд▓рд┐рдП рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рд╕рд░реНрд╡реЛрддреНрддрдо рд╣рд╛рд░реНрдбрдирд┐рдВрдЧ рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдЕрдкреНрд░рдмрдВрдзрд┐рдд рд▓рдЧрддрд╛ рд╣реИ)ред рдпрд╣ рдХреЗрд╡рд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдВрджрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдП рдЧрдП рдХреНрд░реЗрдбреНрд╕ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред

рдирд┐рд░рдВрддрд░ рдСрдбрд┐рдЯ

  • cloud-custodian: Cloud Custodian рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдб рдЦрд╛рддреЛрдВ рдФрд░ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рдпрдо рдЗрдВрдЬрди рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХреНрд▓рд╛рдЙрдб рдЕрд╡рд╕рдВрд░рдЪрдирд╛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрддрд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдФрд░ рд▓рд╛рдЧрдд рдЕрдиреБрдХреВрд▓рд┐рдд рджреЛрдиреЛрдВ рд╣реИред рдпрд╣ рд╕рдВрдЧрдардиреЛрдВ рдХреЗ рдкрд╛рд╕ рдореМрдЬреВрдж рдХрдИ рдЕрд╕реНрдерд╛рдпреА рд╕реНрдХреНрд░рд┐рдкреНрдЯреЛрдВ рдХреЛ рдПрдХ рд╣рд▓реНрдХреЗ рдФрд░ рд▓рдЪреАрд▓реЗ рдЙрдкрдХрд░рдг рдореЗрдВ рд╕рдореЗрдХрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХреАрдХреГрдд рдореИрдЯреНрд░рд┐рдХреНрд╕ рдФрд░ рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рд╣реЛрддреА рд╣реИред

  • pacbot: рдиреАрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрдб рдмреЙрдЯ (PacBot) рдПрдХ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╣реИ рдирд┐рд░рдВрддрд░ рдЕрдиреБрдкрд╛рд▓рди рдирд┐рдЧрд░рд╛рдиреА, рдЕрдиреБрдкрд╛рд▓рди рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЙрдбред PacBot рдореЗрдВ, рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЕрдиреБрдкрд╛рд▓рди рдиреАрддрд┐рдпреЛрдВ рдХреЛ рдХреЛрдб рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред PacBot рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬреЗ рдЧрдП рд╕рднреА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдЗрди рдиреАрддрд┐рдпреЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдиреАрддрд┐ рдХреЗ рдЕрдиреБрдкрд╛рд▓рди рдХрд╛ рдЖрдХрд▓рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред PacBot рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕реБрдзрд╛рд░ рдврд╛рдВрдЪрд╛ рдиреАрддрд┐ рдЙрд▓реНрд▓рдВрдШрдиреЛрдВ рдХрд╛ рд╕реНрд╡рддрдГ рдЙрддреНрддрд░ рджреЗрдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЕрдкрдирд╛рдХрд░ред

  • streamalert: StreamAlert рдПрдХ рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдбреЗрдЯрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдврд╛рдВрдЪрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рд╡рд╛рддрд╛рд╡рд░рдг рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдЧреНрд░рд╣рдг, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдЕрд▓рд░реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ, рдбреЗрдЯрд╛ рд╕реНрд░реЛрддреЛрдВ рдФрд░ рдЕрд▓рд░реНрдЯрд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЬрд┐рд╕реЗ рдЖрдк рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдХрдВрдкреНрдпреВрдЯрд░ рд╕реБрд░рдХреНрд╖рд╛ рдЯреАрдореЗрдВ рдШрдЯрдирд╛ рдкрд╣рдЪрд╛рди рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╣рд░ рджрд┐рди рдЯреЗрд░рд╛рдмрд╛рдЗрдЯреНрд╕ рд▓реЙрдЧ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП StreamAlert рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред

DEBUG: AWS cli рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдХреИрдкреНрдЪрд░ рдХрд░реЗрдВ

# Set proxy
export HTTP_PROXY=http://localhost:8080
export HTTPS_PROXY=http://localhost:8080

# Capture with burp nor verifying ssl
aws --no-verify-ssl ...

# Dowload brup cert and transform it to pem
curl http://127.0.0.1:8080/cert --output Downloads/certificate.cer
openssl x509 -inform der -in Downloads/certificate.cer -out Downloads/certificate.pem

# Indicate the ca cert to trust
export AWS_CA_BUNDLE=~/Downloads/certificate.pem

# Run aws cli normally trusting burp cert
aws ...

References

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

Last updated