Esempi di GuardDuty che utilizzano la AWS CLI
Negli esempi di codice seguenti viene mostrato come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface con GuardDuty.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare accept-invitation.
- AWS CLI
-
Come accettare un invito a diventare account membro GuardDuty nella Regione corrente
L’esempio
accept-invitationseguente illustra come accettare un invito a diventare un account membro GuardDuty nella Regione corrente.aws guardduty accept-invitation \ --detector-id12abc34d567e8fa901bc2d34eexample\ --master-id123456789111\ --invitation-idd6b94fb03a66ff665f7db8764exampleQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Managing GuardDuty accounts by invitation nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta AcceptInvitation
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare archive-findings.
- AWS CLI
-
Come archiviare gli esiti nella Regione corrente
In questo esempio
archive-findingsviene mostrato come archiviare gli esiti nella Regione corrente.aws guardduty archive-findings \ --detector-id12abc34d567e8fa901bc2d34eexample\ --finding-idsd6b94fb03a66ff665f7db8764example3eb970e0de00c16ec14e6910fexampleQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Creating suppression rules nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ArchiveFindings
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-detector.
- AWS CLI
-
Come abilitare GuardDuty nella Regione corrente
In questo esempio viene mostrato come creare un nuovo rilevatore, che abiliti GuardDuty, nella Regione corrente:
aws guardduty create-detector \ --enableOutput:
{ "DetectorId": "b6b992d6d2f48e64bc59180bfexample" }Per ulteriori informazioni, consulta Enable Amazon GuardDuty nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateDetector
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-filter.
- AWS CLI
-
Esempio 1: come creare un nuovo filtro nella Regione corrente
L’esempio
create-filterseguente crea un filtro che corrisponde a tutti gli esiti di Portscan per l’istanza creata da un’immagine specifica. Tali esiti non vengono soppressi.aws guardduty create-filter \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --namemyFilterExample\ --finding-criteria '{"Criterion": {"type": {"Eq": ["Recon:EC2/Portscan"]},"resource.instanceDetails.imageId": {"Eq": ["ami-0a7a207083example"]}}}'Output:
{ "Name": "myFilterExample" }Per ulteriori informazioni, consulta Filtering GuardDuty findings nella Guida per l’utente di GuardDuty.
Esempio 2: come creare un nuovo filtro ed eliminare gli esiti nella Regione corrente
L’esempio
create-filterseguente crea un filtro che corrisponde a tutti gli esiti di Portscan per l’istanza creata da un’immagine specifica. Questo filtro archivia tali esiti in modo che non compaiano negli esiti correnti.aws guardduty create-filter \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --actionARCHIVE\ --namemyFilterSecondExample\ --finding-criteria '{"Criterion": {"type": {"Eq": ["Recon:EC2/Portscan"]},"resource.instanceDetails.imageId": {"Eq": ["ami-0a7a207083example"]}}}'Output:
{ "Name": "myFilterSecondExample" }Per ulteriori informazioni, consulta Filtering GuardDuty findings nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateFilter
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-ip-set.
- AWS CLI
-
Come creare e attivare un set di IP attendibili
L’esempio
create-ip-setseguente crea e attiva un set di IP attendibili nella Regione corrente.aws guardduty create-ip-set \ --detector-id12abc34d567e8fa901bc2d34eexample\ --namenew-ip-set-example\ --formatTXT\ --locations3://amzn-s3-demo-bucket/customtrustlist.csv\ --activateOutput:
{ "IpSetId": "d4b94fc952d6912b8f3060768example" }Per ulteriori informazioni, consulta Working with Trusted IP Lists and Threat Lists nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateIpSet
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-members.
- AWS CLI
-
Come associare un nuovo membro al tuo account master GuardDuty nella Regione corrente
In questo esempio viene mostrato come associare gli account membro che devono essere gestiti dall’account corrente come master GuardDuty.
aws guardduty create-members --detector-idb6b992d6d2f48e64bc59180bfexample\ --account-detailsAccountId=111122223333,Email=first+member@example.comAccountId=111111111111,Email=another+member@example.comOutput:
{ "UnprocessedAccounts": [] }Per ulteriori informazioni, consulta Managing multiple accounts nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateMembers
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-publishing-destination.
- AWS CLI
-
Come creare una destinazione di pubblicazione in cui esportare gli esiti di GuardDuty nella Regione corrente
L’esempio
create-publishing-destinationseguente mostra come impostare una destinazione di pubblicazione per esportare gli esiti GuardDuty correnti (non archiviati) per tracciarne i dati storici.aws guardduty create-publishing-destination \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --destination-typeS3\ --destination-properties 'DestinationArn=arn:aws:s3:::amzn-s3-demo-bucket,KmsKeyArn=arn:aws:kms:us-west-1:111122223333:key/84cee9c5-dea1-401a-ab6d-e1de7example'Output:
{ "DestinationId": "46b99823849e1bbc242dfbe3cexample" }Per ulteriori informazioni, consulta Exporting generated GuardDuty findings to Amazon S3 buckets nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreatePublishingDestination
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-sample-findings.
- AWS CLI
-
Come creare esiti GuardDuty di esempio nella Regione corrente
In questo esempio viene mostrato come creare un esito di esempio dei tipi forniti.
aws guardduty create-sample-findings \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --finding-typesUnauthorizedAccess:EC2/TorClientUnauthorizedAccess:EC2/TorRelayQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Sample findings nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateSampleFindings
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-threat-intel-set.
- AWS CLI
-
Come creare e attivare un nuovo set di informazioni sulle minacce
L’esempio
create-threat-intel-setseguente crea e attiva un set di intelligence delle minacce nella Regione corrente.aws guardduty create-threat-intel-set \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --namemyThreatSet-example\ --formatTXT\ --locations3://amzn-s3-demo-bucket/threatlist.csv\ --activateOutput:
{ "ThreatIntelSetId": "20b9a4691aeb33506b808878cexample" }Per ulteriori informazioni, consulta Working with Trusted IP Lists and Threat Lists nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta CreateThreatIntelSet
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare decline-invitations.
- AWS CLI
-
Come rifiutare un invito a far gestire GuardDuty da un altro account nella Regione corrente
In questo esempio viene mostrato come rifiutare un invito all’iscrizione.
aws guardduty decline-invitations \ --account-ids111122223333Output:
{ "UnprocessedAccounts": [] }Per ulteriori informazioni, consulta Managing GuardDuty accounts by invitation nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta DeclineInvitations
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-detector.
- AWS CLI
-
Come eliminare un rilevatore e disabilitare GuardDuty nella Regione corrente
In questo esempio viene mostrato come eliminare un rilevatore. Se ha esito positivo, l’operazione disabiliterà GuardDuty nella Regione associata a tale rilevatore.
aws guardduty delete-detector \ --detector-idb6b992d6d2f48e64bc59180bfexampleQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Suspending or disabling GuardDuty nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta DeleteDetector
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-filter.
- AWS CLI
-
Come eliminare un filtro esistente nella Regione corrente
In questo esempio viene mostrato come creare ed eliminare un filtro.
aws guardduty delete-filter \ --detector-idb6b992d6d2f48e64bc59180bfexample\ --filter-namebyebyeFilterQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Filtering Findings nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta DeleteFilter
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare disable-organization-admin-account.
- AWS CLI
-
Come rimuovere un account come amministratore delegato per GuardDuty all’interno dell’organizzazione
In questo esempio viene mostrato come rimuovere un account come amministratore delegato per GuardDuty.
aws guardduty disable-organization-admin-account \ --admin-account-id111122223333Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Managing accounts with AWS Organizations nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta DisableOrganizationAdminAccount
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare disassociate-from-master-account.
- AWS CLI
-
Come annullare l’associazione dal tuo attuale account amministratore nella Regione corrente
L’esempio
disassociate-from-master-accountseguente dissocia l’account dell’utente dall’account amministratore GuardDuty attuale nella Regione corrente AWS.aws guardduty disassociate-from-master-account \ --detector-idd4b040365221be2b54a6264dcexampleQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Understanding the relationship between GuardDuty administrator account and member accounts nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta DisassociateFromMasterAccount
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-detector.
- AWS CLI
-
Come recuperare i dettagli di un rilevatore specifico
L’esempio
get-detectorseguente visualizza i dettagli delle configurazioni del rilevatore specificato.aws guardduty get-detector \ --detector-id12abc34d567e8fa901bc2d34eexampleOutput:
{ "Status": "ENABLED", "ServiceRole": "arn:aws:iam::111122223333:role/aws-service-role/guardduty.amazonaws.com/AWSServiceRoleForAmazonGuardDuty", "Tags": {}, "FindingPublishingFrequency": "SIX_HOURS", "UpdatedAt": "2018-11-07T03:24:22.938Z", "CreatedAt": "2017-12-22T22:51:31.940Z" }Per ulteriori informazioni, consulta Concepts and Terminology nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta GetDetector
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-findings.
- AWS CLI
-
Esempio 1: come recuperare i dettagli di un esito specifico
L’esempio
get-findingsseguente recupera i dettagli completi degli esiti JSON dell’esito specificato.aws guardduty get-findings \ --detector-id12abc34d567e8fa901bc2d34eexample\ --finding-id1ab92989eaf0e742df4a014d5exampleOutput:
{ "Findings": [ { "Resource": { "ResourceType": "AccessKey", "AccessKeyDetails": { "UserName": "testuser", "UserType": "IAMUser", "PrincipalId": "AIDACKCEVSQ6C2EXAMPLE", "AccessKeyId": "ASIASZ4SI7REEEXAMPLE" } }, "Description": "APIs commonly used to discover the users, groups, policies and permissions in an account, was invoked by IAM principal testuser under unusual circumstances. Such activity is not typically seen from this principal.", "Service": { "Count": 5, "Archived": false, "ServiceName": "guardduty", "EventFirstSeen": "2020-05-26T22:02:24Z", "ResourceRole": "TARGET", "EventLastSeen": "2020-05-26T22:33:55Z", "DetectorId": "d4b040365221be2b54a6264dcexample", "Action": { "ActionType": "AWS_API_CALL", "AwsApiCallAction": { "RemoteIpDetails": { "GeoLocation": { "Lat": 51.5164, "Lon": -0.093 }, "City": { "CityName": "London" }, "IpAddressV4": "52.94.36.7", "Organization": { "Org": "Amazon.com", "Isp": "Amazon.com", "Asn": "16509", "AsnOrg": "AMAZON-02" }, "Country": { "CountryName": "United Kingdom" } }, "Api": "ListPolicyVersions", "ServiceName": "iam.amazonaws.com", "CallerType": "Remote IP" } } }, "Title": "Unusual user permission reconnaissance activity by testuser.", "Type": "Recon:IAMUser/UserPermissions", "Region": "us-east-1", "Partition": "aws", "Arn": "arn:aws:guardduty:us-east-1:111122223333:detector/d4b040365221be2b54a6264dcexample/finding/1ab92989eaf0e742df4a014d5example", "UpdatedAt": "2020-05-26T22:55:21.703Z", "SchemaVersion": "2.0", "Severity": 5, "Id": "1ab92989eaf0e742df4a014d5example", "CreatedAt": "2020-05-26T22:21:48.385Z", "AccountId": "111122223333" } ] }Per ulteriori informazioni, consulta Findings nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta GetFindings
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-ip-set.
- AWS CLI
-
Come elencare i dettagli ottenuti su un set di IP attendibili specificato
L’esempio
get-ip-setseguente mostra lo stato e i dettagli del set di IP attendibili specificato.aws guardduty get-ip-set \ --detector-id12abc34d567e8fa901bc2d34eexample\ --ip-set-idd4b94fc952d6912b8f3060768exampleOutput:
{ "Status": "ACTIVE", "Location": "s3://amzn-s3-demo-bucket.s3-us-west-2.amazonaws.com/customlist.csv", "Tags": {}, "Format": "TXT", "Name": "test-ip-set-example" }Per ulteriori informazioni, consulta Working with Trusted IP Lists and Threat Lists nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta GetIpSet
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-master-account.
- AWS CLI
-
Come recuperare i dettagli del tuo account master in una Regione corrente
L’esempio
get-master-accountseguente visualizza lo stato e i dettagli dell’account master associato al rilevatore nella Regione corrente.aws guardduty get-master-account \ --detector-id12abc34d567e8fa901bc2d34eexampleOutput:
{ "Master": { "InvitationId": "04b94d9704854a73f94e061e8example", "InvitedAt": "2020-06-09T22:23:04.970Z", "RelationshipStatus": "Enabled", "AccountId": "111122223333" } }Per ulteriori informazioni, consulta Understanding the relationship between GuardDuty administrator account and member account nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta GetMasterAccount
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-detectors.
- AWS CLI
-
Come elencare i rilevatori disponibili nella Regione corrente
L’esempio
list-detectorsseguente elenca i rilevatori disponibili nella Regione AWS corrente.aws guardduty list-detectorsOutput:
{ "DetectorIds": [ "12abc34d567e8fa901bc2d34eexample" ] }Per ulteriori informazioni, consulta Concepts and Terminology nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ListDetectors
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-findings.
- AWS CLI
-
Esempio 1: come elencare tutti gli esiti per la Regione corrente
L’esempio
list-findingsseguente visualizza un elenco di tutti i findingId per la Regione corrente ordinati per gravità dalla più alta alla più bassa.aws guardduty list-findings \ --detector-id12abc34d567e8fa901bc2d34eexample\ --sort-criteria '{"AttributeName": "severity","OrderBy":"DESC"}'Output:
{ "FindingIds": [ "04b8ab50fd29c64fc771b232dexample", "5ab8ab50fd21373735c826d3aexample", "90b93de7aba69107f05bbe60bexample", ... ] }Per ulteriori informazioni, consulta Findings nella Guida per l’utente di GuardDuty.
Esempio 2: come elencare gli esiti per la Regione corrente corrispondenti a un criterio di ricerca specifico
L’esempio
list-findingsseguente visualizza un elenco di tutti i findingId che corrispondono a un tipo di esito specificato.aws guardduty list-findings \ --detector-id12abc34d567e8fa901bc2d34eexample\ --finding-criteria '{"Criterion":{"type": {"Eq":["UnauthorizedAccess:EC2/SSHBruteForce"]}}}'Output:
{ "FindingIds": [ "90b93de7aba69107f05bbe60bexample", "6eb9430d7023d30774d6f05e3example", "2eb91a2d060ac9a21963a5848example", "44b8ab50fd2b0039a9e48f570example", "9eb8ab4cd2b7e5b66ba4f5e96example", "e0b8ab3a38e9b0312cc390ceeexample" ] }Per ulteriori informazioni, consulta Findings nella Guida per l’utente di GuardDuty.
Esempio 3: come elencare gli esiti per la Regione corrente corrispondenti a un set di criteri di ricerca specifico definito in un file JSON
L’esempio
list-findingsseguente visualizza un elenco di tutti i findingId non archiviati e che non coinvolgono l’utente IAM denominato “testuser”, come specificato in un file JSON.aws guardduty list-findings \ --detector-id12abc34d567e8fa901bc2d34eexample\ --finding-criteriafile://myfile.jsonContenuto di
myfile.json.{"Criterion": { "resource.accessKeyDetails.userName":{ "Eq":[ "testuser" ] }, "service.archived": { "Eq": [ "false" ] } } }Output:
{ "FindingIds": [ "1ab92989eaf0e742df4a014d5example" ] }Per ulteriori informazioni, consulta Findings nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ListFindings
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-invitations.
- AWS CLI
-
Come elencare i dettagli dei tuoi inviti a diventare account membro nella Regione corrente
L’esempio
list-invitationsseguente elenca i dettagli e gli stati degli inviti a diventare account membro GuardDuty nella Regione corrente.aws guardduty list-invitationsOutput:
{ "Invitations": [ { "InvitationId": "d6b94fb03a66ff665f7db8764example", "InvitedAt": "2020-06-10T17:56:38.221Z", "RelationshipStatus": "Invited", "AccountId": "123456789111" } ] }Per ulteriori informazioni, consulta Managing GuardDuty Accounts by Invitation nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ListInvitations
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-ip-sets.
- AWS CLI
-
Come elencare i set di IP attendibili nella Regione corrente
L’esempio
list-ip-setsseguente elenca i set di IP attendibili nella Regione AWS corrente.aws guardduty list-ip-sets \ --detector-id12abc34d567e8fa901bc2d34eexampleOutput:
{ "IpSetIds": [ "d4b94fc952d6912b8f3060768example" ] }Per ulteriori informazioni, consulta Working with Trusted IP Lists and Threat Lists nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ListIpSets
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-members.
- AWS CLI
-
Esempio 1: come elencare solo i membri correnti nella Regione corrente
L’esempio
list-membersseguente elenca e fornisce i dettagli solo degli account membro correnti associati all’account amministratore GuardDuty, nella Regione corrente.aws guardduty list-members \ --detector-id12abc34d567e8fa901bc2d34eexample\ --only-associated="true"Output:
{ "Members": [ { "RelationshipStatus": "Enabled", "InvitedAt": "2020-06-09T22:49:00.910Z", "MasterId": "111122223333", "DetectorId": "7ab8b2f61b256c87f793f6a86example", "UpdatedAt": "2020-06-09T23:08:22.512Z", "Email": "your+member@example.com", "AccountId": "123456789012" } ] }Per ulteriori informazioni, consulta Understanding the relationship between GuardDuty administrator account and member accounts nella Guida per l’utente di GuardDuty.
Esempio 2: come elencare tutti i membri nella Regione corrente
L’esempio
list-membersseguente elenca e fornisce i dettagli di tutti gli account membri, inclusi quelli che sono stati dissociati o che non hanno ancora accettato l’invito dell’amministratore di GuardDuty, nella Regione corrente.aws guardduty list-members \ --detector-id12abc34d567e8fa901bc2d34eexample\ --only-associated="false"Output:
{ "Members": [ { "RelationshipStatus": "Enabled", "InvitedAt": "2020-06-09T22:49:00.910Z", "MasterId": "111122223333", "DetectorId": "7ab8b2f61b256c87f793f6a86example", "UpdatedAt": "2020-06-09T23:08:22.512Z", "Email": "your+other+member@example.com", "AccountId": "555555555555" } ] }Per ulteriori informazioni, consulta Understanding the relationship between GuardDuty administrator account and member accounts nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta ListMembers
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-ip-set.
- AWS CLI
-
Come aggiornare un set di IP attendibili
L’esempio
update-ip-setseguente mostra come aggiornare i dettagli di un set di IP attendibili.aws guardduty update-ip-set \ --detector-id12abc34d567e8fa901bc2d34eexample\ --ip-set-idd4b94fc952d6912b8f3060768example\ --locationhttps://amzn-s3-demo-bucket.s3-us-west-2.amazonaws.com/customtrustlist2.csvQuesto comando non produce alcun output.
Per ulteriori informazioni, consulta Working with Trusted IP Lists and Threat Lists nella Guida per l’utente di GuardDuty.
-
Per informazioni dettagliate sull’API, consulta UpdateIpSet
in AWS CLI Command Reference.
-