Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo descrive come configurare l'ambiente AWS in modo che Microsoft Sentinel possano eseguire azioni automatizzate su un utente che assume un ruolo SAML o su un account AWS IAM quando viene attivato un avviso. La interruzione automatica degli attacchi in Microsoft Defender XDR utilizza segnali ad alta fiducia per contenere asset compromessi e limitare i danni derivanti dagli attacchi, incluse le azioni sulle identità in AWS. Prima di iniziare, assicurarsi che siano soddisfatti i prerequisiti necessari per AWS e Microsoft Sentinel.
Prerequisiti
Prima di iniziare, sono necessari i prerequisiti seguenti:
- Si dispone di un account AWS attivo con privilegi amministrativi.
- L'area di lavoro Microsoft Sentinel analytics è connessa al portale delle operazioni di sicurezza unificato.
- L'AWS Connector per Microsoft Sentinel viene implementato e abilitato.
- I log AWS CloudTrail vengono assorbiti in Microsoft Sentinel; vedi Connetti Microsoft Sentinel ad Amazon Web Services per acquisire i dati dei log dei servizi AWS.
- I ruoli e le autorizzazioni di IAM appropriati vengono configurati in AWS per consentire a Microsoft Sentinel di eseguire azioni sugli account IAM.
- La soluzione Amazon Web Services è installata da Content Hub in Microsoft Sentinel in modo che il connettore Amazon Web Services S3 appaia nella galleria dei connettori dati.
Passaggio 1: Preparare AWS per l'integrazione
Completare le attività seguenti per preparare l'ambiente AWS per l'integrazione di Microsoft Sentinel.
1.1 Creare un ruolo IAM dedicato per Microsoft Sentinel
Creare un nuovo ruolo IAM nella console di gestione AWS.
Selezionare il servizio AWS come entità attendibile e scegliere EC2 come segnaposto temporaneo. Sostituire questa relazione di trust con l'identità corretta di Microsoft Sentinel in Configurare la relazione di trust.
Allegare i criteri IAM seguenti al ruolo. Questo criterio concede a Microsoft Sentinel le autorizzazioni necessarie per gestire i criteri IAM di utenti e ruoli per le azioni di interruzione degli attacchi. Sostituire <YOUR_ACCOUNT_ID> in base alle esigenze:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:DeleteRolePolicy", "iam:PutUserPolicy", "iam:AttachUserPolicy", "iam:ListUserPolicies", "iam:PutRolePolicy", "iam:GetUser", "iam:DetachUserPolicy", "iam:GetRolePolicy", "iam:DeleteUserPolicy", ], "Resource": "*" } ] }
1.2 Configurare la relazione di trust
Creare criteri di attendibilità personalizzati per il ruolo IAM.
Usare i criteri di attendibilità seguenti, specificando l'entità di integrazione di Microsoft Sentinel (sostituire <YOUR_AZURE_SUBSCRIPTION_ID> con l'ID sottoscrizione di Azure effettivo):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com",
"AWS": "arn:aws:iam::<YOUR_AZURE_SUBSCRIPTION_ID>:root"
},
"Action": "sts:AssumeRole"
}
]
}
Passaggio 2: Abilitare CloudTrail
Abilitare la registrazione di CloudTrail in tutte le aree AWS in modo che Microsoft Sentinel possa ricevere i dati di attività necessari.
Nella console di AWS passare a CloudTrail.
Assicurarsi che cloudtrail sia abilitato e che la registrazione sia attiva per tutte le aree.
Passaggio 3: Distribuire e abilitare il connettore AWS in Microsoft Sentinel
Distribuire e abilitare il connettore dati AWS S3 in Microsoft Sentinel in modo che possa ricevere i dati di log dall'ambiente AWS. Prima di iniziare, assicurarsi che la soluzione Amazon Web Services sia installata da Content Hub in Microsoft Sentinel in modo che il connettore Amazon Web Services S3 venga visualizzato nella raccolta connettori dati.
Nel portale di Azure passare a Microsoft Sentinel > Connettori dati.
Selezionare Amazon Web Services S3 dalla raccolta di connettori dati.
Seguire le istruzioni in Connettere Microsoft Sentinel ad Amazon Web Services per inserire i dati di log del servizio AWS per configurare l'ambiente AWS e connetterlo a Microsoft Sentinel.
Specificare l'ARN del ruolo IAM e l'URL della coda Amazon SQS che riceve le notifiche dei log di S3 dal tuo ambiente AWS. Questi valori vengono creati quando si configura il connettore seguendo Connect Microsoft Sentinel to Amazon Web Services per acquisire i dati dei log dei servizi AWS.
Passaggio 4: Convalidare l'integrazione
Usare i controlli seguenti per verificare che l'integrazione del connettore AWS funzioni correttamente.
In Microsoft Sentinel verificare che lo stato del connettore sia Connesso.
Verificare l'integrità dell'inserimento dei log e del connettore usando la tabella di diagnostica SentinelHealth, che segnala lo stato di integrità del connettore e dell'inserimento nell'area di lavoro Analisi dei log. Controllare anche lo stato della coda SQS di AWS per verificare che le notifiche dei log siano in corso di elaborazione.
In AWS verificare che gli eventi CloudTrail e GuardDuty vengano inviati a Microsoft Sentinel.
Passaggio 5: Testare l'integrazione
Eseguire il test seguente per verificare che le azioni di risposta alle interruzioni degli attacchi automatizzate funzionino come previsto.
Attivare un avviso di test in AWS (ad esempio, compromissione simulata delle credenziali).
Verificare che Microsoft Sentinel possano eseguire le azioni configurate sull'account IAM interessato.
Esaminare i log di controllo in AWS e Microsoft Sentinel per verificare la corretta esecuzione.
Passaggio 6: Monitorare e gestire
Usare le procedure seguenti per monitorare e gestire l'integrazione nel tempo.
- Esaminare regolarmente le autorizzazioni dei ruoli IAM e i log di controllo in AWS.
- Aggiornare le regole analitiche e i playbook di automazione di Microsoft Sentinel secondo necessità, in modo da rispecchiare le modifiche nel tuo ambiente AWS.
- Monitorare gli avvisi e le azioni di risposta nel portale di Microsoft Sentinel.
Gli script seguenti automatizzano la configurazione del ruolo AWS IAM e del provider OIDC per l'integrazione di Microsoft Sentinel con AWS per abilitare l'interruzione degli attacchi:
Lo script Bash seguente automatizza la configurazione del provider OIDC AWS e la creazione di ruoli IAM per l'integrazione Microsoft Sentinel. Prima di eseguirla, assicurarsi che l'interfaccia della riga di comando di AWS sia installata e autenticata con un account con autorizzazioni amministrative IAM. Salvare il frammento di codice come file bash ed eseguirlo.
#!/bin/bash
# AWS Sentinel OIDC Setup Script
# Configures IAM roles and policies for Microsoft Sentinel integration
set -e # Exit on error
# Color codes for output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m' # No Color
ms_federated_endpoint="sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d"
actions_audience="api://b7c1e142-0933-4310-ba00-8b28878bfece"
role_name="OIDC_Actions_Sentinel"
policy_name="SentinelActionsPolicy"
# Verify AWS credentials are configured
echo -e "${CYAN}Verifying AWS credentials...${NC}"
if ! account_id=$(aws sts get-caller-identity --query Account --output text 2>&1); then
echo -e "\n${RED}ERROR: AWS credentials not configured or invalid${NC}"
echo -e "${RED}Details: $account_id${NC}"
echo -e "\n${YELLOW}Please authenticate using one of these methods:${NC}"
echo -e "${YELLOW} 1. Run 'aws configure' to set up credentials${NC}"
echo -e "${YELLOW} 2. Set AWS environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)${NC}"
echo -e "${YELLOW} 3. Use 'aws sso login --profile <profile-name>' for SSO${NC}"
exit 1
fi
echo -e "${GREEN}✓ AWS authenticated (Account: $account_id)${NC}"
trust_policy_document=$(cat << EOM
{
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::$account_id:oidc-provider/$ms_federated_endpoint/"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"$ms_federated_endpoint/:aud": "$actions_audience",
"sts:RoleSessionName": "MicrosoftSentinel_$account_id"
}
}
}
]
}
EOM
)
permissions_policy_document=$(cat << EOM
{
"Statement": [
{
"Sid": "SentinelActionsPermissions",
"Effect": "Allow",
"Action": [
"iam:GetUserPolicy",
"iam:DeleteRolePolicy",
"iam:PutUserPolicy",
"iam:AttachUserPolicy",
"iam:ListUserPolicies",
"iam:PutRolePolicy",
"iam:GetUser",
"iam:DetachUserPolicy",
"iam:GetRolePolicy",
"iam:DeleteUserPolicy",
"s3:PutBucketPublicAccessBlock"
],
"Resource": "*"
}
]
}
EOM
)
aws iam add-client-id-to-open-id-connect-provider --open-id-connect-provider-arn arn:aws:iam::$account_id:oidc-provider/$ms_federated_endpoint/ --client-id $actions_audience
aws iam create-role --role-name $role_name --assume-role-policy-document "$trust_policy_document" || aws iam update-assume-role-policy --role-name $role_name --policy-document "$trust_policy_document"
aws iam put-role-policy --role-name $role_name --policy-name $policy_name --policy-document "$permissions_policy_document"