AWS - Codebuild Privesc
Last updated
Last updated
AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE) GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
AWS - Codebuild Enumcodebuild:StartBuild
| codebuild:StartBuildBatch
рдЗрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рдПрдХ рдЕрдиреБрдорддрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ buildspec рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдирд╛ рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕реМрдВрдкреЗ рдЧрдП iam рднреВрдорд┐рдХрд╛ рдХрд╛ рдЯреЛрдХрди рдЪреБрд░рд╛рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
рдиреЛрдЯ: рдЗрди рджреЛ рдХрдорд╛рдВрдб рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдпрд╣ рд╣реИ:
StartBuild
рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ buildspec.yml
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХрд▓ рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдп рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИред
StartBuildBatch
рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХрд╛ рдПрдХ рдмреИрдЪ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдЬреИрд╕реЗ рдХрдИ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдЪрд▓рд╛рдирд╛)ред
рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡: рдЬреБрдбрд╝реЗ рд╣реБрдП AWS Codebuild рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдкреНрд░рд┐рд╡реЗрд╕реНрдХред
iam:PassRole
, codebuild:CreateProject
, (codebuild:StartBuild
| codebuild:StartBuildBatch
)рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдЬрд┐рд╕рдХреЗ рдкрд╛рд╕ iam:PassRole
, codebuild:CreateProject
, рдФрд░ codebuild:StartBuild
рдпрд╛ codebuild:StartBuildBatch
рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реИрдВ, рд╡рд╣ рдХрд┐рд╕реА рднреА codebuild IAM рднреВрдорд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рд┐рд╡рд┐рд▓реЗрдЬрд╝ рдмрдврд╝рд╛ рд╕рдХрддрд╛ рд╣реИ рдПрдХ рдЪрд▓ рд░рд╣реА рднреВрдорд┐рдХрд╛ рдмрдирд╛рдХрд░ред
рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡: рдХрд┐рд╕реА рднреА AWS Codebuild рднреВрдорд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдкреНрд░рд┐рд╡реЗрд╕реНрдХред
рдПрдХ Codebuild рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ /codebuild/output/tmp/env.sh
рд╕рднреА env vars рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреА рд╣реИ рдЬреЛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред
рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ env рд╡реЗрд░рд┐рдПрдмрд▓ AWS_CONTAINER_CREDENTIALS_RELATIVE_URI
рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП URL рдкрде рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╣реЛрдЧрд╛ /v2/credentials/2817702c-efcf-4485-9730-8e54303ec420
рдЗрд╕реЗ URL http://169.254.170.2/
рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЖрдк рднреВрдорд┐рдХрд╛ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЛ рдбрдВрдк рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕рдореЗрдВ env рд╡реЗрд░рд┐рдПрдмрд▓ ECS_CONTAINER_METADATA_URI
рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг URL рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИред
iam:PassRole
, codebuild:UpdateProject
, (codebuild:StartBuild
| codebuild:StartBuildBatch
)рдЬреИрд╕реЗ рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рдпрджрд┐ рдЖрдк рдПрдХ рдирд┐рд░реНрдорд╛рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк IAM рднреВрдорд┐рдХрд╛ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЯреЛрдХрди рдЪреБрд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡: рдХрд┐рд╕реА рднреА AWS Codebuild рднреВрдорд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдкреНрд░рд┐рд╡реЗрд╕реНрдХред
codebuild:UpdateProject
, (codebuild:StartBuild
| codebuild:StartBuildBatch
)рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдХреА рддрд░рд╣ рд▓реЗрдХрд┐рди iam:PassRole
рдЕрдиреБрдорддрд┐ рдХреЗ рдмрд┐рдирд╛, рдЖрдк рдЗрд╕ рдЕрдиреБрдорддрд┐ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореМрдЬреВрджрд╛ Codebuild рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рднреВрдорд┐рдХрд╛ рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдиреНрд╣реЗрдВ рд╕реМрдВрдкрд┐рдд рд╣реИред
рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡: рдЬреБрдбрд╝реЗ рд╣реБрдП AWS Codebuild рднреВрдорд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рдкреНрд░рд┐рд╡рд┐рд▓реЗрдЬрд╝ рд╡реГрджреНрдзрд┐ред
SSM рд╕рддреНрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЕрдиреБрдорддрд┐рдпрд╛рдБ рд╣реЛрдиреЗ рдкрд░ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдПрдХ Codebuild рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдЕрдВрджрд░ рдЬрд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдЬреЛ рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
Codebuild рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рдмреНрд░реЗрдХрдкреЙрдЗрдВрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдФрд░ рдлрд┐рд░:
For more info check the docs.
codebuild:StartBuild
| codebuild:StartBuildBatch
), s3:GetObject
, s3:PutObject
рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдЬреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ CodeBuild рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ/рдкреБрдирдГ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рдЬреЛ рдЕрдкрдирд╛ buildspec.yml
рдлрд╝рд╛рдЗрд▓ рдПрдХ S3 рдмрдХреЗрдЯ рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, CodeBuild рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
Note: рдпрд╣ рд╡реГрджреНрдзрд┐ рдХреЗрд╡рд▓ рддрднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдЬрдм CodeBuild рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рдХреА рднреВрдорд┐рдХрд╛ рд╣рдорд▓рд╛рд╡рд░ рдХреА рднреВрдорд┐рдХрд╛ рд╕реЗ рднрд┐рдиреНрди рд╣реЛ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рд╣реЛред
рдЖрдк buildspec рдЬреИрд╕реЗ рдХреБрдЫ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ reverse shell рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
рдкреНрд░рднрд╛рд╡: AWS CodeBuild рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднреВрдорд┐рдХрд╛ рдореЗрдВ рд╕реАрдзреЗ рдкреНрд░рд┐рд╡рд┐рд▓реЗрдЬрд╝ рд╡реГрджреНрдзрд┐, рдЬреЛ рдЖрдорддреМрд░ рдкрд░ рдЙрдЪреНрдЪ рдкреНрд░рд┐рд╡рд┐рд▓реЗрдЬрд╝ рд░рдЦрддреА рд╣реИред
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ buildspec рдХреЛ рдЬрд╝рд┐рдк рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб, рдЕрдирдЬрд╝рд┐рдк, рд░реВрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ buildspec.yml
рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛, рдлрд┐рд░ рд╕реЗ рдЬрд╝рд┐рдк рдХрд░рдирд╛ рдФрд░ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рднрд╛рд╡: рдЬреБрдбрд╝реЗ рд╣реБрдП AWS Codebuild рднреВрдорд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реАрдзреЗ рдкреНрд░рд┐рд╡рд┐рд▓реЗрдЬрд╝ рд╡реГрджреНрдзрд┐ред
AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE) GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)