mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-26 20:54:14 -08:00
Translated ['src/pentesting-cloud/aws-security/aws-services/aws-sagemake
This commit is contained in:
@@ -4,29 +4,29 @@
|
||||
|
||||
## Diens Oorsig
|
||||
|
||||
Amazon SageMaker is AWS' beheerde masjienleer-platform wat notaboeke, training infrastructure, orkestrasie, registries, en beheerde endpoints aanmekaar heg. 'n Kompromie van SageMaker-resources bied tipies:
|
||||
Amazon SageMaker is AWS' beheerde machine-learning platform wat notebooks, training-infrastruktuur, orkestrasie, registrasies, en beheerde endpoints bymekaar bind. 'n Kompromie van SageMaker-bronne verskaf tipies:
|
||||
|
||||
- Langdurige IAM-uitvoeringsrolle met wye toegang tot S3, ECR, Secrets Manager, of KMS.
|
||||
- Toegang tot gevoelige datastelle gestoor in S3, EFS, of binne feature stores.
|
||||
- Netwerkvoetings binne VPCs (Studio apps, training jobs, endpoints).
|
||||
- Hoë-privilegie presigned URLs wat konsole-authentisering omseil.
|
||||
- Langlewendige IAM execution roles met wye toegang tot S3, ECR, Secrets Manager, of KMS.
|
||||
- Toegang tot sensitiewe datastelle gestoor in S3, EFS, of binne feature stores.
|
||||
- Netwerk-voete binne VPCs (Studio apps, training jobs, endpoints).
|
||||
- Hoog-privilegie presigned URLs wat console authentication omseil.
|
||||
|
||||
Om te verstaan hoe SageMaker saamgestel is, is noodsaaklik voordat jy pivot, persist, of exfiltrate data.
|
||||
Om te verstaan hoe SageMaker saamgestel is, is sleutel voordat jy pivot, persist, of exfiltrate data.
|
||||
|
||||
## Kernboublokke
|
||||
## Kern Boublokke
|
||||
|
||||
- **Studio Domains & Spaces**: Web IDE (JupyterLab, Code Editor, RStudio). Elke domain het 'n gedeelde EFS-lêerstelsel en 'n standaard uitvoeringsrol.
|
||||
- **Notebook Instances**: Beheerde EC2-instanse vir onafhanklike notebooks; gebruik aparte uitvoeringsrolle.
|
||||
- **Training / Processing / Transform Jobs**: Tydelike kontainers wat kode van ECR en data van S3 trek.
|
||||
- **Pipelines & Experiments**: Gekoördineerde workflows wat alle stappe, insette, en uitsette beskryf.
|
||||
- **Models & Endpoints**: Verpakte artefakte ontplooi vir inferensie via HTTPS endpoints.
|
||||
- **Feature Store & Data Wrangler**: Beheerde dienste vir data-voorbereiding en feature-bestuur.
|
||||
- **Autopilot & JumpStart**: Geautomatiseerde ML en 'n gekeurde modelkatalogus.
|
||||
- **MLflow Tracking Servers**: Beheerde MLflow UI/API met presigned toegangstokens.
|
||||
- **Studio Domains & Spaces**: Web IDE (JupyterLab, Code Editor, RStudio). Elke domain het 'n gedeelde EFS file system en 'n default execution role.
|
||||
- **Notebook Instances**: Managed EC2 instances vir standalone notebooks; gebruik aparte execution roles.
|
||||
- **Training / Processing / Transform Jobs**: Ephemeral containers wat code van ECR en data van S3 haal.
|
||||
- **Pipelines & Experiments**: Orkestrasie-workflows wat alle stappe, insette, en uitsette beskryf.
|
||||
- **Models & Endpoints**: Gepakkeerde artefakte gedeploy vir inference via HTTPS endpoints.
|
||||
- **Feature Store & Data Wrangler**: Managed services vir data-voorbereiding en feature-bestuur.
|
||||
- **Autopilot & JumpStart**: Outomatiese ML en 'n gekuratoreerde model catalogue.
|
||||
- **MLflow Tracking Servers**: Managed MLflow UI/API met presigned access tokens.
|
||||
|
||||
Elke hulpbron verwys na 'n uitvoeringsrol, S3-ligginge, kontainerbeelde, en opsionele VPC/KMS-konfigurasie—vang al hulle tydens enumerasie.
|
||||
Elke bron verwys na 'n execution role, S3-lokasies, container images, en opsionele VPC/KMS-konfigurasie — vang almal tydens enumeration.
|
||||
|
||||
## Rekening- en globale metadata
|
||||
## Rekening & Globale Metadata
|
||||
```bash
|
||||
REGION=us-east-1
|
||||
# Portfolio status, used when provisioning Studio resources
|
||||
@@ -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 <sagemaker-arn> --region $REGION
|
||||
```
|
||||
Neem kennis van enige cross-account trust (execution roles of S3 buckets met external principals) en basiese beperkings soos service control policies of SCPs.
|
||||
Neem kennis van enige cross-account trust (execution roles of S3 buckets met external principals) en grondlynbeperkings soos service control policies of SCPs.
|
||||
|
||||
## Studio-domeine, apps & gedeelde ruimtes
|
||||
## Studio Domains, Apps & Shared Spaces
|
||||
```bash
|
||||
aws sagemaker list-domains --region $REGION
|
||||
aws sagemaker describe-domain --domain-id <domain-id> --region $REGION
|
||||
@@ -63,13 +63,13 @@ aws sagemaker describe-studio-lifecycle-config --studio-lifecycle-config-name <n
|
||||
Wat om op te neem:
|
||||
|
||||
- `DomainArn`, `AppSecurityGroupIds`, `SubnetIds`, `DefaultUserSettings.ExecutionRole`.
|
||||
- Gemonteerde EFS (`HomeEfsFileSystemId`) en S3 tuismappe.
|
||||
- Lifecycle-skripte (bevat dikwels bootstrap credentials of push/pull ekstra kode).
|
||||
- Gemonteerde EFS (`HomeEfsFileSystemId`) en S3-tuismappe.
|
||||
- Lifecycle-skripte (bevat dikwels bootstrap credentials of ekstra push/pull-kode).
|
||||
|
||||
> [!TIP]
|
||||
> Presigned Studio URLs kan verifikasie omseil as hulle wyd toegeken is.
|
||||
> Presigned Studio URLs kan verifikasie omseil as dit wyd toegestaan word.
|
||||
|
||||
## Notebook Instances & Lifecycle Configs
|
||||
## Notebook-instances & Lifecycle-konfigurasies
|
||||
```bash
|
||||
aws sagemaker list-notebook-instances --region $REGION
|
||||
aws sagemaker describe-notebook-instance --notebook-instance-name <name> --region $REGION
|
||||
@@ -78,11 +78,11 @@ aws sagemaker describe-notebook-instance-lifecycle-config --notebook-instance-li
|
||||
```
|
||||
Notebook-metadata openbaar:
|
||||
|
||||
- Uitvoeringsrol (`RoleArn`), direkte internettoegang vs. VPC-slegs-modus.
|
||||
- S3-lokaliteite in `DefaultCodeRepository`, `DirectInternetAccess`, `RootAccess`.
|
||||
- Uitvoeringsrol (`RoleArn`), direkte internettoegang vs. slegs VPC-modus.
|
||||
- S3-liggings in `DefaultCodeRepository`, `DirectInternetAccess`, `RootAccess`.
|
||||
- Lewensiklus-skripte vir credentials of persistence hooks.
|
||||
|
||||
## Opleiding, Verwerking, Transformasie & Batch-jobs
|
||||
## Opleiding, Verwerking, Transformasie & Batch Jobs
|
||||
```bash
|
||||
aws sagemaker list-training-jobs --region $REGION
|
||||
aws sagemaker describe-training-job --training-job-name <job> --region $REGION
|
||||
@@ -95,10 +95,10 @@ aws sagemaker describe-transform-job --transform-job-name <job> --region $REGION
|
||||
```
|
||||
Ondersoek:
|
||||
|
||||
- `AlgorithmSpecification.TrainingImage` / `AppSpecification.ImageUri` – watter ECR images ontplooi word.
|
||||
- `InputDataConfig` & `OutputDataConfig` – S3 buckets, voorvoegsels en KMS-sleutels.
|
||||
- `ResourceConfig.VolumeKmsKeyId`, `VpcConfig`, `EnableNetworkIsolation` – bepaal netwerk- of enkripsie-opstelling.
|
||||
- `HyperParameters` kan omgewingsgeheime of verbindingsstringe leak.
|
||||
- `AlgorithmSpecification.TrainingImage` / `AppSpecification.ImageUri` – watter ECR images ontplooi is.
|
||||
- `InputDataConfig` & `OutputDataConfig` – S3-buckets, voorvoegsels, en KMS-sleutels.
|
||||
- `ResourceConfig.VolumeKmsKeyId`, `VpcConfig`, `EnableNetworkIsolation` – bepaal netwerk- of enkripsiehouding.
|
||||
- `HyperParameters` mag leak omgewingsgeheime of verbindingsstringe.
|
||||
|
||||
## Pipelines, Eksperimente & Proewe
|
||||
```bash
|
||||
@@ -110,7 +110,7 @@ aws sagemaker list-experiments --region $REGION
|
||||
aws sagemaker list-trials --experiment-name <experiment> --region $REGION
|
||||
aws sagemaker list-trial-components --trial-name <trial> --region $REGION
|
||||
```
|
||||
Pyplyn-definisies beskryf elke stap, verwante rolle, kontainerbeelde en omgewingsveranderlikes. Proefkomponente bevat dikwels opleidingsartefak-URIs, S3 logs en metrieks wat dui op sensitiewe datavloei.
|
||||
Pipeline-definisies beskryf elke stap, die geassosieerde rolle, houerbeelde en omgewingsveranderlikes. Proefkomponente bevat dikwels opleidings-artefak-URIs, S3 logs, en metrieke wat op sensitiewe datavloei dui.
|
||||
|
||||
## Modelle, Eindpuntkonfigurasies & Ontplooide Eindpunte
|
||||
```bash
|
||||
@@ -125,10 +125,10 @@ aws sagemaker describe-endpoint --endpoint-name <endpoint> --region $REGION
|
||||
```
|
||||
Fokusgebiede:
|
||||
|
||||
- Model-artefak S3 URIs (`PrimaryContainer.ModelDataUrl`) en inference container images.
|
||||
- Modelartefak S3 URIs (`PrimaryContainer.ModelDataUrl`) en inferensie container-beelde.
|
||||
- Endpoint data capture-konfigurasie (S3 bucket, KMS) vir moontlike log exfil.
|
||||
- Multi-model endpoints wat `S3DataSource` of `ModelPackage` gebruik (kontroleer vir cross-account packaging).
|
||||
- Netwerk-konfigurasies en security groups wat aan endpoints gekoppel is.
|
||||
- Multi-model endpoints wat `S3DataSource` of `ModelPackage` gebruik (kontroleer vir cross-account verpakking).
|
||||
- Netwerkkonfigurasies en sekuriteitsgroepe wat aan endpunte gekoppel is.
|
||||
|
||||
## Feature Store, Data Wrangler & Clarify
|
||||
```bash
|
||||
@@ -141,13 +141,13 @@ aws sagemaker describe-data-wrangler-flow --flow-name <flow> --region $REGION
|
||||
aws sagemaker list-model-quality-job-definitions --region $REGION
|
||||
aws sagemaker list-model-monitoring-schedule --region $REGION
|
||||
```
|
||||
Sekuriteitsopsomming:
|
||||
Sekuriteitsbelangrike punte:
|
||||
|
||||
- Online feature stores repliseer data na Kinesis; kontroleer `OnlineStoreConfig.SecurityConfig.KmsKeyId` en VPC.
|
||||
- Data Wrangler flows bevat dikwels ingebedde JDBC/Redshift-inlogbewyse of private endpoints.
|
||||
- Clarify/Model Monitor-jobs voer data uit na S3 wat dalk wêreldleesbaar of kruis-rekening-toeganklik kan wees.
|
||||
- Online feature stores repliceer data na Kinesis; kyk na `OnlineStoreConfig.SecurityConfig.KmsKeyId` en VPC.
|
||||
- Data Wrangler flows bevat dikwels ingeslote JDBC/Redshift credentials of private endpoints.
|
||||
- Clarify/Model Monitor jobs voer data uit na S3 wat moontlik wêreldwyd leesbaar of vanuit ander rekeninge toeganklik is.
|
||||
|
||||
## MLflow Opsporingsbedieners, Autopilot & JumpStart
|
||||
## MLflow Tracking Servers, Autopilot & JumpStart
|
||||
```bash
|
||||
aws sagemaker list-mlflow-tracking-servers --region $REGION
|
||||
aws sagemaker describe-mlflow-tracking-server --tracking-server-name <name> --region $REGION
|
||||
@@ -158,15 +158,15 @@ aws sagemaker describe-auto-ml-job --auto-ml-job-name <name> --region $REGION
|
||||
aws sagemaker list-jumpstart-models --region $REGION
|
||||
aws sagemaker list-jumpstart-script-resources --region $REGION
|
||||
```
|
||||
- MLflow tracking-bedieners berg eksperimente en artefakte; presigned URLs kan alles blootstel.
|
||||
- Autopilot jobs voer verskeie training jobs uit — ondersoek die uitsette vir versteekte data.
|
||||
- JumpStart reference architectures kan geprivilegieerde rolle in die account ontplooi.
|
||||
- MLflow tracking servers stoor eksperimente en artefakte; presigned URLs kan alles blootstel.
|
||||
- Autopilot jobs laat verskeie training jobs loop — lys die uitsette vir verborge data.
|
||||
- JumpStart reference architectures kan privileged roles in die rekening ontplooi.
|
||||
|
||||
## IAM & Netwerk-oorwegings
|
||||
|
||||
- Lys IAM-beleid wat aan alle uitvoeringsrolle gekoppel is (Studio, notebooks, training jobs, pipelines, endpoints).
|
||||
- Kontroleer netwerk-kontekste: subnets, security groups, VPC endpoints. Baie organisasies isoleer training jobs maar vergeet om uitgaande verkeer te beperk.
|
||||
- Hersien S3 bucket policies wat in `ModelDataUrl`, `DataCaptureConfig`, `InputDataConfig` verwys word vir eksterne toegang.
|
||||
- Hersien S3-bucketbeleid wat in `ModelDataUrl`, `DataCaptureConfig`, `InputDataConfig` genoem word vir eksterne toegang.
|
||||
|
||||
## Privilege Escalation
|
||||
|
||||
|
||||
Reference in New Issue
Block a user