From ff352c1e507d5f2faf57426cf622606d813116a3 Mon Sep 17 00:00:00 2001 From: Translator Date: Thu, 23 Oct 2025 10:59:41 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/aws-security/aws-services/aws-sagemake --- .../aws-services/aws-sagemaker-enum/README.md | 88 +++++++++---------- 1 file changed, 44 insertions(+), 44 deletions(-) diff --git a/src/pentesting-cloud/aws-security/aws-services/aws-sagemaker-enum/README.md b/src/pentesting-cloud/aws-security/aws-services/aws-sagemaker-enum/README.md index dbbf69fb2..11488a6a7 100644 --- a/src/pentesting-cloud/aws-security/aws-services/aws-sagemaker-enum/README.md +++ b/src/pentesting-cloud/aws-security/aws-services/aws-sagemaker-enum/README.md @@ -2,29 +2,29 @@ {{#include ../../../../banners/hacktricks-training.md}} -## Visão geral do serviço +## Visão Geral do Serviço Amazon SageMaker é a plataforma gerenciada de machine learning da AWS que integra notebooks, infraestrutura de treinamento, orquestração, registries e endpoints gerenciados. Um comprometimento de recursos do SageMaker normalmente fornece: -- Long-lived IAM execution roles com amplo acesso a S3, ECR, Secrets Manager ou KMS. +- Roles de execução IAM de longa duração com amplo acesso a S3, ECR, Secrets Manager ou KMS. - Acesso a datasets sensíveis armazenados em S3, EFS ou dentro de feature stores. - Network footholds dentro de VPCs (Studio apps, training jobs, endpoints). -- High-privilege presigned URLs que contornam a autenticação do console. +- High-privilege presigned URLs que bypassam a autenticação do console. -Entender como o SageMaker é montado é crucial antes de pivot, persist ou exfiltrate dados. +Entender como o SageMaker é montado é chave antes de pivot, persist, or exfiltrate data. -## Componentes principais +## Core Building Blocks -- **Studio Domains & Spaces**: Web IDE (JupyterLab, Code Editor, RStudio). Cada domain tem um sistema de arquivos EFS compartilhado e um default execution role. -- **Notebook Instances**: Instâncias EC2 gerenciadas para notebooks standalone; usam execution roles separados. -- **Training / Processing / Transform Jobs**: Contêineres efêmeros que puxam código do ECR e dados do S3. -- **Pipelines & Experiments**: Workflows orquestrados que descrevem todos os passos, entradas e saídas. +- **Studio Domains & Spaces**: Web IDE (JupyterLab, Code Editor, RStudio). Cada domain tem um sistema de arquivos EFS compartilhado e execution role padrão. +- **Notebook Instances**: Instâncias EC2 gerenciadas para notebooks standalone; usam execution roles separadas. +- **Training / Processing / Transform Jobs**: Containers efêmeros que puxam código de ECR e dados de S3. +- **Pipelines & Experiments**: Workflows orquestrados que descrevem todos os passos, inputs e outputs. - **Models & Endpoints**: Artefatos empacotados implantados para inferência via endpoints HTTPS. - **Feature Store & Data Wrangler**: Serviços gerenciados para preparação de dados e gerenciamento de features. -- **Autopilot & JumpStart**: ML automatizado e catálogo de modelos curados. -- **MLflow Tracking Servers**: UI/API MLflow gerenciado com presigned access tokens. +- **Autopilot & JumpStart**: ML automatizado e catálogo de modelos curado. +- **MLflow Tracking Servers**: UI/API do MLflow gerenciada com presigned access tokens. -Cada recurso referencia um execution role, localizações S3, imagens de container e configuração opcional VPC/KMS — capture todos durante a enumeração. +Every resource references an execution role, S3 locations, container images, and optional VPC/KMS configuration—capture all of them during enumeration. ## Account & Global Metadata ```bash @@ -39,9 +39,9 @@ aws sagemaker list-models --region $REGION --query 'Models[].ExecutionRoleArn' - # Generic tag sweep across any SageMaker ARN you know aws sagemaker list-tags --resource-arn --region $REGION ``` -Anote qualquer confiança entre contas (roles de execução ou buckets S3 com entidades externas) e restrições básicas, como service control policies ou SCPs. +Anote qualquer confiança entre contas (cross-account) (execution roles ou S3 buckets com principals externos) e restrições básicas, como service control policies ou SCPs. -## Domínios do Studio, Apps e Shared Spaces +## Domínios, Apps e Shared Spaces do Studio ```bash aws sagemaker list-domains --region $REGION aws sagemaker describe-domain --domain-id --region $REGION @@ -63,26 +63,26 @@ aws sagemaker describe-studio-lifecycle-config --studio-lifecycle-config-name [!TIP] -> URLs de Studio pré-assinadas podem contornar a autenticação se concedidas amplamente. +> Presigned Studio URLs podem contornar a autenticação se forem concedidos amplamente. -## Instâncias de Notebook & Configurações de Lifecycle +## Instâncias de Notebook e Configurações de Ciclo de Vida ```bash aws sagemaker list-notebook-instances --region $REGION aws sagemaker describe-notebook-instance --notebook-instance-name --region $REGION aws sagemaker list-notebook-instance-lifecycle-configs --region $REGION aws sagemaker describe-notebook-instance-lifecycle-config --notebook-instance-lifecycle-config-name --region $REGION ``` -Metadados do notebook revelam: +Os metadados do notebook revelam: -- Função de execução (`RoleArn`), acesso direto à internet vs. modo somente VPC. -- Locais S3 em `DefaultCodeRepository`, `DirectInternetAccess`, `RootAccess`. +- Função de execução (`RoleArn`), acesso direto à Internet vs. modo apenas VPC. +- Localizações S3 em `DefaultCodeRepository`, `DirectInternetAccess`, `RootAccess`. - Scripts de ciclo de vida para credenciais ou ganchos de persistência. -## Treinamento, Processamento, Transform & Batch Jobs +## Treinamento, Processamento, Transformação e Tarefas em Lote ```bash aws sagemaker list-training-jobs --region $REGION aws sagemaker describe-training-job --training-job-name --region $REGION @@ -93,12 +93,12 @@ aws sagemaker describe-processing-job --processing-job-name --region $REGI aws sagemaker list-transform-jobs --region $REGION aws sagemaker describe-transform-job --transform-job-name --region $REGION ``` -Inspecione: +Analise: - `AlgorithmSpecification.TrainingImage` / `AppSpecification.ImageUri` – quais imagens ECR estão implantadas. -- `InputDataConfig` & `OutputDataConfig` – buckets S3, prefixos, e chaves KMS. -- `ResourceConfig.VolumeKmsKeyId`, `VpcConfig`, `EnableNetworkIsolation` – determinar a postura de rede ou de criptografia. -- `HyperParameters` may leak segredos de ambiente ou strings de conexão. +- `InputDataConfig` & `OutputDataConfig` – S3 buckets, prefixes e KMS keys. +- `ResourceConfig.VolumeKmsKeyId`, `VpcConfig`, `EnableNetworkIsolation` – determinam a postura de rede ou de criptografia. +- `HyperParameters` podem leak segredos de ambiente ou connection strings. ## Pipelines, Experiments & Trials ```bash @@ -110,7 +110,7 @@ aws sagemaker list-experiments --region $REGION aws sagemaker list-trials --experiment-name --region $REGION aws sagemaker list-trial-components --trial-name --region $REGION ``` -As definições de pipeline descrevem cada etapa, as funções associadas, imagens de contêiner e variáveis de ambiente. Componentes de Trial frequentemente contêm URIs de artefatos de treinamento, logs do S3 e métricas que sugerem fluxo de dados sensíveis. +As definições de pipeline detalham cada etapa, as funções associadas, as imagens de contêiner e as variáveis de ambiente. Componentes de trial frequentemente contêm URIs de artefatos de treinamento, logs do S3 e métricas que sugerem fluxo de dados sensíveis. ## Modelos, Configurações de Endpoint & Endpoints Implantados ```bash @@ -126,9 +126,9 @@ aws sagemaker describe-endpoint --endpoint-name --region $REGION Áreas de foco: - URIs S3 dos artefatos de modelo (`PrimaryContainer.ModelDataUrl`) e imagens de container de inferência. -- Configuração de captura de dados do endpoint (S3 bucket, KMS) para possível log exfil. +- Configuração de captura de dados de endpoint (S3 bucket, KMS) para possível exfiltração de logs. - Endpoints multi-model usando `S3DataSource` ou `ModelPackage` (verificar empacotamento entre contas). -- Configurações de rede e security groups anexados aos endpoints. +- Configurações de rede e security groups associados aos endpoints. ## Feature Store, Data Wrangler & Clarify ```bash @@ -141,11 +141,11 @@ aws sagemaker describe-data-wrangler-flow --flow-name --region $REGION aws sagemaker list-model-quality-job-definitions --region $REGION aws sagemaker list-model-monitoring-schedule --region $REGION ``` -Principais pontos de segurança: +Pontos de segurança: - Online feature stores replicam dados para Kinesis; verifique `OnlineStoreConfig.SecurityConfig.KmsKeyId` e VPC. -- Data Wrangler flows frequentemente incorporam credenciais JDBC/Redshift ou endpoints privados. -- Jobs Clarify/Model Monitor exportam dados para S3 que podem ser legíveis publicamente (world-readable) ou acessíveis entre contas. +- Fluxos do Data Wrangler frequentemente incorporam credenciais JDBC/Redshift ou endpoints privados. +- Jobs do Clarify/Model Monitor exportam dados para S3 que podem ser legíveis publicamente ou acessíveis entre contas. ## MLflow Tracking Servers, Autopilot & JumpStart ```bash @@ -158,41 +158,41 @@ aws sagemaker describe-auto-ml-job --auto-ml-job-name --region $REGION aws sagemaker list-jumpstart-models --region $REGION aws sagemaker list-jumpstart-script-resources --region $REGION ``` -- MLflow tracking servers store experiments and artefacts; URLs pré-assinadas podem expor tudo. -- Autopilot jobs iniciam múltiplos training jobs — enumerate outputs em busca de dados ocultos. -- JumpStart reference architectures podem implantar funções privilegiadas na conta. +- MLflow tracking servers armazenam experimentos e artefatos; presigned URLs podem expor tudo. +- Autopilot jobs disparam múltiplos training jobs — enumere os outputs em busca de dados ocultos. +- JumpStart reference architectures podem implantar roles privilegiados na conta. -## Considerações de IAM & Rede +## IAM & Networking Considerations -- Enumerate políticas IAM anexadas a todas as execution roles (Studio, notebooks, training jobs, pipelines, endpoints). -- Verifique os contextos de rede: subnets, security groups, VPC endpoints. Muitas organizações isolam training jobs mas esquecem de restringir o tráfego de saída. -- Revise políticas de bucket S3 referenciadas em `ModelDataUrl`, `DataCaptureConfig`, `InputDataConfig` quanto ao acesso externo. +- Enumere políticas IAM anexadas a todos os roles de execução (Studio, notebooks, training jobs, pipelines, endpoints). +- Verifique contextos de rede: subnets, security groups, VPC endpoints. Muitas organizações isolam training jobs mas esquecem de restringir o tráfego de saída. +- Revise políticas de bucket S3 referenciadas em `ModelDataUrl`, `DataCaptureConfig`, `InputDataConfig` para acesso externo. -## Escalada de Privilégios +## Privilege Escalation {{#ref}} ../../aws-privilege-escalation/aws-sagemaker-privesc/README.md {{#endref}} -## Persistência +## Persistence {{#ref}} ../../aws-persistence/aws-sagemaker-persistence/README.md {{#endref}} -## Pós-Exploração +## Post-Exploitation {{#ref}} ../../aws-post-exploitation/aws-sagemaker-post-exploitation/README.md {{#endref}} -## Acesso Não Autorizado +## Unauthorized Access {{#ref}} ../../aws-unauthenticated-enum-access/aws-sagemaker-unauthenticated-enum/README.md {{#endref}} -## Referências +## References - [AWS SageMaker Documentation](https://docs.aws.amazon.com/sagemaker/latest/dg/whatis.html) - [AWS CLI SageMaker Reference](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/index.html)