mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-07-28 22:51:09 -07:00
Translated ['src/pentesting-cloud/aws-security/aws-services/aws-iam-enum
This commit is contained in:
+18
-6
@@ -4,7 +4,7 @@
|
||||
|
||||
## SES
|
||||
|
||||
Para mais informações, veja:
|
||||
Para mais informações, consulte:
|
||||
|
||||
{{#ref}}
|
||||
../../aws-services/aws-ses-enum.md
|
||||
@@ -25,11 +25,11 @@ Enviar um e-mail.
|
||||
```bash
|
||||
aws ses send-raw-email --raw-message file://message.json
|
||||
```
|
||||
Ainda por testar.
|
||||
Ainda para testar.
|
||||
|
||||
### `ses:SendTemplatedEmail`
|
||||
|
||||
Enviar um email com base num modelo.
|
||||
Enviar um e-mail com base num modelo.
|
||||
```bash
|
||||
aws ses send-templated-email --source <value> --destination <value> --template <value>
|
||||
```
|
||||
@@ -41,7 +41,7 @@ Enviar um e-mail para múltiplos destinatários
|
||||
```bash
|
||||
aws ses send-bulk-templated-email --source <value> --template <value>
|
||||
```
|
||||
Ainda por testar.
|
||||
Ainda para testar.
|
||||
|
||||
### `ses:SendBulkEmail`
|
||||
|
||||
@@ -51,7 +51,7 @@ aws sesv2 send-bulk-email --default-content <value> --bulk-email-entries <value>
|
||||
```
|
||||
### `ses:SendBounce`
|
||||
|
||||
Enviar um **bounce email** sobre um email recebido (indicando que o email não pôde ser recebido). Isto só pode ser feito **até 24h após o recebimento** do email.
|
||||
Enviar um **e-mail de bounce** sobre um e-mail recebido (indicando que o e-mail não pôde ser entregue). Isso só pode ser feito **até 24h após o recebimento** do e-mail.
|
||||
```bash
|
||||
aws ses send-bounce --original-message-id <value> --bounce-sender <value> --bounced-recipient-info-list <value>
|
||||
```
|
||||
@@ -59,11 +59,23 @@ Ainda por testar.
|
||||
|
||||
### `ses:SendCustomVerificationEmail`
|
||||
|
||||
Isto irá enviar um email de verificação personalizado. Também poderá precisar de permissões para criar o modelo de email.
|
||||
Isso enviará um e-mail de verificação personalizado. Você pode também precisar de permissões para criar o template do e-mail.
|
||||
```bash
|
||||
aws ses send-custom-verification-email --email-address <value> --template-name <value>
|
||||
aws sesv2 send-custom-verification-email --email-address <value> --template-name <value>
|
||||
```
|
||||
Ainda por testar.
|
||||
|
||||
## WorkMail pivot to bypass SES sandbox
|
||||
|
||||
Quando `ses:GetAccount` indicar que a conta ainda está no SES sandbox e `ses:ListIdentities` não retornar remetentes verificados, os atacantes podem **pivot to WorkMail** para enviar imediatamente (sem sandbox e com cotas padrão mais altas) criando organizações, verificando domínios e registrando caixas de correio.
|
||||
|
||||
{{#ref}}
|
||||
../aws-workmail-post-exploitation/README.md
|
||||
{{#endref}}
|
||||
|
||||
## Referências
|
||||
|
||||
- [Threat Actors Using AWS WorkMail in Phishing Campaigns](https://www.rapid7.com/blog/post/dr-threat-actors-aws-workmail-phishing-campaigns)
|
||||
|
||||
{{#include ../../../../banners/hacktricks-training.md}}
|
||||
|
||||
+76
@@ -0,0 +1,76 @@
|
||||
# AWS - WorkMail Post Exploitation
|
||||
|
||||
{{#include ../../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Abusando do WorkMail para contornar o SES sandbox
|
||||
|
||||
Mesmo que o SES esteja preso no **sandbox** (apenas recipients verificados, ~200 msgs/24h, 1 msg/s), o WorkMail não possui restrição equivalente. Um atacante com long-term keys pode criar infraestrutura de e-mail descartável e começar a enviar imediatamente:
|
||||
|
||||
1. **Create a WorkMail org (region-scoped)**
|
||||
```bash
|
||||
aws workmail create-organization --region us-east-1 --alias temp-mail --directory-id <dir-id-if-reusing>
|
||||
```
|
||||
2. **Verify attacker-controlled domains** (WorkMail invokes SES APIs as `workmail.amazonaws.com`):
|
||||
```bash
|
||||
aws ses verify-domain-identity --domain attacker-domain.com
|
||||
aws ses verify-domain-dkim --domain attacker-domain.com
|
||||
```
|
||||
3. **Provision mailbox users** and register them:
|
||||
```bash
|
||||
aws workmail create-user --organization-id <org-id> --name marketing --display-name "Marketing"
|
||||
aws workmail register-to-work-mail --organization-id <org-id> --entity-id <user-id> --email marketing@attacker-domain.com
|
||||
```
|
||||
|
||||
Notas:
|
||||
- Cap padrão de **recipient** documentado pela AWS: **100,000 external recipients/day per org** (agregado entre usuários).
|
||||
- A atividade de verificação de domínio aparecerá no CloudTrail sob SES mas com **`invokedBy`: `workmail.<region>.amazonaws.com`**, então eventos de verificação do SES podem pertencer à configuração do WorkMail em vez de campanhas SES.
|
||||
- WorkMail mailbox users become **application-layer persistence** independent from IAM users.
|
||||
|
||||
## Sending paths & telemetry gaps
|
||||
|
||||
### Cliente web (WorkMail UI)
|
||||
- Envia como eventos **`ses:SendRawEmail`** no CloudTrail.
|
||||
- `userIdentity.type` = `AWSService`, `invokedBy/sourceIPAddress/userAgent` = `workmail.<region>.amazonaws.com`, então o **IP real do cliente fica oculto**.
|
||||
- Os `requestParameters` ainda leak o remetente (`source`, `fromArn`, `sourceArn`, configuration set) para correlacionar com domínios/caixas de correio recém verificados.
|
||||
|
||||
### SMTP (mais furtivo)
|
||||
- Endpoint: `smtp.mail.<region>.awsapps.com:465` (SMTP over SSL) com a mailbox password.
|
||||
- **No CloudTrail data events** are generated for SMTP delivery, even when SES data events are enabled.
|
||||
- Pontos ideais de detecção são **provisionamento de org/domínio/usuário** e SES identity ARNs referenciados em eventos `SendRawEmail` enviados pela web subsequentes.
|
||||
|
||||
<details>
|
||||
<summary>Exemplo de envio SMTP via WorkMail</summary>
|
||||
```python
|
||||
import smtplib
|
||||
from email.message import EmailMessage
|
||||
|
||||
SMTP_SERVER = "smtp.mail.us-east-1.awsapps.com"
|
||||
SMTP_PORT = 465
|
||||
EMAIL_ADDRESS = "marketing@attacker-domain.com"
|
||||
EMAIL_PASSWORD = "SuperSecretPassword!"
|
||||
|
||||
target = "victim@example.com" # can be unverified/external
|
||||
msg = EmailMessage()
|
||||
msg["Subject"] = "WorkMail SMTP"
|
||||
msg["From"] = EMAIL_ADDRESS
|
||||
msg["To"] = target
|
||||
msg.set_content("Delivered via WorkMail SMTP")
|
||||
|
||||
with smtplib.SMTP_SSL(SMTP_SERVER, SMTP_PORT) as smtp:
|
||||
smtp.login(EMAIL_ADDRESS, EMAIL_PASSWORD)
|
||||
smtp.send_message(msg)
|
||||
```
|
||||
</details>
|
||||
|
||||
## Considerações de detecção
|
||||
|
||||
- Se o WorkMail for desnecessário, bloqueie-o via **SCPs** (`workmail:*` deny) no nível da organização.
|
||||
- Alertar sobre provisionamento: `workmail:CreateOrganization`, `workmail:CreateUser`, `workmail:RegisterToWorkMail` e verificações do SES com `invokedBy=workmail.amazonaws.com` (`ses:VerifyDomainIdentity`, `ses:VerifyDomainDkim`).
|
||||
- Fique atento a eventos anômalos **`ses:SendRawEmail`** onde os ARNs de identidade referenciam domínios novos e o IP/UA de origem é igual a `workmail.<region>.amazonaws.com`.
|
||||
|
||||
## References
|
||||
|
||||
- [Threat Actors Using AWS WorkMail in Phishing Campaigns](https://www.rapid7.com/blog/post/dr-threat-actors-aws-workmail-phishing-campaigns)
|
||||
- [AWS WorkMail limits](https://docs.aws.amazon.com/workmail/latest/adminguide/limits.html)
|
||||
|
||||
{{#include ../../../../banners/hacktricks-training.md}}
|
||||
@@ -1,4 +1,4 @@
|
||||
# AWS - Enumeração de IAM, Identity Center & SSO
|
||||
# AWS - IAM, Identity Center & SSO Enum
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
@@ -10,11 +10,11 @@ Você pode encontrar uma **descrição do IAM** em:
|
||||
../aws-basic-information/
|
||||
{{#endref}}
|
||||
|
||||
### Enumeração
|
||||
### Enumeration
|
||||
|
||||
Permissões principais necessárias:
|
||||
Principais permissões necessárias:
|
||||
|
||||
- `iam:ListPolicies`, `iam:GetPolicy` e `iam:GetPolicyVersion`
|
||||
- `iam:ListPolicies`, `iam:GetPolicy` and `iam:GetPolicyVersion`
|
||||
- `iam:ListRoles`
|
||||
- `iam:ListUsers`
|
||||
- `iam:ListGroups`
|
||||
@@ -22,9 +22,9 @@ Permissões principais necessárias:
|
||||
- `iam:ListAttachedUserPolicies`
|
||||
- `iam:ListAttachedRolePolicies`
|
||||
- `iam:ListAttachedGroupPolicies`
|
||||
- `iam:ListUserPolicies` e `iam:GetUserPolicy`
|
||||
- `iam:ListGroupPolicies` e `iam:GetGroupPolicy`
|
||||
- `iam:ListRolePolicies` e `iam:GetRolePolicy`
|
||||
- `iam:ListUserPolicies` and `iam:GetUserPolicy`
|
||||
- `iam:ListGroupPolicies` and `iam:GetGroupPolicy`
|
||||
- `iam:ListRolePolicies` and `iam:GetRolePolicy`
|
||||
```bash
|
||||
# All IAMs
|
||||
## Retrieves information about all IAM users, groups, roles, and policies
|
||||
@@ -88,37 +88,49 @@ aws iam get-account-password-policy
|
||||
aws iam list-mfa-devices
|
||||
aws iam list-virtual-mfa-devices
|
||||
```
|
||||
### Confirmação furtiva de permissões via falhas intencionais
|
||||
|
||||
Quando `List*` ou as APIs do simulador estão bloqueadas, você pode **confirmar permissões de mutação sem criar recursos duráveis** forçando erros de validação previsíveis. AWS ainda avalia o IAM antes de retornar esses erros, então ver o erro comprova que o chamador tem permissão para executar a ação:
|
||||
```bash
|
||||
# Confirm iam:CreateUser without creating a new principal (fails only after authz)
|
||||
aws iam create-user --user-name <existing_user> # -> EntityAlreadyExistsException
|
||||
|
||||
# Confirm iam:CreateLoginProfile while learning password policy requirements
|
||||
aws iam create-login-profile --user-name <target_user> --password lower --password-reset-required # -> PasswordPolicyViolationException
|
||||
```
|
||||
Essas tentativas ainda geram eventos do CloudTrail (com `errorCode` definido) mas evitam deixar novos artefatos do IAM, tornando-as úteis para **validação de permissões com baixo ruído** durante recon interativo.
|
||||
|
||||
### Força Bruta de Permissões
|
||||
|
||||
Se você estiver interessado em suas próprias permissões, mas não tiver acesso para consultar o IAM, você sempre pode forçá-las.
|
||||
Se você está interessado nas suas próprias permissões mas não tem acesso para consultar o IAM, você sempre pode fazer brute-force nelas.
|
||||
|
||||
#### bf-aws-permissions
|
||||
|
||||
A ferramenta [**bf-aws-permissions**](https://github.com/carlospolop/bf-aws-permissions) é apenas um script bash que executará, usando o perfil indicado, todas as ações **`list*`, `describe*`, `get*`** que puder encontrar usando as mensagens de ajuda do cli `aws` e **retornará as execuções bem-sucedidas**.
|
||||
A ferramenta [**bf-aws-permissions**](https://github.com/carlospolop/bf-aws-permissions) é apenas um script bash que irá executar, usando o perfil indicado, todas as ações **`list*`, `describe*`, `get*`** que conseguir encontrar nas mensagens de ajuda do `aws` cli e **retornar as execuções bem-sucedidas**.
|
||||
```bash
|
||||
# Bruteforce permissions
|
||||
bash bf-aws-permissions.sh -p default > /tmp/bf-permissions-verbose.txt
|
||||
```
|
||||
#### bf-aws-perms-simulate
|
||||
|
||||
A ferramenta [**bf-aws-perms-simulate**](https://github.com/carlospolop/bf-aws-perms-simulate) pode encontrar suas permissões atuais (ou as de outros principais) se você tiver a permissão **`iam:SimulatePrincipalPolicy`**
|
||||
A ferramenta [**bf-aws-perms-simulate**](https://github.com/carlospolop/bf-aws-perms-simulate) pode descobrir suas permissões atuais (ou as de outros principals) se você tiver a permissão **`iam:SimulatePrincipalPolicy`**
|
||||
```bash
|
||||
# Ask for permissions
|
||||
python3 aws_permissions_checker.py --profile <AWS_PROFILE> [--arn <USER_ARN>]
|
||||
```
|
||||
#### Perms2ManagedPolicies
|
||||
|
||||
Se você encontrou **algumas permissões que seu usuário possui**, e você acha que elas estão sendo concedidas por um **papel gerenciado da AWS** (e não por um personalizado). Você pode usar a ferramenta [**aws-Perms2ManagedRoles**](https://github.com/carlospolop/aws-Perms2ManagedPolicies) para verificar todos os **papéis gerenciados da AWS que concedem as permissões que você descobriu que possui**.
|
||||
Se você encontrou **algumas permissões que seu usuário possui**, e acha que elas estão sendo concedidas por uma **role gerenciada da AWS** (e não por uma personalizada). Você pode usar a ferramenta [**aws-Perms2ManagedRoles**](https://github.com/carlospolop/aws-Perms2ManagedPolicies) para verificar todos os **roles gerenciados da AWS que concedem as permissões que você descobriu possuir**.
|
||||
```bash
|
||||
# Run example with my profile
|
||||
python3 aws-Perms2ManagedPolicies.py --profile myadmin --permissions-file example-permissions.txt
|
||||
```
|
||||
> [!WARNING]
|
||||
> É possível "saber" se as permissões que você tem são concedidas por um papel gerenciado da AWS se você ver que **você tem permissões sobre serviços que não são utilizados**, por exemplo.
|
||||
> É possível "saber" se as permissões que você tem foram concedidas por uma função gerenciada pela AWS se você vir que, por exemplo, **você tem permissões sobre serviços que não são usados**.
|
||||
|
||||
#### Cloudtrail2IAM
|
||||
|
||||
[**CloudTrail2IAM**](https://github.com/carlospolop/Cloudtrail2IAM) é uma ferramenta Python que analisa **logs do AWS CloudTrail para extrair e resumir ações** realizadas por todos ou apenas por um usuário ou papel específico. A ferramenta irá **analisar todos os logs do cloudtrail do bucket indicado**.
|
||||
[**CloudTrail2IAM**](https://github.com/carlospolop/Cloudtrail2IAM) é uma ferramenta Python que analisa **logs do AWS CloudTrail para extrair e resumir ações** realizadas por todos ou apenas por um usuário ou função específica. A ferramenta irá **processar cada log do CloudTrail do bucket indicado**.
|
||||
```bash
|
||||
git clone https://github.com/carlospolop/Cloudtrail2IAM
|
||||
cd Cloudtrail2IAM
|
||||
@@ -126,16 +138,16 @@ pip install -r requirements.txt
|
||||
python3 cloudtrail2IAM.py --prefix PREFIX --bucket_name BUCKET_NAME --profile PROFILE [--filter-name FILTER_NAME] [--threads THREADS]
|
||||
```
|
||||
> [!WARNING]
|
||||
> Se você encontrar .tfstate (arquivos de estado do Terraform) ou arquivos do CloudFormation (geralmente são arquivos yaml localizados dentro de um bucket com o prefixo cf-templates), você também pode lê-los para encontrar a configuração do aws e descobrir quais permissões foram atribuídas a quem.
|
||||
> Se você encontrar .tfstate (Terraform state files) ou arquivos CloudFormation (estes geralmente são arquivos yaml localizados dentro de um bucket com o prefixo cf-templates), você também pode lê-los para encontrar a configuração do aws e descobrir quais permissões foram atribuídas a quem.
|
||||
|
||||
#### enumerate-iam
|
||||
|
||||
Para usar a ferramenta [**https://github.com/andresriancho/enumerate-iam**](https://github.com/andresriancho/enumerate-iam), você primeiro precisa baixar todos os endpoints da API AWS, a partir dos quais o script **`generate_bruteforce_tests.py`** obterá todos os **"list\_", "describe\_" e "get\_" endpoints.** E finalmente, ele tentará **acessá-los** com as credenciais fornecidas e **indicar se funcionou**.
|
||||
To use the tool [**https://github.com/andresriancho/enumerate-iam**](https://github.com/andresriancho/enumerate-iam) you first need to download all the API AWS endpoints, from those the script **`generate_bruteforce_tests.py`** will get all the **"list\_", "describe\_", and "get\_" endpoints.** And finally, it will try to **access them** with the given credentials and **indicate if it worked**.
|
||||
|
||||
(Com base na minha experiência, a **ferramenta trava em algum ponto**, [**veja esta correção**](https://github.com/andresriancho/enumerate-iam/pull/15/commits/77ad5b41216e3b5f1511d0c385da8cd5984c2d3c) para tentar corrigir isso).
|
||||
(Na minha experiência a **ferramenta trava em algum ponto**, [**confira esta correção**](https://github.com/andresriancho/enumerate-iam/pull/15/commits/77ad5b41216e3b5f1511d0c385da8cd5984c2d3c) para tentar corrigir isso).
|
||||
|
||||
> [!WARNING]
|
||||
> Com base na minha experiência, esta ferramenta é como a anterior, mas funciona pior e verifica menos permissões.
|
||||
> Na minha experiência esta ferramenta é parecida com a anterior, mas funciona pior e verifica menos permissões
|
||||
```bash
|
||||
# Install tool
|
||||
git clone git@github.com:andresriancho/enumerate-iam.git
|
||||
@@ -154,7 +166,7 @@ python3 enumerate-iam.py --access-key ACCESS_KEY --secret-key SECRET_KEY [--sess
|
||||
```
|
||||
#### weirdAAL
|
||||
|
||||
Você também pode usar a ferramenta [**weirdAAL**](https://github.com/carnal0wnage/weirdAAL/wiki). Esta ferramenta verificará **várias operações comuns em vários serviços comuns** (verificará algumas permissões de enumeração e também algumas permissões de privesc). Mas ela só verificará os testes codificados (a única maneira de verificar mais coisas é codificando mais testes).
|
||||
Você também pode usar a ferramenta [**weirdAAL**](https://github.com/carnal0wnage/weirdAAL/wiki). Esta ferramenta verificará **várias operações comuns em vários serviços comuns** (verificará algumas enumeration permissions e também algumas privesc permissions). Mas ela apenas executa as verificações codificadas (a única forma de testar mais coisas é implementar mais testes).
|
||||
```bash
|
||||
# Install
|
||||
git clone https://github.com/carnal0wnage/weirdAAL.git
|
||||
@@ -178,7 +190,7 @@ python3 weirdAAL.py -m recon_all -t MyTarget # Check all permissions
|
||||
# [+] elbv2 Actions allowed are [+]
|
||||
# ['DescribeLoadBalancers', 'DescribeAccountLimits', 'DescribeTargetGroups']
|
||||
```
|
||||
#### Ferramentas de Hardening para BF permissões
|
||||
#### Ferramentas de Hardening para permissões BF
|
||||
|
||||
{{#tabs }}
|
||||
{{#tab name="CloudSploit" }}
|
||||
@@ -208,7 +220,7 @@ steampipe dashboard
|
||||
|
||||
#### \<YourTool>
|
||||
|
||||
Nenhuma das ferramentas anteriores é capaz de verificar todas as permissões, então se você conhece uma ferramenta melhor, envie um PR!
|
||||
Nenhuma das ferramentas anteriores é capaz de verificar quase todas as permissões; se você conhece uma ferramenta melhor, envie um PR!
|
||||
|
||||
### Acesso Não Autenticado
|
||||
|
||||
@@ -216,15 +228,15 @@ Nenhuma das ferramentas anteriores é capaz de verificar todas as permissões, e
|
||||
../aws-unauthenticated-enum-access/aws-iam-and-sts-unauthenticated-enum/README.md
|
||||
{{#endref}}
|
||||
|
||||
### Escalação de Privilégios
|
||||
### Escalada de Privilégios
|
||||
|
||||
Na página seguinte, você pode verificar como **abusar das permissões do IAM para escalar privilégios**:
|
||||
Na página a seguir você pode ver como **abusar das permissões do IAM para escalar privilégios**:
|
||||
|
||||
{{#ref}}
|
||||
../aws-privilege-escalation/aws-iam-privesc/README.md
|
||||
{{#endref}}
|
||||
|
||||
### Pós Exploração do IAM
|
||||
### Pós-Exploração do IAM
|
||||
|
||||
{{#ref}}
|
||||
../aws-post-exploitation/aws-iam-post-exploitation/README.md
|
||||
@@ -236,15 +248,15 @@ Na página seguinte, você pode verificar como **abusar das permissões do IAM p
|
||||
../aws-persistence/aws-iam-persistence/README.md
|
||||
{{#endref}}
|
||||
|
||||
## Centro de Identidade do IAM
|
||||
## IAM Identity Center
|
||||
|
||||
Você pode encontrar uma **descrição do Centro de Identidade do IAM** em:
|
||||
Você pode encontrar uma **descrição do IAM Identity Center** em:
|
||||
|
||||
{{#ref}}
|
||||
../aws-basic-information/
|
||||
{{#endref}}
|
||||
|
||||
### Conectar via SSO com CLI
|
||||
### Conectar via SSO com a CLI
|
||||
```bash
|
||||
# Connect with sso via CLI aws configure sso
|
||||
aws configure sso
|
||||
@@ -260,13 +272,13 @@ sso_region = us-east-1
|
||||
Os principais elementos do Identity Center são:
|
||||
|
||||
- Usuários e grupos
|
||||
- Conjuntos de Permissões: Têm políticas anexadas
|
||||
- Permission Sets: possuem políticas anexadas
|
||||
- Contas AWS
|
||||
|
||||
Então, relacionamentos são criados para que usuários/grupos tenham Conjuntos de Permissões sobre a Conta AWS.
|
||||
Em seguida, são criados relacionamentos para que usuários/grupos tenham Permission Sets em Contas AWS.
|
||||
|
||||
> [!NOTE]
|
||||
> Note que existem 3 maneiras de anexar políticas a um Conjunto de Permissões. Anexando políticas gerenciadas pela AWS, políticas gerenciadas pelo cliente (essas políticas precisam ser criadas em todas as contas que o Conjunto de Permissões está afetando) e políticas inline (definidas lá).
|
||||
> Observe que existem 3 maneiras de anexar políticas a um Permission Set: políticas gerenciadas pela AWS, políticas gerenciadas pelo cliente (essas políticas precisam ser criadas em todas as contas que o Permission Set afeta) e políticas inline (definidas no próprio Permission Set).
|
||||
```bash
|
||||
# Check if IAM Identity Center is used
|
||||
aws sso-admin list-instances
|
||||
@@ -327,9 +339,9 @@ aws sso login --profile my-sso-profile
|
||||
# Use dependent-profile
|
||||
aws s3 ls --profile dependent-profile
|
||||
```
|
||||
Quando um **perfil do SSO é usado** para acessar algumas informações, as credenciais são **armazenadas em cache** em um arquivo dentro da pasta **`$HOME/.aws/sso/cache`**. Portanto, elas podem ser **lidas e usadas a partir daí**.
|
||||
Quando um **perfil do SSO é usado** para acessar alguma informação, as credenciais são **armazenadas em cache** em um arquivo dentro da pasta **`$HOME/.aws/sso/cache`**. Portanto, elas podem ser **lidas e usadas a partir daí**.
|
||||
|
||||
Além disso, **mais credenciais** podem ser armazenadas na pasta **`$HOME/.aws/cli/cache`**. Este diretório de cache é usado principalmente quando você está **trabalhando com perfis do AWS CLI** que usam credenciais de usuário IAM ou **assumem** funções através do IAM (sem SSO). Exemplo de configuração:
|
||||
Além disso, **mais credenciais** podem ser armazenadas na pasta **`$HOME/.aws/cli/cache`**. Esse diretório de cache é usado principalmente quando você está **trabalhando com perfis do AWS CLI** que usam credenciais de usuário IAM ou **assumem funções** através do IAM (sem SSO). Exemplo de configuração:
|
||||
```ini
|
||||
[profile crossaccountrole]
|
||||
role_arn = arn:aws:iam::234567890123:role/SomeRole
|
||||
@@ -343,13 +355,13 @@ external_id = 123456
|
||||
../aws-unauthenticated-enum-access/aws-identity-center-and-sso-unauthenticated-enum/README.md
|
||||
{{#endref}}
|
||||
|
||||
### Escalação de Privilégios
|
||||
### Escalonamento de Privilégios
|
||||
|
||||
{{#ref}}
|
||||
../aws-privilege-escalation/aws-sso-and-identitystore-privesc/README.md
|
||||
{{#endref}}
|
||||
|
||||
### Pós Exploração
|
||||
### Pós-Exploração
|
||||
|
||||
{{#ref}}
|
||||
../aws-post-exploitation/aws-sso-and-identitystore-post-exploitation/README.md
|
||||
@@ -363,10 +375,10 @@ external_id = 123456
|
||||
aws identitystore create-user --identity-store-id <store-id> --user-name privesc --display-name privesc --emails Value=sdkabflvwsljyclpma@tmmbt.net,Type=Work,Primary=True --name Formatted=privesc,FamilyName=privesc,GivenName=privesc
|
||||
## After creating it try to login in the console using the selected username, you will receive an email with the code and then you will be able to select a password
|
||||
```
|
||||
- Crie um grupo e atribua permissões a ele e defina um usuário controlado nele
|
||||
- Dê permissões extras a um usuário ou grupo controlado
|
||||
- Por padrão, apenas usuários com permissões da Conta de Gerenciamento poderão acessar e controlar o IAM Identity Center.
|
||||
- Criar um grupo, atribuir permissões e configurar um usuário controlado nele
|
||||
- Conceder permissões extras a um usuário controlado ou a um grupo
|
||||
- Por padrão, apenas usuários com permissões da Management Account poderão acessar e controlar o IAM Identity Center.
|
||||
|
||||
No entanto, é possível, via Delegate Administrator, permitir que usuários de uma conta diferente o gerenciem. Eles não terão exatamente as mesmas permissões, mas poderão realizar [**atividades de gerenciamento**](https://docs.aws.amazon.com/singlesignon/latest/userguide/delegated-admin.html).
|
||||
No entanto, é possível, via Delegate Administrator, permitir que usuários de uma conta diferente o gerenciem. Eles não terão exatamente as mesmas permissões, mas poderão executar [**management activities**](https://docs.aws.amazon.com/singlesignon/latest/userguide/delegated-admin.html).
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
Reference in New Issue
Block a user